使用 SSD 和 HDD 存储进行双启动

使用 SSD 和 HDD 存储进行双启动

我目前有一个 1TB 的硬盘设置,用于双启动 Win7 和 Ubuntu 12.04。我正在购买一个 256GB 的 SSD 和另一个 1TB 的硬盘。我的意图如下:

  1. 将 SSD 设置为我的双启动设备,其中装有 Adob​​e CS6 和其他主要程序。
  2. 仅将我现有的 HDD 保留为存储。
  3. 安装新的 1TB HDD 作为内部备份。

是否有文章或指南涵盖以下内容:

  1. 备份所有分区
  2. 将所有分区迁移至启动 SSD
  3. 格式化和分区硬盘以方便 Win7 和 Ubuntu 的文件存储
  4. 将 Ubuntu 音乐、图片、文档和下载重新指向存储设备。我已经在 Windows 上完成了这项工作。
  5. 从备份恢复个人文件

我很清楚自己需要做什么,但我不想把迁移搞砸,因为它是我的工作机器。任何建议都将不胜感激。

答案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,您可以随时移动东西而不会有太大危险。真的,只要确保给窗口留出足够的空间,就没问题了。

希望这可以帮助

相关内容