Linux中,如果意外误操作将/目录权限批量设置,比如chmod -R 777 / ,系统中的大部分服务以及命令将无法使用,这时候可以通过系统自带的getfacl命令来拷贝和还原系统权限,若是其他系统目录被误操作,同样可行。修复的方法如下:
1、通过一台权限正常的Linux(最好内核版本和故障服务器相同) 通过getfacl -R / >systemp.bak将这个正常系统的/目录下所有文件的权限都备份保存在systemp.bak中,如图:
2、如果异常服务器未重启等操作并且连接未端,可以使用scp命令将正常的备份文件传至异常服务器中,命令如下:
scp root@目标机器IP:system.bak文件路径 本地存放system.bak路径
也可用其他方法把systemp.bak移动到异常服务器中。
3、在异常服务器中执行命令setfacl --restore=systemp.bak即可将现在的系统权限恢复成和正常系统一样
4、reboot重启系统