用于使所有文件相同的Rsync语法?

我即将把一个大型网站转移到一个新的服务器上(两端都是CentOS) – 目前新服务器正在运行那里的所有文件的一个旧副本,我想我原先是用SCP做的。 自从创build该副本后,我对新服务器上的一些文件进行了一些更改,并创build了一些作为testing内容的一部分。

我希望使用rsync再次同步一切(因为它似乎是最合适的工具),但我不知道如何删除在新的服务器上已更改的所有内容,并将其replace为旧的文件现有的服务器,而不需要再复制一大堆相同的文件。

-I语法似乎做我想要的,通过忽略date我可以得到它来取代任何不同的东西,但我如何删除不应该在那里的文件,并得到一个真正的1:1副本两端?

看看--delete选项:

 --delete delete extraneous files from dest dirs 

像这样的东西:

 /usr/bin/rsync -avz --delete --ignore-existing /document/root/ user@newserver:/document/root/ 

您也可以使用--checksum选项,而不是默认使用“快速检查”。