如何备份及恢复Linux文件权限

转载 2016年05月31日 23:04:05

译:烨子

你可能听说或碰到过这样的事情:一个系统管理员菜鸟不小心输入"chmod -R 777 /"从而导致了巨大的悲剧,使得整个系统遭到了严重的破坏。在日常管理中,我们有许多工具可以用来备份文件权限,如cp、rsync、etckeeper等。如果你使用了这个备份工具,那么你的确不需要担心改变的文件权限问题。

但如果只是想暂时备份文件权限(而不是文件本身),例如:为了阻止一些目录的内容被覆盖暂时移除该目录下所有文件写的权限;或是正在排除文件权限问题的过程中需要对文件进行chmod命令操作。在这些情况下,我们可以在原始文件权限改变之前对其进行备份,一会我们需要它的时候再将原始权限还原。在很多情况下,如果你只是想要备份文件的权限,那么完整的文件备份是不必要的。
在Linux上,实际上备份和恢复文件权限使用访问控制列表(ACL)是容易的。ACL根据不同的所主和所组在兼容posix的文件系统上定义了单个文件的权限。

以下演示如何使用ACL工具备份和恢复Linux的文件权限

1. 安装ACL工具

在Debian, Ubuntu,Linux Mint上

$ sudo apt-get install acl

在CentOS,Fedora,RHEL上

$ sudo yum install acl
2. 备份当前目录下(包括子目录)所有文件的权限
[root@linuxprobe tmp]#  ls -l
total 8
-rwxr--r--. 1 root root  0 Mar  3 04:40 install.txt
-rwxr-xr-x. 1 root root  0 Mar  3 04:41 linuxprobe.txt
[root@linuxprobe tmp]# getfacl -R . > permissions.txt
...

此命令将所有文件的ACL信息全部写入名为permissions.txt文件。

以下是生成的permissions.txt文件中部分目录信息

[root@linuxprobe tmp]# cat permissions.txt
# file: .
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
other::rwx
# file: install.txt
# owner: root
# group: root
user::rwx
group::r--
other::r--

# file: linuxprobe.txt
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

# file: permissions.txt
# owner: root
# group: root
user::rw-
group::r--
other::r--
...
3. 修改某一文件权限,如:修改linuxprobe.txt及install.txt权限
[root@linuxprobe tmp]# chmod 733 linuxprobe.txt 
[root@linuxprobe tmp]#  chmod 573 install.txt 
[root@linuxprobe tmp]# ls -l
total 8
-r-xrwx-wx. 1 root root    0 Mar  3 04:40 install.txt
-rwx-wx-wx. 1 root root    0 Mar  3 04:41 linuxprobe.txt
-rw-r--r--. 1 root root 4361 Mar  3 04:41 permissions.txt
......
4. 恢复原有权限

1)cd到创建permissions.txt时所在的目录
2)执行以下命令:

setfacl --restore=permissions.txt

可以看到linuxprobe.txt及install.txt权限恢复了

[root@linuxprobe tmp]# setfacl --restore=permissions.txt
[root@linuxprobe tmp]# ls -l
total 8
-rwxr--r--. 1 root root    0 Mar  3 04:40 install.txt
-rwxr-xr-x. 1 root root    0 Mar  3 04:41 linuxprobe.txt
-rw-r--r--. 1 root root 4361 Mar  3 04:41 permissions.txt
......

本文转载自:http://www.linuxprobe.com/backup-linux-file-permission.html免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:http://www.linuxprobe.com/

如何备份及恢复Linux文件权限

你可能听说或碰到过这样的事情:一个系统管理员菜鸟不小心输入"chmod -R 777 /"从而导致了巨大的悲剧,使得整个系统遭到了严重的破坏。在日常管理中,我们有许多工具可以用来备份文件权限,如cp、...
  • linuxnews
  • linuxnews
  • 2016年03月30日 09:57
  • 537

Linux 备份及恢复 Linux 文件权限

概述一个系统管理员菜鸟不小心输入”chmod -R 777 /”从而导致了巨大的悲剧,使得整个系统遭到了严重的破坏。在日常管理中,我们有许多工具可以用来备份文件权限,如cp、rsync、etckeep...
  • yangshangwei
  • yangshangwei
  • 2017年01月16日 17:03
  • 2250

linux c中修改文件权限

#include #include #include #include #include #include #include int main(int argc,char*...
  • u014660247
  • u014660247
  • 2016年10月31日 19:55
  • 675

linux如何修改文件或目录的权限(chmod)

chmod 777 修改权限  意思是该登录用户(可以用命令id查看)、他所在的组和其他人都有最高权限。 修改文件的权限或目录的命令为“chmod 755 test.sh”。755表示“创...
  • anya
  • anya
  • 2016年03月10日 11:48
  • 1983

一、Linux文件权限

一、Linux文件权限    每个Linux文件具有四种访问权限:可读(r)、可写(w)、可执行(x)和无权限(-)。    利用ls -l命令可以看到某个文件或目录的权限,它以显示数据的第一个字段为...
  • forest_fire
  • forest_fire
  • 2016年03月21日 10:41
  • 629

Linux修改文件属性和权限

来自鸟哥的Linux私房菜 在Linux下,和文件有关的身份有用户组,所有者,others,这三种身份又有三种权限,即r(读)、w(写)、x(执行)。 首先,文件权限描述由10个字符组成,...
  • sinat_30071459
  • sinat_30071459
  • 2016年04月19日 17:11
  • 9850

Linux 下 查看以及修改文件权限

查看权限 在终端输入: ls -l xxx.xxx (xxx.xxx是文件名) 那么就会出现相类似的信息,主要都是这些: -rw-rw-r-- 其中: 最前面那个 - 代表的是类型 中...
  • menxu_work
  • menxu_work
  • 2013年12月11日 17:51
  • 46769

Linux数据备份手册

Linux作为新一代网络操作系统,在服务器方面的应用越来越广泛。作为专门的网络服务器,一个重要功能就是对服务器数据进行备份,以确保数据的安全。本文将介绍在Linux系统下一些常用的数据备份方法。 1、...
  • solarium
  • solarium
  • 2008年04月12日 22:13
  • 2768

Tableu Server备份及恢复

1、备份原服务器上的数据文件 停止服务器 进入你的tableu server安装路径 以管理员身份运行cmd命令窗口,进入{你的tableu server安装目录}/{版本}/bin cd d...
  • ZHENhen_520
  • ZHENhen_520
  • 2017年12月27日 10:31
  • 246

Linux 查看文件权限命令

Linux 查看文件权限命令 格式:ls -l或者是ls -l 文件名称   Administrator@USER-20140831CZ /opt/hadoop $ ls -l bin -r...
  • xiaojin21cen
  • xiaojin21cen
  • 2014年11月26日 22:48
  • 3449
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何备份及恢复Linux文件权限
举报原因:
原因补充:

(最多只允许输入30个字)