我想索取有关使用 rsync 的信息。我尝试阅读手册,但示例很少且令我困惑。
我不需要高级功能或实时同步或远程源或远程目标。一切都与ext4。只需使用我笔记本电脑的硬盘驱动器和 USB 上的外部硬盘驱动器。在 Ubuntu 上。
我的最终目标是将我的 /home 的内容移动到外部驱动器。擦拭我的笔记本电脑,将其切换到 LVM,重新安装 Ubuntu,更新,安装我之前拥有的相同程序,然后启动一个 live USB 并将我备份的 /home(现在在我的外部硬盘上)的内容复制到 /home 的新安装(使用与上次相同的用户名和 uid 安装)。
我想保持所有权限和所有权相同。
我尝试将所有内容复制粘贴到外部驱动器上,但收到错误消息。我知道在实时 USB 上从 GUI 进行复制粘贴会将所有内容更改为 root 所有权(这将是双倍加上不好的)。
我在手册页中看到了所有这些标志......我所理解的只是rsync /home/jonathan /media/jonathan/external-drive/home/jonathan
来自rsync /source/file/path /destination/file/path
.
我已经使用这个硬盘来备份大多数文件夹和大文件,如电影等。有没有办法复制粘贴我想要的内容,同时保存权限,只添加迄今为止被忽略的 .config 文件,只更改更改的文件?我希望能够手动执行此操作大约每周一次以备份设置和我的个人文件,以防我需要在紧急情况下重新安装或我的硬盘驱动器出现故障。
感谢您的任何帮助
最简单的方法是使用 live USB 并将
-a
标志用于rsync
.这个标志(我认为
-a
代表存档)保留所有文件和文件夹属性,包括权限。进入实时会话后,插入外部驱动器并使用
sudo blkid
以查看哪些驱动器对应于/dev
. 您可能会发现您的 live USB 是/dev/sda
,而您的笔记本电脑的 HDD 是/dev/sdb
,也许您的外部驱动器是/dev/sdc
。我会假装这些是驱动器名称,但您的可能会有所不同。为您的笔记本电脑和外部驱动器创建子文件夹:
然后安装驱动器并在外部驱动器中创建一个文件夹(如果它不存在):
然后用于
rsync
以归档模式复制数据:sudo rsync -av /mnt/laptop/home/jonathan /mnt/external/home
确保您不在原始文件夹名称中使用尾部斜杠,以便
rsync
使用正确的权限为您创建它。移动到外部驱动器中的文件夹:
cd /mnt/external/home/jonathan
并检查文件权限是否使用
ls -la
.祝你好运!