执行"chmod -R 777 "补救措施

问题描述

在变更文件、目录权限时,误操作执行了“chmod -R 777 /”,致使整个操作系统的权限全部变为“777”,影响相关业务。

解决方案

第一步

先恢复相关账号以及ssh登录的权限,这样我们可以通过VNC以及远程登录来解决后续问题。

修改passwd、group、shadow、ssh相关文件权限:

cd /etc
chmod 644 passwd group shadow 
chmod 400 gshadow 
cd ssh
chmod  600 moduli  sshd_config ssh_host_dsa_key ssh_host_ecdsa_key ssh_host_ed25519_key ssh_host_rsa_key
chmod  644 ssh_config ssh_host_dsa_key.pub ssh_host_ecdsa_key.pub ssh_host_ed25519_key.pub ssh_host_rsa_key.pub
chmod 711 /var/empty/sshd
systemctl restart sshd

尝试ssh登录。若普通用户无法切换成root用户,则执行以下命令:

chmod u+s `which su`

第二步

通过rpm命令来恢复rpm包的文件的所属者和权限,运行以下命令重置所有已安装软件包中文件的权限:

rpm --setugids PACKAGE_NAME - sets user/group ownership of files in the given package.
rpm --setperms PACKAGE_NAME - sets permissions of files in the given package.

执行参数 -a (all)修复已安装文件和目录的相关权限:

rpm -a --setugids
rpm -a --setperms

特别注意:上述命令的顺序非常重要, --setugids 命令中的组和用户关联设置操作删除了 SUID 和 SGID 位。如果不通过后续的 --setperms 操作重新应用它们,依赖这些位的实际应用程序将不再起作用。

如果您有其他问题,欢迎您联系火山引擎技术支持服务

0
0
0
0
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论