Все пользователи имеют зашифрованные домашние папки на одном сервере, который я обслуживаю, и у одного из пользователей (не являющегося человеком) есть полезные ресурсы в его домашнем каталоге, доступном через Apache.

Чтобы сохранить подключенную домашнюю папку пользователя, кто-то должен будет войти в систему как этот пользователь. Я достигаю этого, входя в систему на этом сервере, используя SSH и su этого пользователя. Однако иногда я забывал об этом и выходил из системы или закрывал ssh-клиент, и другие пользователи теряли доступ к этим файлам.

Мне просто интересно, есть ли какая-нибудь команда, которую я могу запустить, чтобы сохранить этого пользователя в системе?

Я пробовал screen , но он не работает в su через ssh:

$ screen
Cannot open your terminal '/dev/pts/0' - please check.

Я также попытался disown и nohup ' cat <> /dev/zero но процесс все еще прекращается после выхода из системы.

2 ответа2

2

screen работает , если вы CHOWN текущую TTY к целевому пользователю перед su ИНГ им.

Но лучшим вариантом будет монтировать домашний каталог вручную, используя mount -t ecryptfs.

(Вы также можете обмануть, увеличив значение refcount в /dev/shm/ecryptfs-<user> , чтобы оно никогда не достигло 0.)

0

Причина, по которой ваш старый nohup не удался, заключается в том, что вы не отправили его в фоновый режим Если все, что вам нужно, это какой-то случайный процесс, который остается даже после выхода из системы, попробуйте что-то вроде этого:

nohup sh -c 'while true; do sleep 60; done' &

Я согласен с @grawity: если вам лучше изменить способ монтирования каталога.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .