我曾遇到过许多由于 GRUB 损坏而导致数据丢失以及无法启动操作系统的问题,例如请参见我最近的事故: Grub 救援未知文件系统……最终的绝望
问题在于我想要一个稳定的可移植操作系统能够启动计算机多样化的硬件配置。到目前为止,在我 3 年左右的经验中,最好的是 Debian(确切地说是 Crunchbang)!它从未损坏过,并且提供了总体稳定的性能,尽管缺乏最新技术的整合,这让我期待 LTS Ubuntu 版本。
我想要的是具有稳定分区配置文件至少一个 NTFS 分区它将充当 Windows 和 *nix OS 之间的缓冲存储。我主要使用装在便携式外壳中的机械 2.5' 硬盘,因此我需要一个建议,以获得最佳的稳定分区配置文件以确保一致性
例如我的 Crunchbang 布局是:
Disk /dev/sdb: 31.4 GB, 31440961536 bytes
255 heads, 63 sectors/track, 3822 cylinders, total 61408128 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0007199b
Device Boot Start End Blocks Id System
/dev/sdb1 2048 42975231 21486592 7 HPFS/NTFS/exFAT
/dev/sdb2 * 42975232 60792831 8908800 83 Linux
/dev/sdb3 60792832 61407231 307200 82 Linux swap / Solaris
/dev/sdb1: LABEL="CRUNCH" UUID="0618C75418C74183" TYPE="ntfs"
/dev/sdb2: UUID="351b88b1-0c89-4ce2-ae29-3d2986f4c67f" TYPE="ext4"
/dev/sdb3: UUID="63aedc80-77c3-4ce4-9533-8bc3bd6496b9" TYPE="swap"
进一步说明:我的公司主要使用英特尔处理器,因此“硬件配置各异”,我的意思不是指只有 AMD 的英特尔 x32,而是包括 Pentium D 和 i7
答案1
您过去遇到的问题很可能不是由分区布局本身引起的。很可能是引导加载程序配置,而不是使用 UUID 来引用 fstab 中的分区。这些都是问题,但这些问题早已解决,我认为大多数现代发行版现在默认使用 UUID 来引用分区。
我只需从一块新的外部硬盘开始,安装 Ubuntu,然后在出现提示时手动对磁盘进行分区。在驱动器末尾留出空间用于 NTFS。
然后安装 Ubuntu。
稍后,您可以使用 gparted 在驱动器末尾创建一个 NTFS 卷以供在 Windows 中使用。
您稍后需要安装 ntfs-3g fuse 驱动程序才能在 ubuntu 下获得 ntfs 支持。
答案2
我推荐一种简单但实用的布局。
/dev/sdb1 - / - 20G - ext4 - 默认情况下只读挂载
/dev/sdb2 - /home - ext4 - 大量空间 - 读/写挂载
/dev/sdb3 - /media/fat - fat32 - 一些空间 - 读/写挂载
/dev/sdb4 - 交换 - 任何你需要的 -
在 /etc/fstab 中,只需将 / 挂载为只读,将 /home 挂载为读/写。更新会很麻烦,您需要重新挂载 / 读/写。也就是说,即使您拔出驱动器(仍然不推荐),它也会非常稳定。也就是说,您最终会得到一个 USB 磁盘,您可以从该磁盘(理论上)启动,其中包含整个操作系统,并且仍允许您从一台计算机移动到另一台计算机。
重要笔记:
- 您仍然需要进行备份。
- 如果在使用过程中拔出驱动器,/ 分区出现问题的可能性较小,但 /home 出现问题的可能性仍然很大。不过,您应该始终能够启动。
- 如果您愿意,我会选择 fat32 或 NTFS 来替换它,但如果您可以接受它的局限性,fat32 仍然更具便携性。
- 您可能想了解一下 Live CD 如何使用 ramdisk 来存储 /。这样您就可以临时写入 /,如果没有它,您将会遇到 /var 或 /tmp 等目录的问题。您可以使用 ramdisk /tmp,但 /var 会比较棘手。您可以为 /var 创建另一个分区,但 liveCD 样式选项会更好一些。
答案3
我不确定您在寻找什么,但我可以向您建议我所用的东西。
如果您正在运行 /sdb,我假设有一个类似大小的 /sda。您可以运行 RAID 1,它将在硬盘驱动器发生故障时备份您的数据。
如果您的计算机中没有内置第二块硬盘,您可以在百思买或其他电子商店购买便宜的外置硬盘。有了它,您仍然可以配置 Linux RAID,同时又具有便携性!
设置 raid 时,它将创建一个用作一个驱动器的分区,然后您可以将其分区以满足其他需求。
希望我能帮上忙!