首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将文件夹的全部内容(递归)从一台服务器传输到另一台服务器?

问如何将文件夹的全部内容(递归)从一台服务器传输到另一台服务器?
EN

Ask Ubuntu用户
提问于 2011-10-17 00:13:19
回答 2查看 965关注 0票数 1

我在运行UbuntuServer10.04LTS (Lucid )的VPS中有一个/home/jbruni文件夹。

我即将关闭这个VPS,并将一些东西从它移到一个新的VPS,也运行相同的Ubuntu版本。

目前,我想将/home/jbruni上的所有内容从“旧的”VPS移到新的。

1)我希望保留所有文件权限和所有权设置(我不想在传输之后使用任何chown或chmod )。注意:新的VPS已经具有相同的用户/组,具有相同的UID/GID

2)我想保留所有的符号链接和硬链接,虽然我相信在这种情况下没有一个硬链接。我有很多符号链接,文件和文件夹都指向自己的/home/jbruni文件夹中的位置。

我真的很想保存日期和时间(时间,时间,时间)。如果不可能,好吧...也没那么糟。

4)在传输之前,我没有足够的磁盘空间来创建一个包含“旧”VPS中所有内容的大文件(就像一个大tarball)。不管怎么说,如果真的需要的话,我可以获得这个临时的额外空间。

所以,我想要的是一个源文件夹的“镜子”。有什么办法可以轻易做到这一点吗?(甚至不是那么容易?)

谢谢!

EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2011-10-17 00:22:36

rsync!

代码语言:javascript
复制
rsync -azv -e ssh ./localdirectory/ user@otherserver:/remote/dir

-a是这里的坏男孩.它实际上是一个名为-rlptgoD的元参数,这意味着,除其他外:

  • 递推
  • 保留符号链接
  • 保留权限
  • 保留修改时间
  • 保护组
  • 保存所有人
  • 并保存特殊的东西

它不会保留硬链接,因为硬链接是文件(实际上,它是一个指向inode的指针,它存储文件名--但普通文件也是这样--当您创建一个硬链接时,您只是给一个inode一个额外的文件名)。这不应该是你的问题,因为他们是非常罕见的海事组织。

-z将尝试压缩流中的数据(稍微加快速度)。

-v将确保它为您提供大量的输出。

票数 7
EN

Ask Ubuntu用户

发布于 2011-10-17 00:17:22

我会用rsync来做这个。我相信它是在Ubuntu中默认安装的,但如果不是,那么您可以从档案中安装它。

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/67838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档