SDB:分区
![]() |
此頁面需要清理 因為他不遵循我們的 維基規範。 如果您想要貢獻,請務必要熟悉這些規範。如果您有任何問題,別猶豫,快 聯絡我們, 我們十分樂意能幫助您! :-) |
![]() |
這篇文章太簡略! 這篇文章需要擴充。歡迎您依循風格規範來幫忙擴充。 |
分区样板
标准
标准或完全主分区样板是最常见的样板,多数厂商也是这么分的。IBM 的分区样板中,主引导记录上的分区表有四条。主分区存储在主引导记录中。通常最好分出至少一个主分区用于引导系统。
扩展
扩展分区的信息存储在扩展分区引导记录描述里。每个扩展分区都有自己的描述,同其他扩展分区独立。扩展分区中的最大逻辑分区数只受限于可用磁盘空间数量。然而在早期 Windows 中,fdisk 受限于它能够指派的可用驱动器编号数。A 和 B 是预留的,C 是系统;因此最大逻辑分区数是 23,直到 Windows 引入了类 Unix 分区挂载模式才有所改观。
因此区分扩展分区和逻辑分区是非常重要的。扩展分区实际上是一类特殊主分区,它自身并不包含任何文件系统信息。它相反通常包含一个或多个逻辑分区(逻辑容易和扩展混淆,在有些情况下它们可以相互替代)。
LVM
这么使用 Linux 内核的逻辑卷管理器:您创建一个物理主分区或扩展分区(通常是扩展分区),然后在物理 LVM 分区中创建多个逻辑卷组或分区。LVM 比传统分区方式在很多方面都灵活;用户最感兴趣的特性列示如下:
- 卷组可以包括或跨越多个物理卷。
- 镜像/剥离整个或部分逻辑卷组 (和 RAID 1 或 0 很像)
- 创建逻辑卷的只读或读写快照(卷级别备份)
- 可以缩放在线卷组,通过吸收新的物理卷或通过弹出已有物理卷来实现。
- 可以缩放在线逻辑卷,通过串联内容到其中或从中截断来实现。
- 物理卷之间灵活的移动逻辑卷
在大多数情况下,除非这些特性对您有特殊意义,不然最好坚守标准主/扩展分区样板。
一个逻辑卷组包含一个或多个 LVM 分区(可以是主分区也可以是扩展分区,只要分区类型代码为 0x8E(LVM)。前者要求在 YaST 创建一个 LVG,这很容易就忘了,但一旦您记得做了,过程简直不可思议的简单。
那些熟悉微软的 LVM 实现(也叫做“动态磁盘阵列”)的人可能也注意到了,相比于要求将整个“基本”磁盘转换为“动态”磁盘,Linux 的 LVM 更灵活,采用修改分区引导记录的方式里实现。
实例
简单
设备 | 类型 | 大小 | 文件系统 | 挂载点 |
/dev/sda | - | 200gb | - | - |
/dev/sda1 | 主分区 | 100mb | EXT4 | /boot |
/dev/sda2 | 主分区 | 20gb | EXT4 | / |
/dev/sda3 | 主分区 | 178.49gb | EXT4 | /home |
/dev/sda4 | 主分区 | 1.5gb | Swap | swap |
需要注意的一件事就是您可以简单地只创建一个单一的 200gb 根 -- 或 “/” -- 分区,那也能正常工作(假设您有足够的内存来避免 swap 分区)。
这么做让人抨击的地方在于,例如,您一旦想要做一次全新的(重新)安装,您在格式化 /root 分区前没法备份任何东西,因为东西都在 /home 上。另一方面,如果 /home 在 root 分区上,这可能需要您在格式化根分区前先迁移 /home 到另一个物理卷。在这种情况下创建独立的 /boot 没什么必要,但通常这主意不错。
双启动/扩展分区
设备 | 类型 | 大小 | 文件系统 | 挂载点 |
/dev/sda | - | 200gb | - | - |
/dev/sda1 | 主分区 | 100gb | ntfs-3g | /windows/C |
/dev/sda2 | 主分区 | 100mb | EXT4 | /boot |
/dev/sda3 | 扩展分区 (主分区) | 20gb | - | - |
/dev/sda5 | 扩展分区 | 20gb | EXT4 | / |
/dev/sda6 | 扩展分区 | 78.49 GB | EXT4 | /home |
/dev/sda7 | 扩展分区 | 1.5gb | Swap | swap |
注意设备编号,尤其是 sda3.
本例中 /boot 距离磁盘开头有几个 GB。这通常不是一个好习惯,在一些情况下(旧的烂 BIOS 上)会导致系统没法引导;YaST 也会警告您。然后,在现代系统上,BIOS 依然能够找到引导分区,您不会感觉到任何不同。详情参考:en:SDB:Sandbox#Boot_Volume
将 /boot 从 /root 分区独立的好处在这儿就更加明显了。/boot 需要位于主分区(任何操作系统系统都要求这样)。这样的话,将 /root 放到主分区,/home 和 swap 放到扩展分区上可能就不太方便(但仍是可以的)。如果您还有一个厂商预装 Windows 常见的所谓预留的恢复分区的话,这就更有意义了。如果您有这样的一个系统,既有系统分区(包含 NTLDR)和一个恢复分区,那您就只剩一个主分区名额了,还是把它给 /boot 吧。
要是您只缩小您的 Windows 100mb 而不是 20+gb 来添加 /boot 分区,并将 /root 分区放到另一个物理卷上的话,可能会对您的 Windows 分区有微小的损害,因此最好尽量避免重新配置您的 BIOS 从二级光伏引导(原文,意思就是说不要把 /root 放得太靠后,不要和 /boot 离得太远)。
LVM
只有在您想要跨越多个物理卷来创建一个单分区时,创建 LVG 才有意义。我可以想到的最优越的分区样板就是您有一个小点的高速 SSD 和两块大机械硬盘。分区样板像下面这样:
设备 | 类型 | 大小 | 文件系统 | 挂载点 | Stripes |
/dev/sda | - | 4gb | - | - | - |
/dev/sda1 | 主分区 | 100mb | EXT4 | /boot | - |
/dev/sda1 | 主分区 | 3.9gb | Swap | swap | - |
/dev/sdb | - | 200gb | - | - | - |
/dev/sdb1 | LVM (主分区) | 200gb | - | - | - |
/dev/sdc | - | 200gb | - | - | - |
/dev/sdc1 | LVM (主分区) | 200gb | - | - | - |
/dev/lvg1 | LVG | 400gb | - | - | - |
/dev/lvg1/root | LV | 20gb | EXT4 | / | 2 |
/dev/lvg1/home | LV | 380gb | EXT4 | /home | 2 |
告诉 LVM 您想要在相同的两个物理卷上划分两个条带 lvg1/root 和 lvg1/home 这种事情只是轻微展示了一下 LLVM 的力量。
LVM 物理分区和扩展分区工作原理差不多,不直接包含任何文件系统信息。有趣的是这里不是在父节点上创建另一个设备,而是创建一个全新的节点结构:/dev/lvg1(您现实中可选择您想要的设备名,"lvg1"、"lvg1/root" 和 "lvg1/home" 的起名都太随意了。)
您不需要在没有使用 LVM 的物理卷上分出一个 /boot,下面这样分也是能用的:
设备 | 类型 | 大小 | 文件系统 | 挂载点 | 条带 |
/dev/sda | - | 200gb | - | - | - |
/dev/sda1 | 主分区 | 100mb | EXT4 | /boot | - |
/dev/sda2 | LVM (主分区) | 199.9gb | - | - | - |
/dev/sdb | - | 200gb | - | - | - |
/dev/sdb1 | LVM (主分区) | 200gb | - | - | - |
/dev/lvg1 | LVG | 399.9gb | - | - | - |
/dev/lvg1/root | LV | 20gb | EXT4 | / | 2 |
/dev/lvg1/home | LV | 379.8gb | EXT4 | /home | 2 |
解释:如果您想要多个条带,最好是让您的物理 LVM 分区大小一样。否则,最大的条带逻辑卷将被限制为逻辑卷组内最小的物理卷/分区的最大大小乘以卷组内物理卷/分区的数量。上述分区表就是这样的一个例子,lvg1 里有 100mb 就没用。如果 lvg1/home 或 lvg1/root 只有一个条带,那么逻辑卷的最大大小应该是 379.9gb 或 20.1gb。 lvg1/home 或 lvg1/root 都和任意磁盘的任意部分都不接近,但解释 LLVM 决定在哪存储哪些内容的真实原理远远超过了本文读者所能理解的范畴。
高级
引导卷
如果引导卷(磁盘上最靠前的物理卷)上已经有了另一个操作系统(Windows),您可能需要弄出 100MB 自由空间来创建一个 /boot 分区。然而,YaST 分区模块不支持那样子把分区移来移去,因此若您想要那么做,您可能需要使用更高级的工具如 en:SDB:Gparted。