假设您apt-get upgrade
从 ssh 会话发出,并且要升级的软件包之一是 openssh-server。
升级后,新的 sshd 进程是否会重新启动?如果是,会话如何维护?如果不是,我应该明确重新启动它还是我遗漏了什么?
答案1
当你连接时会发生这样的事情
[user@an02-east ~]$ ps aux | grep ssh
root 13789 0.0 0.0 98932 3888 ? Ss 03:16 0:00 sshd: user [priv]
502 13791 0.0 0.0 98932 1740 ? S 03:17 0:00 sshd: user@pts/0
root 15378 0.0 0.0 64728 1168 ? Ss 04:13 0:00 /usr/sbin/sshd
因此 ssh 正在分叉出一个具有权限分离的新 sshd 进程。另外,如果你看看lsof
sshd 16826 user txt REG 8,3 546680 5247866 /usr/sbin/sshd
你也可以看到
因此,当您升级时,主服务器将重新启动并升级,但您当前的 ssh 会话将保持在线。现在您甚至可以从 ssh 会话重新启动 ssh 服务器而不会丢失连接。