>使用freebsd-update進行安全性更新
FreeBSD 7.2-R upgrade to FreeBSD 7.2-R p2
這是一個比較快速更新的方式,他會視情況更新binary file與kernel,若有自訂kernel這方法則不適用。
- 首先先修改/etc/freebsd- update.conf,把update.FreeBSD.org改成update.tw.freebsd.org
- uname -a 會看見 FreeBSD 7.2-RELEASE #0 字樣。
- freebsd-update fetch -r 7.2-RELEASE (中斷、重開機、斷線不影響)
- freebsd-update install -r 7.2-RELEASE (若裝到一半斷線要進單人模式處理)
- reboot
- 可 uname -a 檢查是否更新成功。
使用buildworld進行安全性更新
- 修改/usr/local/etc/stable-supfile 把tag=RELENG_7改成 tag=RELENG_7_2
- cd /usr/src;make update (中斷、重開機、斷線不影響)
- rm -rf /usr/obj (刪除編譯後之暫存檔)
- make buildworld (/usr/src底下;中斷、重開機、斷線不影響)
- make kernel (中斷、重開機、斷線不影 響)
- make installworld (若裝到一半斷線要進單人模式處理)
- reboot
- mergemaster -U -i (按Enter並開始一個個(按i)merge,通常 password、group、master.password、./etc/csh.cshrc不需要merge(按Enter略過))
跨版號更新(7.1->7.2),或是大版本更新(7.0 -> 8.0)
FreeBSD 7.2-R upgrade to FreeBSD 8.0-R, 可以用freebsd-update,但建議用buildworld來做較為安全。
- 修改/usr/local/etc/stable-supfile 把tag=RELENG_7改成 tag=RELENG_8_0
- cd /usr/src;make update (中斷、重開機、斷線不影響)
- rm -rf /usr/obj
- make buildworld (中斷、重開機、斷線不影響)
- cp /usr/src/sys/i386/conf/GENERIC /usr/local/etc/FreeBSD 先把系統預設的kernel copy一份出來
- ln -s /usr/local/etc/FreeBSD /usr/src/sys/i386/conf/
- make kernel (中斷、重開機、斷線不影響)
- make installworld (若裝到一半斷線要進單人模式處理)
- reboot
- mergemaster -U -i (通常 pam.d/passwd、group、rc.firewall、csh.cshrc、master.passwd不需要merge)
- portupgrade -af (因跨版號更新,要重新編譯所有 ports,pkg_delete -a整個移掉也行)