Linux изменчивые домашние области пользователя

611
Xenopathic

На самом деле это вопрос из двух частей, один для проектных решений, а другой технический вопрос:

В нашей текущей сети у нас есть клиенты Linux, которые аутентифицируются на сервере и монтируют домашнюю сеть пользователя, но сохраняя реальный дом отдельно. Сетевой дом монтируется с использованием pam_mount и отключается при выходе из системы. Однако реальная домашняя область остается, поэтому наш текущий подход - очистить / home при загрузке.

Я искал альтернативные способы выполнения этого, и интересным способом было бы смонтировать «диск» tmpfs в качестве домашней области пользователя, а затем размонтировать его при выходе из системы. В идеале это должно быть выполнено с использованием pam_mount. Я столкнулся с проблемами, пытаясь заставить это работать, которые подробно описаны ниже.

Способ 1

Надежный «оригинальный» метод очистки / home при загрузке, как правило, всегда работает, но может привести к перегрузке жесткого диска / твердотельного накопителя из-за большого количества операций записи в одних и тех же областях. Текущая реализация работает полностью.

Способ 2

«Новая» изменчивая домашняя область tmpfs, которая отключается при выходе из системы. Преимущества включают автоматическую очистку домашних зон, быстрое чтение / запись и отсутствие чтения / записи на диск. Также дает легкое ограничение на размер домашней зоны. Недостатки - это нехватка памяти, но также несколько проблем, с которыми я столкнулся:

В сильно измененной системе Ubuntu 12.04, использующей XFCE, монтирование tmpfs через pam_mount работало нормально, но размонтирование не удалось с ошибкой Device is busy. Однако на этом проблемы не заканчиваются, поскольку даже после выхода из системы и работы в качестве пользователя root попытка вручную размонтировать домашнюю область выдает ту же ошибку, даже если fuser и lsof ничего не показывали в этом каталоге. На самом деле, я спросил об этой проблеме на askubuntu.com .

Попытка сделать то же самое на более стандартной Ubuntu 12.04 по-прежнему не удалась с помощью pam_mount для размонтирования, но размонтирование вручную на этот раз работало нормально. То же самое с моей системой Arch работало, даже когда pam_mount делал размонтирование.

Заключение

Таким образом, есть два способа сделать это. Есть ли у каждого метода какие-либо плюсы / минусы, которые могут заставить меня выбрать один из других? И почему домашняя зона tmpfs не работает должным образом!

1
Отличная идея! Таким образом, ни один пользователь не может `nohup (1)` обработать и уйти, собирая результаты позже. Предположительно, некоторые виды использования `screen (1)` также серьезно нарушены. Пожалуйста, напомните мне _never_, чтобы получить учетную запись с вами. vonbrand 11 лет назад 0
Это будет реализовано на клиентах, которые вообще не предназначены для использования, как вы указываете. Но, конечно, это также может быть принято во внимание при разработке другой системы, которая бы приспособилась к таким пользователям. Xenopathic 11 лет назад 0
Я видел настройки, где каждый пользователь получает только что созданную виртуальную машину (или только что заполненную $ HOME) при входе в систему. Извините, подробностей нет под рукой. vonbrand 11 лет назад 0
зачем вам «оригинальные» дома, и какие они конкретно? Isaac 11 лет назад 0
Так как это машины, предназначенные для использования пользователями, прошедшими проверку подлинности в сети (локальных пользователей, не являющихся системными пользователями), любые изменения должны быть сброшены до параметров машины по умолчанию для каждого входа в систему. Это позволяет нам легче контролировать, какие настройки можно настраивать, которые отправляются на сервер во время выхода из системы (и сбрасываются при входе в систему). Xenopathic 11 лет назад 0

1 ответ на вопрос

0
Isaac

Попробуйте automount для вашего / home, который выполнит монтирование по сети, если пользователь войдет в систему, и размонтирует его, когда он больше не нужен. Вы можете сделать это для всех пользователей в / home или определить отдельную цель автомонтирования для каждого пользователя.

Разве это не то, что должен был делать pam_mount? Каковы будут преимущества использования autofs вместо pam_mount в этом отношении? Xenopathic 11 лет назад 0