LINUX.ORG.RU
ФорумAdmin

Динамическое создание домашней директории при входе в систему


1

0
Здраствуйте.

Вот такая вот ситуация:
В системе существует пользователь. Необходимо при каждаждом его входе в систему создавать ему домашнию директорию, и записывать в неё данные (скелет с настройками программ), а после его выхода из системы эту директорию удалять.
Проблемы:
1. пользователь может входить в систему как из консли так и из GDM (так что ~/.bash_logout не помагает).
2. Пользователь может зайти в систему сразу в нескольких консолях (это как-раз решил бысто: who |grep $USER |wc -l).
3. Пользователь может нормально не завершить сеанс (Ctrl+Alt+BackSpase или kiil -9 $bash_pid , так что ~/.bash_logout или другой фаил для GDM не срабртает).
4. Пользователь может запретить самому себе удалять какие-то файлы (т.е. удалять директорию надо от root-а)

Пытался рыть в сторону pam_mkhomedir, но пока без результатно.

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

Спасибо.
anonymous
Ответ на: комментарий от gr_buza
Компютер стоит в школе... Приходит ученик делает что ему надо, а чаще то что не надо - ну например поудаляет что-нибудудь из меню или сделает какие-то другие пользовательские настройки - которые потом вгоняют в стопор других учеников...

Вот и получается что надо как-то с этим боротся...
anonymous
()
Ответ на: комментарий от anonymous
А просто запускать при каждом входе скрипт, который чистит весь домашний каталог и после этого загоняет туда скелетные файлы?
home_user ★★★
()
Ответ на: комментарий от home_user
Ок...

Подскажите пожалуйсто куда записать этот скрипт что бы он работл как с GDM так и с консолю и выполнялся от именни root-a?
anonymous
()
Ответ на: комментарий от anonymous
console: (bash) /etc/profile
GDM: не уверен, где-то в /etc/X11/gdm/Xsession ???
От root: sudo (без пароля на данный скрипт /usr/local/sbin/make_home)
sdio ★★★★★
()
Ответ на: комментарий от sdio
Спасибо большое всем кто ответил...

Если все-таки у кого-то есть идеи как все это дело чистить при выходе пользовотеля из ситемы - то буду очень благодарен за совет (не хочется держать мусор на винте до следующего логина)...
anonymous
()
Ответ на: комментарий от anonymous
Еще раз спасибо
Вдруг кму-то пригодится, для GDM нужный скрипт можно поместить тут:
/etc/gdm/PostLogin/Default
anonymous
()
# cat system-auth 
...
...
...
session     optional      /lib/security/$ISA/pam_mkhomedir.so umask=077


все работает замечательно и с консоли и в любом графическом менеджере!
anonymous2 ★★★★★
()
Ответ на: комментарий от anonymous2
Вопрос:
Он их потом сам удаляет?

И как это настроить не для всех юзеров, а только для одного?

на счёт /etc/skel - у него еще одни пораметор есть для того что бы передать откуда брать скелет (если не устраивает /etc/skel).
anonymous
()
Ответ на: комментарий от anonymous
Можно использовать automount -- получаем автоматическое "появления" и "удаление" дом. директории.

О содержании директории позаботиться каким-либо образом.
sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.