我目前有一个 1TB 的硬盘设置,用于双启动 Win7 和 Ubuntu 12.04。我正在购买一个 256GB 的 SSD 和另一个 1TB 的硬盘。我的意图如下:
- 将 SSD 设置为我的双启动设备,其中装有 Adobe CS6 和其他主要程序。
- 仅将我现有的 HDD 保留为存储。
- 安装新的 1TB HDD 作为内部备份。
是否有文章或指南涵盖以下内容:
- 备份所有分区
- 将所有分区迁移至启动 SSD
- 格式化和分区硬盘以方便 Win7 和 Ubuntu 的文件存储
- 将 Ubuntu 音乐、图片、文档和下载重新指向存储设备。我已经在 Windows 上完成了这项工作。
- 从备份恢复个人文件
我很清楚自己需要做什么,但我不想把迁移搞砸,因为它是我的工作机器。任何建议都将不胜感激。
答案1
我有一个类似于您的设置(双启动 SSD、存储 HDD,但没有备份 HDD)。为了将您的分区迁移到 SSD,理想的方法是使用 CloneZilla 克隆驱动器,详情请参阅这个帖子。 这应该能够让您保留当前硬盘上的现有数据,直到您确定迁移顺利完成。我可能还会先将驱动器克隆到第二个硬盘上以实现冗余。
一旦 SSD 正确启动,您将需要将存储磁盘格式化为 NTFS。这是 Windows 原生文件系统,现代 Linux 可以毫无问题地处理读/写。我倾向于将存储驱动器上的分区格式化为 ext4,以防 NTFS 分区损坏,但这并不是绝对必要的。
重定向音乐/图片/文档/下载很容易。正确配置存储驱动器后,您可以设置 Ubuntu 以在启动时挂载这些分区。然后,您可以删除 /home 目录中的默认目录结构,并将所有内容替换为指向存储设备的符号链接。
为了在启动时挂载存储设备,您可能需要在根文件系统的 /media 中有一个挂载点,您可以使用以下命令创建:
$ sudo mkdir -p /media/storage
您需要知道存储分区的 UUID,可以使用“blkid”命令获取。对我来说,输出如下所示:
hawk@orthanc ~ » sudo blkid
/dev/sda1: LABEL="System Reserved" UUID="6A9EC15B9EC12085" TYPE="ntfs"
/dev/sda3: UUID="e346b4e2-8898-4fb7-af41-f7186d0b9e2a" TYPE="ext4"
/dev/sda4: UUID="cddb292c-5eee-43f1-ae02-3d878a45dea7" TYPE="swap"
/dev/sdb1: LABEL="storage" UUID="ec0728db-2eee-41d1-9256-88f04169452c" TYPE="ntfs"
接下来,您需要在 /etc/fstab 中添加适当的行,以便在启动时挂载。对我来说,应该是这样的:
$ echo "UUID=ec0728db-2eee-41d1-9256-88f04169452c /media/storage ntfs rw,nosuid,nodev,noatime,allow_other 0 0
然后,您可以手动挂载存储分区并轻松地重定向所有重要目录:
$ sudo mount -t ntfs /dev/sdb1 /media/storage
$ rm -rf ~/{Desktop,Documents,Downloads,Music,Pictures,Videos}
$ mkdir -p /media/storage/{Desktop,Documents,Downloads,Music,Pictures,Videos}
$ for folder in Desktop Documents Downloads Music Pictures Videos; do ln -s /media/storage/${folder} /home/<username>/${folder}
这将创建从 /home//Desktop 指向 /media/storage/Desktop 等的符号链接。
现在,如果您想将文件拉回来,就像什么都没发生过一样,您可能需要考虑与我之前描述的不同的备份选项。我使用 deja-dup(Ubuntu 的内置备份工具)来备份我的主目录,它有一些不错的恢复选项。我不完全确定 Windows 的最佳工具是什么,但您可能希望在缩小/擦除第一个硬盘之前采用旧的压缩方法,然后将其传输到第二个硬盘。
到最后,只有您知道您的 Windows 用户文件夹是否可以与您的 'nix 用户文件夹成功合并。
现在,您仍然需要设置 2 个 HDD 以实现冗余。如果您只使用 'nix,我认为您可以执行软件 raid 0/1 进行镜像或条带化。您仍然可以这样做,但我不知道 Windows 7 如何处理软件 raid。另一种方法是,您可以只使用额外的 HDD 定期练习良好的备份卫生习惯(这可能很棘手,需要勤奋和良好的工具)。
不过,我做了一些研究,确实发现了一些建议,可以让软件 raid 阵列在两个磁盘上都能很好地运行(这个帖子很有用,您只需在同一个 SSD 上安装两个操作系统即可。
我的看法是,让软件 raid 在 Windows/Ubuntu 上顺利运行的成功率非常小,而且 raid 无论如何都不是一个很好的备份策略。您应该在安装 Windows 时留出大量 SSD,然后可以将 /boot、/、/home 和 swap 放在 Ubuntu 的 SSD 上(由于您实际上并不打算将大部分存储空间放在 /home 中,所以这应该不是问题)。
对于备份,我可能会计划使用 Linux 进行备份,因为这样可以访问所有文件系统,而且我会在第二个硬盘上有一个专用的备份分区(有关如何选择文件系统的更多信息,请参阅这次讨论)。
总之,有上亿种方法可以做到这一点,而且使用 'nix,您可以随时移动东西而不会有太大危险。真的,只要确保给窗口留出足够的空间,就没问题了。
希望这可以帮助