重置系统文件权限、所有者和组

重置系统文件权限、所有者和组

Mac 有一个实用程序,可以检查系统上安装的文件的权限,以确保它们在安装时具有正确的权限。 LinuxMint 有类似的东西吗?我不是在寻找 chown,因为我不知道权限应该是什么,也无法通过包来弄清楚。

谢谢

答案1

LinuxMint 基于 Debian,但 Debian 显然没有这方面的工具。您可以重新安装相关软件包,详细信息请参见恢复 Debian 系统权限。重新安装一切:

sudo apt-get --reinstall install `dpkg --get-selections | grep install | grep -v deinstall | cut -f1`

如果它是基于 RPM 的系统,原则上您可以检查修改的包,并减轻重新安装的痛苦。然而,在 Debian 中重新安装软件包比初始安装要轻松得多。

如果您想识别最近安装的软件包,可以通过搜索 dpkg 日志来实现,详细信息请参见按安装日期列出软件包

答案2

这取决于您使用什么包管理器以及您拥有什么环境。

Linux 本身没有这样的工具,因为 Linux 存在许多软件,其中许多可能需要特殊的文件处理或执行模式(即 setuid 二进制文件或分配了特殊权限的类似邮箱的目录),这与 Mac(我假设 OS X ),因为 Mac 是更加封闭的池,并且 OS X 设计者确实知道典型 Mac 上将预加载哪些软件,并且有安装软件包的指南。

如果包管理器可以调试此类问题,那么 - 很好,您应该检查您的包管理器文档。

如果您对根文件系统感到困惑,那么首先备份当前的权限列表是安全的:

find / -xdev -exec ls -ld '{}' ';' >>/root/perms.lst
(do that for each mount point related to system binaries, for example, /usr)

然后将所有内容重置回根 (0:0)。如果您有任何特殊的 setuid 二进制文件将受到此类重置的影响,您稍后可以通过检查 /root/perms.lst 文件来重置它们的状态。

对于 chmod 权限,建议 chmod 644 或 chmod 755 之类的内容比较困难,您应该在进行更改之前检查您的文件,因为可能存在安全问题。

相关内容