电脑技术学习

FreeBSD的硬盘分隔策略

dn001
在你开始安装以前, 你必须决定你要用多大的硬盘空间来装 FreeBSD, 而且必须决定你的 partition 应该如何分割. 因为一旦你装完了以後, 你想改变一个 partition 的大小就必须把资料备份出来再重新format.
基本上, 你必须准备一个 primary partition 给 FreeBSD, *BSD 传统上只能装在 primary 上. FreeBSD 已经过修改可以使用 logical, 但开机区还是必须是 primary. 以下的安装都假设你只使用一个 primary partition.

1. FreeBSD 如何看待一个 primary partition (slice) ?
FreeBSD 称呼 primary partition 叫 slice, 一个硬盘只能有四个slice, 而 FreeBSD 能把其中一个 slice 分成八个小分割区. 这些分割区称做 a,b,c,d,e,f,g,h, 对 FreeBSD 而言, c: 指那个slice 的全部大小, 因此 c: 是不能用的. 传统上的 BSD 的 a: b: c: 是有特殊意义的...
a : root partition
b : swap partition
c : 整个 BSD slice
d : 整个硬盘
e,f,g,h 则没有特殊意义可以任意使用.
但是在 2.0.5-RELEASE 以後, FreeBSD 发展新的 slice 观念, 使的只有 c 内定称为整个 BSD slice, a,b,d,e,f,g,h 都可以自由使用而没有限制. (但是一般还是遵循传统观念, a: root, b: swap
efgh: others) FreeBSD 把这些分割资讯储存在 BSD slice 中的 label 里, 下图是一个简易说明 : (假是你只使用两个 primary)

+-----------+
| MBR-table |
+-----------+ +---------+
| Slice 1 | -----> | MSDos |
+-----------+ +---------+
| Slice 2 |
+-----------+ +-------------------+
| Slice 3 | -----> | FreeBSD-disklabel |
+-----------+ +-------------------+ +-----------------+
| Slice 4 | | Partition A | -----> | Root-filesystem |
+-----------+ +-------------------+ +-----------------+
| Partition B | ---
+-------------------+ +----------------+
| Partition C | --> | swap-partition |
+-------------------+ +----------------+
| Partition D |
+-------------------+ +-----------------+
| Partition E | -----> | /home |
+-------------------+ +-----------------+

以 sd0 来说, Slice 1 就是 /dev/sd0s1, Slice 2 就是 sd0s2, 而上图的 Slice 3 是 BSD slice, 其中的区块就是 sd0s3a, sd0s3b 到 sd0s3h 等等. 不过要注意的是, 对於 非BSD 的 slice, 是没有 a,b,c,d 等等的, 如 Slice 1 是 DOS, 则 Slice 1 只有 sd0s1, 没有 sd0s1a, 因为 a,b,c,d 是 BSD label 自己定义的, 没有 label 的 slice 就没有 a,b,c,d.
如果你有 logical, 则他们会是 slice 5,6,7 (sd0s5,sd0s6,sd0s7)

硬盘分割策略 !!

策略一 (强烈建议) :
如果你是 FreeBSD 的新使用者, 我建议只把你的 BSD slice 分割成为两个区块, 一个是 a, 当做 root partition 放所有档案, 另一个是 b, 当做 swap. (当然 a 要够大, 比方说 150MB)

策略二 :
如果你有比较大的硬盘, 你可以割成较多的区块, 比方说 :
* partition-A : 100MB for / (含 /bin /sbin /etc /var kernel)
* partition-B : 32+MB for swap
* partition-G : 100MB for /usr/local and /usr/local/X11R6
* partition-H : ??MB for /home
这样分割的话你可以失去你的 partition-A 而不心疼, 因为重要资料跟自己的东西都在其他区块. 你甚至可以任意重新安装而不会毁坏 /home 跟 /usr/local (含 X11R6).

策略三 :
如过你想用 BSD 传统的分割法, 这是 diskspace.FAQ 中所建议的, 不过这些建议值都是安装大小, 你一定要再预留空间放你自己的东西.
/ 20Mb
/var 20Mb
/usr 50Mb
/usr/X11R6 50Mb

2. 在你决定你的 primary partition 要怎样分割後, 你可以开始安装了, 在你熟悉 FreeBSD 後, 你可以重装几次以取得你的最佳分割法.

3. 因为 FreeBSD 有根据 BSD 传统来放目录跟档案, 因此你应该把你自己的东西放在 /usr/local 下, 不要像 Linux 一样把东西到处乱丢. 如果你保持好习惯, 你在重新安装时, 或是更新版本时将会发现那是非常轻松的一件事, 而这却是 linux 使用者的一大梦靥.

标签: 硬盘