所以我目前正在学习 sysVinit。我知道在启动时必须启动 /bin/login 才能显示登录提示,但我找不到启动它的文件。它是否在 inittab 中指定的终端中默认启动,或者那里发生了什么?
答案1
它由盖蒂输入用户名后。
- 在里面根据 inittab 在每个终端上启动 /bin/agetty (或另一个 getty)
- 盖蒂初始化终端,显示 /etc/issue 和“login:”提示符
- 用户输入登录名
- 盖蒂执行 /bin/login 并以用户名作为参数
- 登录显示密码提示(内部或来自 PAM)
(笔记:登录也用于远程 Telnet 登录(尽管不是通过 ssh 登录),过程类似:远程控制将显示用户名提示,并启动登录用于密码提示。
在 systemd 中,该过程几乎相同:在里面开始代理根据getty@<tty>.service
,并且代理开始登录。