Кто-нибудь из вас знает об этом?

  • Пользователь подключается к удаленному компьютеру с помощью ssh
  • Затем он запускает программу (в фоновом режиме), например: nohup a.out &
  • Он отключается от компьютера.

Он все еще указан как связанный с командой who потому что у него запущен процесс с его именем? Или даже с ps aux | grep ssh ?

Я провел некоторое исследование в Интернете, но не смог найти точного ответа.

Заранее спасибо!

1 ответ1

2

Он все еще указан как связанный с командой who, потому что у него запущен процесс с его именем?

Нет, потому что это не то, что перечисляет команда who .

Такие команды, как who , w , finger , pinky и users просто читают файл /var/run/utmp, который является базой данных "сеансов входа в систему", поддерживаемых самими менеджерами входа в систему. Поэтому, когда вы входите через SSH, это sshd, который добавляет запись в utmp. Когда ваше SSH-соединение заканчивается, sshd удаляет эту запись, независимо от того, какие процессы могут остаться.

Или даже с PS Aux | grep ssh?

Нет, потому что больше нет SSH-соединения, поэтому у пользователя sshd больше нет причин задерживаться.

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