Автор Тема: Антивандальная программа  (Прочитано 9041 раз)

Оффлайн xenar

  • Завсегдатай
  • *
  • Сообщений: 50
Давно хотел но все руки не доходили сделать программку для "заморозки" пользовательских папок и настроек. Проще говоря антивандальную программу.
Но появилось время и вот я ее хочу вам представить.Работает по следующему принципу. Первоночально необходимо в програме сделать "заморозку" выбранной "хоум" папки пользователя, если необходимо можно отметить какие пользовательский папки в ней нужно не замораживать(обычно для школы это папка типа Документы, Картинки и подобное ). При перезагрузке и входе на данном "замороженном"  аккаунте все будет автоматически восстанавливаться. При этом следует учесть что если пользователь сохранил файлы или папки  не в исключенной для "заморозки" папке то они будут автоматически удалены при перезагрузке. Тем самым мы сохраняем хоум папку пользователя в чистоте и приучаем пользователя сохранять свои материалы только в предназначенных для этого местах. Это в первую очередь подойдет для компьютерных классов.
 В архиве два файла. Исполняемый бинарник (сама программа) и запускающий скрипт. Так как программе необходим доступ к системным файлам она должна запускаться под root.   Собственно говоря скрипт состоит из одной строки gksu программа. но тут есть одна проблемка. В Altlinux почему то gksu по умолчанию не установлен, в идеале конечно можно его установить и запускать программу через скрипт. Но можно и проще. В консоле по рутом выполнить ./freeze
Ну в общем то все. Принимается конструктивная ругань и предложения  :)

ЗЫ Я не профессиональный программист так что извиняйте что не так, но тестировал долго и вроде бы все возможные баги выловил.
« Последнее редактирование: 07.10.2011 09:04:52 от xenar »

Оффлайн Карлсон

  • Завсегдатай
  • *
  • Сообщений: 1 699
Re: Антивандальная программа
« Ответ #1 : 29.09.2011 12:37:08 »
Исполняемый бинарник (сама программа) и запускающий скрипт.

Бинарник без исходников? Который надо запускать от рута? Как это прекрасно! Найдется желающие проверить, чего там сделано "непрофессиональным программистом"?

Зачем вообще понадобился бинарник, если подобная задача может решаться банальным шелл-скриптом и утилитами типа rsync?

Оффлайн xenar

  • Завсегдатай
  • *
  • Сообщений: 50
Re: Антивандальная программа
« Ответ #2 : 29.09.2011 12:46:18 »
Исходники ?? Да не проблемма  :)
Собственно говоря это раньше и был скрипт но захотелось к нему гр. интерфейс приделать.
« Последнее редактирование: 29.09.2011 12:49:25 от xenar »

Оффлайн Карлсон

  • Завсегдатай
  • *
  • Сообщений: 1 699
Re: Антивандальная программа
« Ответ #3 : 29.09.2011 12:55:01 »
был скрипт но захотелось к нему гр. интерфейс приделать.

Тысячи способов это сделать и остаться скриптом. От банального xmessage до питоновских биндингов к Qt/GTK.

Оффлайн xenar

  • Завсегдатай
  • *
  • Сообщений: 50
Re: Антивандальная программа
« Ответ #4 : 29.09.2011 13:00:14 »
был скрипт но захотелось к нему гр. интерфейс приделать.

Тысячи способов это сделать и остаться скриптом. От банального xmessage до питоновских биндингов к Qt/GTK.
Не спорю, сам в свое время кричал (вроде бы даже и здесь) что для школ нужна подобная штука. Но как то в ответ тишина была.  Так что вы уж извините меня. :)
« Последнее редактирование: 29.09.2011 14:16:48 от xenar »

Оффлайн Const

  • Глобальный модератор
  • *****
  • Сообщений: 2 653
  • Даже у плохого модератора есть свои плюсы…
Re: Антивандальная программа
« Ответ #5 : 29.09.2011 13:04:54 »
Вообще-то проблема, как она описана в стартовом посте, решается на уровне cron, путём вызова однострочника с cp и chown внутри. Ну, если сильно спичит экономить диск, — ещё tar и bzip2...

Оффлайн xenar

  • Завсегдатай
  • *
  • Сообщений: 50
Re: Антивандальная программа
« Ответ #6 : 29.09.2011 13:12:20 »
Вообще-то проблема, как она описана в стартовом посте, решается на уровне cron, путём вызова однострочника с cp и chown внутри. Ну, если сильно спичит экономить диск, — ещё tar и bzip2...
Ну скажем не все так просто и тривиально и просто cron эту задачу не решить, там возникают много вопросов. Но не в этом дело. Я просто попытался дать учителю простой инструмент для решения достаточно часто возникающей проблемы.

Оффлайн Nagohak

  • Завсегдатай
  • *
  • Сообщений: 306
