Поиск по этому блогу

Монтирование директории пользователя при его входе в Linux систему

Источник 
 
Имеем: неизменную базовую /home директорию.
Хотим: отдельно держать изменения внесенные пользователями, чтобы они не влияли на базовую /home.
            изменения держать в рамдиске, так чтобы они не сохранялись при следующем входе
Решение: 
  - unionfs - для отделения данных пользователя от read-only основы.
  - tmpfs - для создания /tmp директории с временными файлами, хранимой в ОЗУ.
  - pam-mount (http://pam-mount.sourceforge.net/) - PAM модуль для автоматического 
  монтирования разделов в момент входа пользователя в систему.

Устанавливаем пакеты (пример для Debian  и Ubuntu):
   apt-get install unionfs-modules-`uname -r`
   apt-get install libpam-mount 

Настраиваем pam_mount (/etc/security/pam_mount.conf)

   volume debiosk tmpfs - tmpfs /tmp/tmpfs "size=15M,uid=debiosk,gid=debiosk,mode=0700" - - 
   volume debiosk unionfs - unionfs /home/debiosk "dirs=/tmp/tmpfs:/home/debiosk=ro" - - 


где
 "volume" - ключевое слово, сигнализирующее об описании раздела;
 "debiosk" - имя пользователя, для которого определены правила монтирования;
  "tmpfs" - тип файловой системы;
  " - " - сигнализирует о неиспользовании монтирования с удаленного сервера;
  "/tmp/tmpfs" - точка монтирования;
  "size=15M,uid=debiosk,gid=debiosk,mode=0700" - параметры монтирования tmpfs:
          "size=15m," - размер;
          "uid=debiosk,gid=debiosk,"  - владелец;
          "mode=0700" - права доступа;
   "dirs=/tmp/tmpfs:/home/debiosk=ro" - параметры монтирования unionfs: 
           указывают отобразить изменения /home/debiosk в директории /tmp/tmpfs


Добавляем строку "@include common-pammount" в /etc/pam.d/login, /etc/pam.d/su и /etc/pam.d/xdm 

Теперь пользователь debiosk каждый раз будет получать исходную домашнюю директорию,
а изменения будут действовать только в пределах сессии.

Комментариев нет:

Отправить комментарий