FreeBSD硬盘分割策略

/ns/wz/sys/data/20020820033949.htm

在你开始安装以前, 你必须决定你要用多大的硬盘空间来装 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 使
用者的一大梦靥.