应用另一台服务器的所有权模式

应用另一台服务器的所有权模式

假设有两台新安装的专用服务器,两台服务器上都有相同的软件和用户。

假设出于某种原因,我想将所有权模式从其中一台服务器复制到另一台服务器。这可能吗?

答案1

第一段几乎没有任何意义,但你的实际问题是:

我可以使用另一台服务器作为参考/模板来恢复和设置文件权限和所有权吗?

简短的回答是:也许......

更详细的答案是,对于两个服务器上都不存在的每个文件,这种策略都会失败。就脚本而言,您需要特别小心处理特殊文件、(符号)链接、文件/目录名称中的特殊字符等。

但是chmodchown命令都支持--reference标志。您可以指向现有文件并chmod使用该文件的权限,而无需在更改文件模式时提供 MODE 值。
同样,chown将使用该参考文件/目录的所有者和组,而不是指定 OWNER:GROUP 值。

那么练习如下:

  1. 将您需要的源、参考目录树作为模板提供给目标服务器。(如果您有足够的空闲空间,只需复制源目录,同时保留所有权和模式设置,或者使用 NFS 导出源目录树并将其挂载为模板。)
  2. 然后运行这些粗略的find命令来执行chownchmod

请注意,这些只是概念性的,未经测试。请添加限制, find例如仅定位文件和目录,并忽略以下符号链接等...
要重置损坏的所有权和模式/etc/

cd /template/etc
find . -exec chmod -v --reference='{}' /etc/'{}' \;
find . -exec chown -v --reference='{}' /etc/'{}' \;

相关内容