Либо вы выполнили ранее в сценарии set -f
, что отключает подстановочные знаки, либо подходящих файлов нет. Если подходящих файлов нет, шаблон остается неизменным, поэтому цикл for выполняется для одного элемента, который является неизменным шаблоном. В bash вы можете использовать shopt -s nullglob
, чтобы не совпадающие шаблоны расширялись до пустого списка.
Представленная вами диаграмма в значительной степени представляет собой тот же путь высокого -уровня для rlogin
, telnet
, ssh
и других сетевых -процессов, которые предоставляют пользователю интерактивные оболочки.
Демон, принимающий соединение, выполнит аутентификацию. В случае успеха он выделит pty для интерактивного пользовательского сеанса и создаст дочерний (пользовательский )сеанс для общения с pty. Затем процесс демона обрабатывает связь между pty и сетью.
Во время входа в систему демон может также выполнять другие вспомогательные функции (, например, обновлять lastlogin
, utmp
, wtmp
, журналы аудита и т. д. ). Выполняется множество фоновых задач.
sshd
можно настроить разными способами; есть параметр UseLogin
, который можно использовать для создания сеанса пользователя. По умолчанию «нет»
% sudo grep UseLogin /etc/ssh/sshd_config
#UseLogin no
Установка значения yes
не рекомендуется. (. Используйте логин в sshd _конфиг)
APUE немного устарел или не очень хорошо вписывается в современное пользовательское пространство Linux (это все еще UNIX, а не современный дистрибутив Linux ).
В современном дистрибутиве Linux вы можете войти на SSH-сервер, аутентифицируя вас через сеть и создать сеанс (, поговорив с менеджером сеансов ). Удаленный сеанс, как показано в части вашего изображения, работает с помощью диспетчера входа в систему, пересылающего ваши входные данные из сетевого сокета в мастер pty, поэтому оболочка может работать через pty slave. Pty - это совсем другая тема.
На вашей картинке действительно изображена старая система, в которой вообще нет диспетчера сеансов. Как сказал Стивен в другом ответе, это просто формирует совершенно другой тип «сеанса».
В современных системах все сеансы обычно создаются диспетчером сеансов, который предлагает гораздо более простую структуру для пользователя-администратора.