我有一个内置 320GB SATA HDD,它显示出即将发生故障的迹象(复制时出错、SMART 状态等)。我还有另一个可用的内置 HDD,我想将数据迁移到该 HDD。我当前的设置如下:
操作系统:Ubuntu 14.04
/dev/sda --> 故障驱动器
/dev/sda1 --> 已安装 / ~20GB 50% 可用
/dev/sda2 --> 已安装交换 ~5GB
/dev/sda3 --> 已安装 /home/user ~250GB 80% 可用
有人能解释一下我应该遵循什么程序来将所有数据复制到新驱动器吗这样我就不用重新安装 Linux 并重新配置一切从头开始 ?
短暂性脑缺血发作
答案1
您可以使用 dd
# dd if=/dev/sda of=/path/to/dump.bin bs=8M
这将生成 /dev/sda 的映像作为 dump.bin。请注意,“bs”是指块大小,基本上表示 dd 一次读取/写入多少。您需要一个稍大的块大小来加快速度
当您获得新的硬盘时,您可以使用以下命令转储映像(假设您的新驱动器是 /dev/sdb)
# dd if=/path/to/dump.bin of=/dev/sdb bs=8M
这基本上会使您的新驱动器成为旧驱动器的逐字节克隆。请注意,这也意味着新驱动器中的所有数据都将被永久删除!
然而,新驱动器的大小至少要与图像相同。
也可以把这个命令和gzip或者bzip2等压缩工具结合起来实现压缩,这样会压缩很多
如果你的硬盘出现故障,读取(或写入)时出现错误,则此方法可能不起作用
此外,如果您在复制整个磁盘时遇到问题,您也可以尝试仅转储 /dev/sda1(其中包含您的系统文件),然后尝试逐个文件复制 /home 文件。然后,您可以在新驱动器上手动重新创建分区布局,并将文件转储到相应的分区中。