如何区分两台Redhat Linux服务器?

除了已知的差异之外,我有两台服务器应具有相同的设置.

通过运行:

find / \( -path /proc -o -path /sys -o -path /dev \) -prune -o -print | sort > allfiles.txt

我可以在一台服务器上找到所有文件的列表,并将其与另一台服务器上的文件列表进行比较.这将显示驻留在服务器上的文件名称的差异.

我真正想要做的是对两台服务器上的所有文件运行校验和,并比较它们以找到内容不同的位置.例如

find / \( -path /proc -o -path /sys -o -path /dev \) -prune -o -print | xargs /usr/bin/sha1sum

这是一种明智的方法吗?我当时认为rysnc已经具备了大部分功能,但可以用来提供差异列表吗?

解决方法

你是对的,rsync是完美的.使用–itemize-changes(aka -i).确保您可以在双方(或其他具有完全访问权限的用户)的root用户身份运行此命令:
rsync -ani --delete / root@remotehost:/

> -a用于存档,基本上使rsync完全重复(除了某些涉及链接的情况)
> -n用于干运行,意味着什么都不会实际改变(这个是重要的!:))
> -i用于逐项更改,并输出一个简单易懂的一次性格式,显示需要更新的每个文件(语法在详细帮助下的手册页中有详细解释)触发).
> –delete使rsync删除目标但不存在源的文件.

如果要排除某些路径,请使用–exclude / var之类的命令.排除模式是相对于源目录(在这种情况下是/,因此它们实际上是绝对的).

相关文章

/etc/sysctl.conf这个目录主要是配置一些系统信息,/etc/sys...
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起...
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅...
不管是我们在安装软件还是监测软件的使用性能,我们都要随时...
装好Tomcat7后,发现除了本机能访问外界访问不了,岂有此理。...
修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,...