如果您不想自己編譯(make world)來升級,您可以利用筆者預先整理好的
版本來升級,不過筆者只置入從 2.2-970801-RELENG 到 2.2.5R 之間有
修正的檔案(src-2.2 CTM #0488),因此沒有自行 make world 來得完整,
不過也應該足夠了。
1. 取回升級用的檔案,約 15MB 左右
a) $ mkdir /tmp/sp1
b) $ cd /tmp/sp1
c) $ /usr/bin/ftp freebsd.csie.nctu.edu.tw
ftp> cd /pub/jdli/book/jdli-225-sp1
ftp> bin
ftp> hash
ftp> prompt
ftp> mget *
ftp> bye
2. 加入新的群組及虛擬帳號
a) $ ee /etc/group
加入 network:*:69:
b) $ vipw
加入 pop:*:68:6::0:0:Post Office Owner:/nonexistent:/nonexistent
3. 更新您的 kernel source
a) 置入本書的光碟片到光碟機中
b) $ mount /cdrom
c) $ /bin/rm -rf /usr/src/sys
d) $ cd /cdrom/dists/src
e) $ sh install.sh ssys
f) $ cd /usr/src
g) $ zcat /tmp/sp1/sys.diff.gz | patch -p0
4. 更新您的主系統檔案
a) $ cd /
b) $ chflags -R noschg /bin /sbin /usr/bin /usr/sbin /usr/lib
c) $ cat /tmp/sp1/sp1.tgz.?? | gunzip | tar --unlink -xvspf -
5. 修正檔案及目錄的權限
a) $ mtree -deU -f /etc/mtree/BSD.root.dist -p /
b) $ mtree -deU -f /etc/mtree/BSD.usr.dist -p /usr
c) $ mtree -deU -f /etc/mtree/BSD.var.dist -p /var
d) $ mtree -deU -f /etc/mtree/BSD.include.dist -p /usr/include
6. 修改 /sec/sendmail.cf,由於筆者製作 sendmail 時將 sendmail 的
MIME8TO7=MIME7TO8=0,所以必須拿掉這個設定
$ ee /etc/sendmail.cf
把 O EightBitMode=pass8 改成 #O EightBitMode=pass8 (加井號)
7. 編譯一個新的 kernel (如果您的舊 kernel 有 patch 過 Bus Master
IDE 或 PnP 等等的功能,記得用新的 kernel source 再 patch 一次)