重启llinux后无法ssh登录的情况很多,其中一种情况是在之前update的时候产生了一个坏的内核.
背景
我租用了一台腾讯云的服务器,某天配置ssh密钥的时候reboot了一下,然后ssh就连不上去了.
在腾讯云看服务器处于运行状态,但是ping也ping不同
问题分析
在腾讯云使用vnc远程登录(图形界面)发现系统无限卡死在了重启步骤,它会优先加载第一个系统
然后会报错
然后回到最初的起点
我尝试在启动时选择第二个内核,启动成功!ssh连接成功
吓得我赶紧跑去做了个快照
对,快照真的很重要!!!
随后再次重启还是同样的无脑循环,我寻思这样治标不治本啊索性提交了个工单
在这里表扬一下腾讯云的工单处理和工程师,确实非常快.我以为夜里12点多只能等明天了呢
解决方法
以下内容改编自工程师小哥:
内核坏掉了,删掉就好
删除方法
查看自己使用的内核版本:
uname -r
查看所有的内核版本:
cat /boot/grub2/grub.cfg | grep "menuentry "
删除内核:
yum remove kernel-3.10.0-******************
大公告成
后话
关于如何手动配置ssh密钥
[root@VM-8-13-centos .ssh]# vim ~/.ssh/authorized_keys
将本地的密钥公钥复制进去
如何让服务器既可以用密码登录又可以用密钥登录
[root@VM-8-13-centos .ssh]# vim /etc/ssh/sshd_config
将片段
# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication yes
#PermitEmptyPasswords no
#PasswordAuthentication no
中PasswordAuthentication
设置成yes即可
[root@VM-8-13-centos .ssh]# service sshd restart
重启服务,大功告成