Re: Антивандальная программа
« Ответ #7 : 29.09.2011 14:11:34 »
Давно хотел но все руки не доходили сделать программку для "заморозки" пользовательских папок и настроек. Проще говоря антивандальную программу.
Но появилось время и вот я ее хочу вам представить.Рабтает по следующему принципу. Первоночально необходимо в програме сделать "заморозку" выбранной "хоум" папки пользователя, если необходимо можно отметить какие пользовательский папки в ней нужно не замораживать(обычно для школы это папка типа Документы, Картинки и подобное ). При перезагрузке и входе на данном "замороженном"  аккаунте все будет автоматически восстанавливаться. При этом следует учесть что если пользователь сохранил файлы или папки  не в исключенной для "заморозки" папке то они будут автоматически удалены при перезагрузке. Тем самым мы сохраняем хоум папку пользователя в чистоте и приучаем пользователя сохранять свои материалы только в предназначенных для этого местах. Это в первую очередь подойдет для компьютерных классов.
 В архиве два файла. Исполняемый бинарник (сама программа) и запускающий скрипт. Так как программе необходим доступ к системным файлам она должна запускаться под root.   Собственно говоря скрипт состоит из одной строки gksu программа. но тут есть одна проблемка. В Altlinux почему то gksu по умолчанию не установлен, в иделе кончено можно его установить и запускать программу через скрипт. Но можно и проще. В консоле по рутом выполнить ./freeze
Ну в общем то все. Принимается конструктивная ругань и предложения  :)

ЗЫ Я не профессиональный программист так что извиняйте что не так, но тестировал долго и вроде бы все возможные баги выловил.

спасибо, так круче будет. А так тоже этим скриптиком пользовался очень удобно. Зачет автору :)

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 972
Re: Антивандальная программа
« Ответ #8 : 29.09.2011 15:06:15 »
+ 1
Зачет в любом случае.
А то наехали :)
А то что можно скриптиком... ну можно...

Оффлайн nik

  • Завсегдатай
  • *
  • Сообщений: 572
  • PuppyRus Linux & ALT Linux
Re: Антивандальная программа
« Ответ #9 : 05.10.2011 06:38:57 »
Человек сделал, что то полезное, предложил другим, сразу критика началась. Возьмите и сделайте лучше и правильней.

Оффлайн rxxrus

  • Завсегдатай
  • *
  • Сообщений: 359
  • AltLinux p?/Ubuntu 15.04
    • Email
Re: Антивандальная программа
« Ответ #10 : 05.10.2011 09:31:03 »
Исходники ?? Да не проблемма  :)
Собственно говоря это раньше и был скрипт но захотелось к нему гр. интерфейс приделать.
Я Вас поддерживаю, а если у вас получится к этому гр. интерфейс приделать и в .rpm засунуть. Удачи Вам

Оффлайн Rezedent12

  • Завсегдатай
  • *
  • Сообщений: 640
  • Цель оправдывает средства.
Re: Антивандальная программа
« Ответ #11 : 05.10.2011 16:15:26 »
/home/user монтировать в ramdisk
/home/user/Documents монтировать на хард
При запуске системы (прописать в автозапуск) распаковывать архив с типичными данными пользователя в /home/user

Всего то несколько скриптов на баше.

Оффлайн Grommit

  • Завсегдатай
  • *
  • Сообщений: 95
Re: Антивандальная программа
« Ответ #12 : 05.10.2011 21:03:40 »
Господа "крутые пользователи", вы меня умиляете. На баше вообще много чего можно сделать. А уж чего только нельзя написать на Си?!
А я не могу/некогда/неохота писать скрипты на каждый чих. Спасибо людям, которым не лень это делать и не жалко делиться.
Автору спасибо, буду пользоваться!

Оффлайн Карлсон

  • Завсегдатай
  • *
  • Сообщений: 1 699
Re: Антивандальная программа
« Ответ #13 : 06.10.2011 12:25:08 »
Спасибо людям, которым не лень это делать и не жалко делиться.

Да вопрос не в том, что автор сделал и решил поделиться. Молодец. Проблема в том, что Паскаль АБСОЛЮТНО неподходящий для данной задачи инструмент.

Оффлайн xenar

  • Завсегдатай
  • *
  • Сообщений: 50
Re: Антивандальная программа
« Ответ #14 : 07.10.2011 07:37:53 »
Исходники ?? Да не проблемма  :)
Собственно говоря это раньше и был скрипт но захотелось к нему гр. интерфейс приделать.
Я Вас поддерживаю, а если у вас получится к этому гр. интерфейс приделать и в .rpm засунуть. Удачи Вам
Ну так я графический интерфейс и сделал... как бы.  :) В deb засунуть не проблема. А в rpm не пробовал, но если есть потребность могу сделать.