Linux 上的备份权限
如果您担心 Linux 系统上的文件权限被更改,可以使用 getfacl 命令备份特定文件或目录集的文件权限。然后,您可以使用 setfacl
命令批量恢复文件权限。
在本指南中,我们将展示如何制作文件权限的备份快照,以及如何恢复保存的权限。
在本教程中您将学习:
如何创建文件权限的备份
如何恢复文件权限备份
在 Linux 上备份文件权限
创建文件权限的备份
查看下面的一些命令行示例以了解 getfacl
语法,并在您想要创建文件权限快照时在您自己的系统上使用这些命令。
制作
/var/www/myweb
目录的文件权限快照。$ getfacl /var/www/myweb > permissions.acl
指定文件或目录的文件权限将保存在permissions.acl文件中。
您可以通过使用通配符或指定要快照的多个文件来备份多个文件和目录。
$ getfacl example/file1 example/file2 > permissions.acl OR getfacl example/file* > permissions.acl
如果您使用绝对路径名,通常应包含
-p
选项。否则,前导斜杠将从.acl
文件中删除。根据我们的经验,使用绝对路径名可以减少出错的空间,因此我们建议您使用它们。$ getfacl -p /var/www/myweb /home/linuxconfig/morefiles > permissions.acl
生成的 .acl 文件将包含有关每个文件的所有者、组、权限甚至特殊权限(如 setuid 等)的信息。
检查 ACL 文件的内容,可用于恢复文件权限
恢复文件权限
当您需要从.acl
文件恢复文件权限时,您可以使用setfacl
命令来快速完成它。
$ setfacl --restore=permissions.acl
由于文件 permissions.acl
包含应恢复权限的所有文件和目录的完整路径,因此无需指定任何额外选项。
但是,如果您在生成 ACL 文件时没有使用 -p
选项和 getfacl
命令的绝对路径,则需要确保权限.acl
位于生成它的同一目录中。否则,恢复将无法按预期进行。
结束语
在本指南中,我们了解了如何在 Linux 上备份和恢复文件权限。这可以分别通过 getfacl 和 setfacl 命令来完成,这样我们就可以拍摄快照,以防将来文件或目录权限被错误地更改。