chown误操作导致服务宕机修复过程


一次不小心敲了chown -R www:www /

导致ssh都无法登录主机,原以为要重装系统,没想到阿里云控制台还能登录,于是开始了修复过程,记录如下:
1、恢复ssh
在阿里云控制台中,我想反向操作下chown,于是chown -R root:root /
一堆错误后,发现ssh还是不能登录,启动ssh报错,说什么too open,于是将ssh的几个key文件改为600权限,重启后发现ssh远程可以登录了,开心。
2.修复操作系统其它目录权限:
CentOS6.x进入操作系统单用户模式:
    恢复密码{
        # 即进入单用户模式: 在linux出现grub后,在安装的系统上面按"e",然后出现grub的配置文件,按键盘移动光标到第二行"Ker……",再按"e",然后在这一行的结尾加上:空格 single或者空格1回车,然后按"b"重启,就进入了"单用户模式"
            挂载系统为RW:
            mount -o remount rw  /
    }
进入单用户模式后,直接将根目录下的权限修改成root:
                #chown root.root -R /*


3、修改nginx和php文件夹宿主
执行chown -R www:www ,并chmod -R a+w 将nginx和php文件夹宿主转回www用户
4、发现大文件不能上传问题
以上操作后,以为问题解决了,没想到大几百k的文件无法上传,报nginx 500 内部错误,百度好久发现一篇类似文章,改参数没用,
只能将nginx的配置文件中的user改为root root,遂试,大文件上传可以了。但使用root用户安全始终不放心,又改回www用户。
继续百度,发现一篇文章在nginx.conf中的http部分设置了
client_body_temp_path /tmp;
于是我打开nginx.conf找了下该参数,居然没有,于是添上去,保存重启,大文件终于可以上传了!
需要注意/tmp目录要可写。


以上花了我一个晚上(到凌晨2点+早上1小时)的时间,看来chown操作要非常小心!!!
 
分割线
打赏
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS