我有一个新的硬盘,并且想要将现有的 Linux 安装(更具体地说:OpenSUSE 11.1)从旧硬盘上的分区移动到新硬盘上的分区。
我的计划是:
使用启动 CD 启动(假设它是 OpenSUSE 启动 CD)
编辑 正如许多人所建议的(感谢所有人)
1a. 将所有文件从一个驱动器复制到另一个驱动器- 修改/etc/fstab(添加挂载点到新分区)
- 修改/boot/grub/menu.conf(添加启动分区)
- 重新安装 grub
我说得对吗?就是这样吗?
还是我错过了一些重要的步骤?(我确信我做到了)
答案1
我想说你忽略了一件事。
使用启动 CD 启动(假设是 OpenSUSE 启动 CD)
1a. 将所有文件从一个驱动器复制到另一个驱动器
修改 /etc/fstab(将挂载点更改为新分区)
- 修改/boot/grub/menu.conf(更改启动分区)
- 重新安装 grub
我想说的是,如果您将新驱动器上的分区设置为与旧设置兼容,这应该非常简单。如果您必须编辑 OS 文件内的挂载点位置,则可能会稍微复杂一些。我建议保持分区足够相似,这样您所要做的就是启动、挂载新驱动器、复制、更改启动分区、在新驱动器上重新安装 grub。删除旧驱动器,您就完成了!
答案2
您需要复制文件,正如 Axxmasterr 指出的那样。其他一切对我来说都很好。其他人也遵循了非常类似的路径:将 GNU/Linux 安装移动到新分区
小心使用 cp 命令来复制文件。使用 -a 选项可确保在点击符号链接时行为正确并保留所有权信息。
有些人使用 tar 而不是 cp 将文件复制到新分区:
$ cd 源目录;tar --create --file=- . | (cd 目标目录;tar --extract --file=-)
正如开头的链接所建议的那样,您可能希望保留 grub 文件中的旧条目并添加一个新条目,以防需要恢复。
祝你好运!
答案3
我认为这会起作用。
如果每个硬盘上只有一个分区,并且新磁盘的大小与原始磁盘相同或更大,那么更快的方法就是将旧磁盘(/dev/xxx,其中 xxx = 原始磁盘 sda、hdb 等)克隆到新磁盘(/dev/yyy)。
因此步骤如下:
- 使用 Live CD 启动
- sudo dd if=/dev/xxx of=/dev/yyy bs=32k
确保您获得 if(输入文件)和 of 正确,否则您将破坏整个旧磁盘。