如何将指定目录迁移至另一块硬盘的分区进行存储?
如何将指定目录迁移至另一块硬盘的分区进行存储?
嘿,我来帮你一步步搞定这个目录迁移的事儿,放心,操作起来不难,只要按步骤来就稳得很:
第一步:先备份重要数据!
不管操作多简单,先把/home/anton/test1和/home/anton/test2里的重要文件备份到其他地方,避免万一操作失误搞丢数据——毕竟小心驶得万年船嘛。第二步:准备HDD分区的挂载工作
- 先给
/dev/sda1创建一个临时挂载点(后续会改成永久挂载):sudo mkdir /mnt/temp_hdd - 挂载分区到这个临时目录:
sudo mount /dev/sda1 /mnt/temp_hdd - 用
df -h命令确认挂载成功,能看到/dev/sda1挂载在/mnt/temp_hdd就行。
- 先给
第三步:迁移目录内容到HDD分区
用rsync命令迁移,它能完美保留文件的权限、属性这些细节,比直接复制靠谱:sudo rsync -av /home/anton/test1/ /mnt/temp_hdd/test1/ sudo rsync -av /home/anton/test2/ /mnt/temp_hdd/test2/注意命令里目录末尾的斜杠
/,别漏了!它是告诉rsync把目录里的内容移过去,而不是创建嵌套的子目录。第四步:备份原目录并创建软链接
- 先把原来的目录改名备份,万一迁移有问题还能恢复:
sudo mv /home/anton/test1 /home/anton/test1_backup sudo mv /home/anton/test2 /home/anton/test2_backup - 创建软链接,让原来的目录路径指向HDD上的新位置:
sudo ln -s /mnt/temp_hdd/test1 /home/anton/test1 sudo ln -s /mnt/temp_hdd/test2 /home/anton/test2
- 先把原来的目录改名备份,万一迁移有问题还能恢复:
第五步:设置开机自动挂载HDD分区
现在挂载是临时的,重启后就没了,得设置永久挂载:- 先获取
/dev/sda1的UUID(用UUID挂载比设备名更稳定,避免重启后设备名变化):
执行后会输出类似sudo blkid /dev/sda1/dev/sda1: UUID="xxxxxx-xxxx-xxxx-xxxx-xxxxxx" TYPE="ext4"的内容,把UUID记下来。 - 编辑
/etc/fstab文件添加挂载规则:
在文件末尾添加一行:sudo nano /etc/fstab
按UUID=你刚才记下的UUID /mnt/temp_hdd ext4 defaults 0 2Ctrl+O保存,Ctrl+X退出编辑器。 - 验证挂载规则是否生效:
如果没有报错,就说明设置成功了,重启后分区会自动挂载。sudo mount -a
- 先获取
第六步:验证权限并清理备份
- 确保你(anton用户)对HDD上的目录有读写权限:
sudo chown -R anton:anton /mnt/temp_hdd/test1 sudo chown -R anton:anton /mnt/temp_hdd/test2 - 测试一下:在
/home/anton/test1里创建一个文件,然后去/mnt/temp_hdd/test1看看是否存在;反过来操作也试试,确认没问题后,就可以删除备份的test1_backup和test2_backup了。
- 确保你(anton用户)对HDD上的目录有读写权限:
备注:内容来源于stack exchange,提问作者27cm
相关产品推荐
相关产品推荐

