误执行sudo chmod 555 /导致服务器权限异常的解决方法咨询
误执行sudo chmod 555 /导致服务器权限异常的解决方法咨询
哎呀,这可真是个让人头大的操作——把根目录/设成555权限后,系统几乎所有写入操作都被禁止,连登录都卡在家目录权限和bash执行权限上了。别慌,咱们可以通过单用户模式/救援模式来修复,具体步骤如下:
第一步:进入可读写的系统权限环境
因为现在根目录是555(只读+执行),你没法直接在正常登录状态下修改权限,必须进入单用户或救援模式获取可读写的根权限:
- Ubuntu/Debian系:开机时按住
Shift键进入GRUB菜单,选择「Advanced options for Ubuntu」,再选带「recovery mode」的内核版本,然后在救援菜单里选「root Drop to root shell prompt」。进入后先执行mount -o remount,rw /把根目录重新挂载为可读写。 - CentOS/RHEL系:开机时按
e键编辑GRUB启动项,找到以linux开头的行,把末尾的ro改成rw init=/sysroot/bin/sh,按Ctrl+X启动。进入后执行chroot /sysroot切换到真实根目录。
第二步:修复根目录及关键目录的权限
- 先把根目录权限改回正常的
755(所有者读/写/执行,组和其他读/执行):chmod 755 / - 修复
/home目录权限(正常应为755):chmod 755 /home - 修复用户家目录
/home/User1的权限(建议设为700,保证用户私有;如果需要其他用户能访问目录,可设为755):chmod 700 /home/User1 - 修复
/bin目录权限(正常应为755,确保bash能被执行):chmod 755 /bin
第三步:验证并重启
执行以下命令确认权限是否恢复正常:
ls -ld / /home /home/User1 /bin
确认输出的权限符合预期后,退出单用户模式(输入exit,然后在救援菜单选「resume normal boot」),或者直接执行reboot重启系统。
重启后应该就能正常登录服务器了,以后操作chmod递归或根目录时一定要加倍小心!
备注:内容来源于stack exchange,提问作者hergo herna
相关产品推荐
相关产品推荐

