疑难杂症
主机每次重启或者ssh服务重启ssh-ed25519都会改变
现象:
原因分析:
(感觉当前现象还是很奇怪,不太对劲,不过暂时不想找问题了)
client的ssh登录有缓存,之前成功登录的方式,本机缓存还在就还能继续登录。(eg:远程机faceunity当前设置passwordauthentication yes,fu10使用密码成功登录,faceunity再设置passwordauthentication no,并彻底重启sshd服务,fu10在未重启的情况下仍旧可以通过密码登录,而其他机器不行了,这个是当前现象)。然后我本机登陆不上的原因就是我刚才重启本机了,而且之前faceunity机器的sshd有更新过,配置文件发生了变换。所以我本机登录不了了。
解决办法: 没找到具体问题,初步看可能是ssh更新了,配置文件/etc/ssh/sshd_config被改掉了,重新开启PubkeyAuthentication并且关闭密码登录,然后重启即可,因为ssh配置生效似乎需要所有ssh断开之后。
最终问题找到了: 服务器的sshd配置出问题了
# 首先检查/etc/ssh下ssh主机密钥是否正确
ls -l /etc/ssh/ssh_host_*
# 如果权限不正确,需要修改
sudo chmod 600 /etc/ssh/ssh_host_*
# 权限配置完之后,查看ssh配置文件中密钥配置是否正确
# /etc/ssh/sshd_config 中下述的配置需要存在,且不能被注释掉。
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key另外老是连不上的问题是 IP冲突了!!!!!
僵尸进程清理
下述方式还是杀不掉的话,直接重启吧。
# 列出所有僵尸进程的信息
ps aux | grep 'Z'
# 打印进程信息,其中就包含了父进程的pid
cat /proc/pid/status
# 列出所有僵尸进程的父进程ppid
ps -eo pid,ppid,stat,cmd | grep ' Z'
# EG: defunct表示父进程已经终止了,子进程编程孤儿进程了
1437732 2388881 Z [python] <defunct>
# 杀掉进程
sudo kill -9 pid在杀掉僵尸进程的父进程之后,其子进程会变成孤儿进程,孤儿进程的父进程会归于 1 (也就是init进程),而init进程会定期检查并清理僵尸进程。
手动触发init进程的僵尸进程清理:
# 向init进程发送SIGCHLD信号
sudo kill -SIGCHLD <init_pid>遇到No display
- 查看一下是不是hdmi/vga/dvi线没连好。
- 虚拟显示器一直没有配置好,可能确实需要hdmi模拟器了。

