使用 chmod 时,我意外地更改了 bin 文件夹中的所有内容,现在 sudo/su 不起作用。
我知道rpm -q --提供什么可以提供哪个 RPM 提供了特定的文件。并且rpm --setperms可以恢复 RPM 提供的所有内容。
有没有办法使用 rpm 恢复文件夹中所有文件的权限?
答案1
恐怕内置功能不适用于每个目录。不过,以下方法可能是一个解决方案……假设您/usr/bin
以递归方式弄乱了权限,以下方法可能有所帮助:
rpm --setperms $(rpm -qf $(find /usr/bin) | sort -u)
它查找下面的所有元素/usr/bin
并查询 RPM 数据库以查找相应的包,对 RPM 包列表进行重复数据删除并rpm --setperms
针对每个适用的 RPM 包运行。