Назад | Перейти на главную страницу

Создайте каталог tmp для каждого пользователя

Я наткнулся на эту страницу: http://www.wlug.org.nz/PerUserTempDirs

Предлагаем создать / заменить несколько скриптов; последний шаг более запутанный:

Теперь, когда у вас есть это на месте, вызовите следующий сценарий вместо login (1):

 #!/bin/sh
 mkdir -m 700 /tmp-safe/user/"$1" /tmp/"$1"
 chown "$1":  /tmp-safe/user/"$1" /tmp/"$1"
 mount --bind /tmp-safe/user/"$1" /tmp/"$1" || exit 1
 exec /bin/login "$@"

Поскольку пользователи входят в систему с помощью ssh, я «думаю», что / bin / login никогда не выполняется. Какой сценарий я должен изменить, чтобы иметь возможность повторно смонтировать / tmp для пользователя?

Лучше использовать pam_mktemp. Это создаст каталог для каждого пользователя в / tmp, когда пользователь входит в систему через любую службу pam, и обновит TMP и TMPDIR, чтобы использовать это. Это зависит от программ, написанных так, чтобы не использовать / tmp.

Проблема с pam_mktemp в том, что есть много программ с жестко запрограммированными /tmp, и они не учитывают переменную TMPDIR.

Для этого можно использовать функцию "Пространства имен" в последних ядрах, как описано в сообщение в блоге разработчика Gentoo.