假设有两台专门的服务器,全新安装,两台服务器上都有相同的软件和用户。
假设,无论出于何种原因,我想将所有权模式从这些服务器之一复制到另一个。 那可能吗?
第一段几乎没有任何意义,但你真正的问题:
我可以使用其他服务器作为参考/模板来恢复和设置文件权限和所有权吗?
简单的答案是:也许…
更长的答案是,这样的策略将失败,每个文件都不存在于两台服务器上。 就脚本而言,您需要特别注意特殊文件,(符号)链接,文件/目录名称中的特殊字符等。
但是chmod和chown命令都支持--reference标志。 您可以指向一个现有的文件, chmod将使用该文件的权限,而不是在更改文件模式时需要提供MODE值。
同样, chown将使用该引用文件/目录的所有者和组,而不是指定OWNER:GROUP值。
那么这个练习是:
chown和chmod粗略find命令: ( 请注意,这些只是概念性的,未经testing的,请添加限制条件,仅查找文件和目录,省略符号链接等 )
要重置损坏的/etc/上的所有权和模式:
cd /template/etc find . -exec chmod -v --reference='{}' /etc/'{}' \; find . -exec chown -v --reference='{}' /etc/'{}' \;