Linux:解决Linux操作系统上SSH无法启动
(2010-06-11 10:37:00)
标签:
linux操作系统etcservicebyit |
分类: Linux |
情景:
今天早上,产品需要更新,突然数据库有一张表出现了死锁,数据损坏,导致数据库同步停止,早上个小时的时间就在研究恢复的问题了。可能忽略了某个环节。
当需要更新文件的时候,突然发现使用WinSCP或是其他一些工具连接不到服务器了。但是我使用的putty一直处于正常状态中。
这时候首先想到的就重启一下sshd服务,结果如下:
[root@idaphne var]# service sshd restart
停止
sshd:
启动 sshd:/var/empty/sshd must be owned by root and not group or
world-writable.
结果显示,无法启动了,并提示了:/var/empty/sshd 目录的拥有者必须是root而且权限要可写。
查看一下sshd的工作状态:
[root@idaphne var]# /etc/init.d/sshd status
openssh-daemon 已停
信息说明ssh的守护进程已经停止。
注意:这个时候千万不要重新启动网络,不然当前使用putty将也会停止。如果putty也同时停止工作,那就真要跑到现场去操作了。那将是很可怕是一件事情。
解决方法一:
[root@idaphne var]# chown root /var/empty/sshd/
首先修改ssh的拥有者。
[root@idaphne var]# /etc/init.d/sshd start
启动 sshd:/var/empty/sshd must be owned by root and not group or
world-writable.
发现仍然无法启动。
查看一下/var/empty/目录的情况:
[root@idaphne var]# ls -al /var/empty/
总计 24
drwxrwxr-x
drwxrwxr-x 22 root root 4096 06-09 00:37 ..
drwxrwxr-x
显示用户属组都是root,并且权限是drwxrwxr-x,也就是775。
方法二:
重新更改一次属组:
[root@idaphne var]# chown -R root.root /var/empty/sshd
使用rpm -V 命令可检查到ssh的软件包正常,但某个目录的属主错误。
[root@idaphne var]# rpm -V openssh-server
S.5....T
.M......
.M......
更改权限由原来的775更改为774,也就是drwxrwxr--。d表示的是目录。
[root@idaphne var]# chmod 744 /var/empty/sshd
这时候在重启sshd服务:
[root@idaphne var]# service sshd restart
停止
sshd:
启动
sshd:
我们发现可以启动,使用WinSCP等工具登陆也没有异常出现。
说明:这里说明的是,775的权限是要高于774的权限的,但775突然出现问题,而使用774权限正常。这是个很怪异的事情。由于是服务器出现问题,为安全着想,我还没有将774重新更改回775来测试,接下来有时间再继续完成。