[命令] Linux 命令 rm (删除目录或文件)

案例一:删除某一个文件

# rm <file>

案例二:删除某一个目录以及目录里的所有文件

# rm -r <directory>

案例三:非交互式删除某一个目录以及目录里的所有文件

# rm -rf <directory>

案例四:非交互式删除当前目录下的所有隐藏文件

# rm -rf .#*

案例五:非交互式删除所有特定后缀名称的文件

# rm -rf *txt

(补充:这里以非交互式删除所有以 txt 作为后缀名称的文件为例)

[内容] Linux acl 权限

案例一:给某 1 个文件或目录添加 acl

1.1 给某 1 个文件或目录添加 1 个用户的 acl

# setfacl -m u:zhumingyu:r-x /var

(补充:这里以在 /var 目录上给 zhumingyu 用户设置读和执行的 acl 权限为例)

(注意:给一个文件或目录添加了 acl 权限以后,更改权限的命令 chmod 对此文件或目录的操作可能会失效)

1.2 给某 1 个文件或目录添加 1 个组的 acl

# setfacl -m g:zhumingyu:r-x /var

(补充:这里以在 /var 目录上给 zhumingyu 组设置读和执行的 acl 权限为例)

(注意:给一个文件或目录添加了 acl 权限以后,更改权限的命令 chmod 对此文件或目录的操作可能会失效)

1.3 递归给某 1 个目录和目录里的所有内容添加 1 个 acl

# setfacl -Rm u:zhumingyu:r-x /var

(补充:这里以在 /var 目录上递归给 zhumingyu 组设置读和执行的 acl 权限为例)

案例二:删除某 1 个文件或目录的 acl

2.1 删除某 1 个文件或目录 1 个用户的 acl

# setfacl -x u:zhumingyu /var

(补充:这里以在 /var 目录上删除 zhumingyu 用户的 acl 权限为例)

2.2 删除某 1 个文件或目录 1 个组的 acl

# setfacl -x g:zhumingyu /var

(补充:这里以在 /var 目录上删除 zhumingyu 组的 acl 权限为例)

2.3 删除某 1 个文件或目录的所有 acl

# setfacl -b /var

(补充:这里以在 /var 目录上删除所有 acl 权限为例)

2.4 递归删除某 1 个文件或目录的 acl

# setfacl -Rx u:zhumingyu:r-x /var

(补充:这里以在 /var 目录上递归删除 zhumingyu 用户的 acl 权限为例)

2.5 递归删除某 1 个文件或目录的所有 acl

# setfacl -Rb /var

(补充:这里以在 /var 目录上递归删除所有 acl 权限为例)

案例三:显示某 1 个文件或目录的 acl

# getfacl /var

(补充:这里以显示 /var 目录的 acl 权限为例)

案例四:备份和还原某个文件或目录的 acl

4.1 备份某 1 个文件或目录的 acl

# getfacl -R /var > /acl.backup

(补充:这里以备份 /var 目录的 acl 权限为例)

4.2 还原某 1 给文件或目录的 acl

# setfacl --restore /acl.backup

(补充:这里以还原 /var 目录的 acl 权限为例)

[步骤] 临时文件或目录的自动删除(CentOS Linux & RHEL 版)

步骤一:创建自动清理临时文件或目录的配置文件

# cp /usr/lib/tmpfiles.d/tmp.conf /etc/tmpfiles.d/
# vim /etc/tmpfiles.d/tmp.conf

将以下内容:

......
q /tmp 1777 root root 10d
......

修改为:

......
q /tmp 1777 root root 5d
......

(补充:这样设置后会将 /tmp 目录下,权限为 1777 超过 5 天的文件或目录删除)

步骤二:自动清理临时文件或目录

# systemd-tmpfiles --clean /etc/tmpfiles.d/tmp.conf 

[命令] Linux 命令 rsync (差异同步)

案例一:将一个地方里的所有差异数据同步到另一个地方

# rsync -avDogp <source directory>/* <target directory>

案例二:将一个地方里的所有差异数据同步到另一个地方,并且被同步的地方有的数据而原地方没有的数据都将被删除

# rsync -avDogp --delete <source directory>/* <target directory>