ssh远程上午都还正常登陆,下午就登陆不了。

    之前就写了个数据库备份脚本,没做其它任何操作。远程其它主机通过局域网IP登陆,还是不行。第二天又能登录。排除防火墙,host.deny等。检查发现系统日志全部清空了,吓一跳。系统各方面均正常,web服务也一直正常。再开新开ssh窗口发现又无法登录。重启sshd服务,显示,关闭状态为“失败”,启动状态为“成功”。重启失败。也没动啥,为啥不能重启呢???

    查看secure日志,发现错误提示:“sshd[2142]: fatal: daemon() failed: No such device”google下:说sshd服务与/dev/null有关。

    恍然大悟,昨天写脚本时,用过/dev/null,立即检查,发 现在脚本里把 “2>&1 > /dev/null写成了2&>1 > /dev/null。 就导致sshd 不能正常登录了。于是试了下。重启sshd服务两次,正常了。

    用下列命令可以重建:

 
  
  1. #rm /dev/null 
  2. #mknod /dev/null c 1 3 
  3. #chmod 666 /dev/null 

   总结下:

      1、“引以为鉴,如果sshd突然出现登录不正常,想想你之前是否用过/dev/null,/dev/null伤不起啊

      2、细心,细心,再细心,一个小小的字符顺序差点弄出大问题。真是一颗耗子屎可以坏锅汤。

      3、遇到问题时,在时间允许的范围内,多忍耐,分析一下。答案就会出现。这次幸好没立即跑机房,要不然白跑了

      4、他们说我的机器被***了,我觉得不太可能,关键时刻还是要相信自己。

      5、以后先在本地测试下,再copy到远程