LINUX.ORG.RU
ФорумAdmin

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


0

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 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.