当有人登录时,为什么 /bin/login 不会出现在 ps 输出中

当有人登录时,为什么 /bin/login 不会出现在 ps 输出中

我想监视当测试用户登录到我的 CentOS 6.4 系统时会发生什么,因此我尝试轮询 ps/bin/login以及strace出现时的 pid:

until [[ $(ps -ef|grep -q [l]ogin)$? -eq 0 ]]; do 
    true; 
done && strace pidof /bin/login

我从另一个系统通过 SSH 登录并检查了该系统,但strace什么也没发生。为什么没有login出现在ps?用户的 shell 是 bash 并且连接没有问题。

答案1

因为在你的sshd_config文件中,你没有UseLogin yes.默认为no.从手册页:

使用登录
        指定login(1)是否用于交互式登录会话
        西翁。默认为“否”。请注意,login(1) 从未被使用过
        用于远程命令执行。另请注意,如果这是
        启用后,X11Forwarding 将被禁用,因为登录(1)不
        知道如何处理 xauth(1) cookie。如果使用权限分离
        指定后,认证后将被禁用。

相关内容