現在 mfsBSD 已順利啟動,並且應該可以透過 ssh(1) 方式來連。 本節將介紹如何建立 slice 分割、設定 gmirror 以作 RAID-1、如何以 sysinstall 來安裝 FreeBSD 作業系統的最小化安裝。
首先要作的是配置硬碟空間給 FreeBSD,像是建立 slice 跟分割區。 很明顯地,目前在跑的作業系統是載入到系統記憶體內執行, 因此要對硬碟配置並無任何問題。 這些工作可以用 sysinstall 或者以 fdisk(8) 搭配 bsdlabel(8) 來完成。
首先先把各硬碟都先清空。 請對各硬碟作下列指令:
# dd if=/dev/zero of=/dev/ad0 count=2
接著,以您慣用的工具來建立 slice 以及設定 label。 通常會建議以 的 sysinstall 工具來作會比較輕鬆, 或者是強而又不太會出槌的文字介面 UNIX® 標準工具(像是 fdisk(8), bsdlabel(8)),這部分稍後也會一併介紹。 前者部分在 FreeBSD Handbook 的 安裝 FreeBSD 章節有相當詳盡的介紹,所以這邊主要要介紹的是如何建立 RAID-1 系統以及 ZFS。 這邊會介紹建立以 gmirror(8) 做成的小型 mirrored 檔案系統: / (根目錄), /usr 以及 /var,而硬碟的其餘剩餘空間則通通以 zpool(8) 做成 ZFS 的 mirrored 檔案系統 。 請注意:必須要先把 FreeBSD 作業系統裝好並開完機後,才能進行設定 ZFS 檔案系統。
下面的例子會介紹如何建立 slice 以及 label、在每個分割區上啟用 gmirror(8)、如何在每個 mirrored 分割區上建立 UFS2 檔案系統:
# fdisk -BI /dev/ad0 # fdisk -BI /dev/ad1 # bsdlabel -wB /dev/ad0s1 # bsdlabel -wB /dev/ad1s1 # bsdlabel -e /dev/ad0s1 # bsdlabel /dev/ad0s1 > /tmp/bsdlabel.txt && bsdlabel -R /dev/ad1s1 /tmp/bsdlabel.txt # gmirror label root /dev/ad[01]s1a # gmirror label var /dev/ad[01]s1d # gmirror label usr /dev/ad[01]s1e # gmirror label -F swap /dev/ad[01]s1b # newfs /dev/mirror/root # newfs /dev/mirror/var # newfs /dev/mirror/usr
-F
選項是用在 swap 上。 這參數會讓 gmirror(8)
認為該硬體是處於可靠狀態, 即使發生電源故障或系統當掉,也不會去同步。這裡是最重要的一環, 本節介紹實際上如何在先前一節所做好的硬碟安裝最小化的 FreeBSD, 為了完成此一目標,所有檔案系統都必須掛載妥當,才能讓 sysinstall 可以把 FreeBSD 裝到硬碟內:
# mount /dev/mirror/root /mnt # mkdir /mnt/var /mnt/usr # mount /dev/mirror/var /mnt/var # mount /dev/mirror/usr /mnt/usr
做完上述動作之後,請執行 sysinstall(8)。 請從主選單中選擇 安裝,選 按 Enter。 然後以方向鍵移動到 Install Root 處,按 Space 鍵然後改為 /mnt,再按 Enter 鍵以將修改值存起來,然後按 q 鍵即可離開這個 畫面。
警告請注意:本步驟極為重要,若忽略的話那麼 sysinstall 就沒辦法安裝 FreeBSD。
接著選 Minimal
處,按 Space 鍵。
本文之所以介紹最小化安裝是為了要節省網路流量,因為系統安裝是透過 ftp 方式來進行。 要離開本畫面,請選 Exit
即可。
注: 至於
及 步驟則可略過, 因為這些目前已經都設定完畢了。
在 FTP
。 請選最近的 mirror 站,並且讓 sysinstall 假設網路已經設妥。 接下來就會回到 選單。
最後,按下
即可開始進行安裝。 完成安裝後,即可離開 sysinstall。此時 FreeBSD 作業系統應該已經裝完,然而還有些後續流程要做。 必須要做一些後續設定,才能讓 FreeBSD 可以開機跟登入。
現在必須要用 chroot(8) 以切到剛剛新裝好的系統內。 指令如下:
# chroot /mnt
然後再打下列指令以繼續完成:
把 GENERIC kernel 複製到 /boot/kernel 目錄:
# cp -Rp /boot/GENERIC/* /boot/kernel
建立 /etc/rc.conf, /etc/resolv.conf 及 /etc/fstab 檔案。 別忘了,要記得在 /etc/rc.conf 檔設相關網路設定,以及把 sshd 啟用。 此外, /etc/fstab 檔應該會長像下面這樣:
# Device Mountpoint FStype Options Dump Pass# /dev/mirror/swap none swap sw 0 0 /dev/mirror/root / ufs rw 1 1 /dev/mirror/usr /usr ufs rw 2 2 /dev/mirror/var /var ufs rw 2 2 /dev/cd0 /cdrom cd9660 ro,noauto 0 0
新增 /boot/loader.conf 檔, 並且內容填入下列:
geom_mirror_load="YES" zfs_load="YES"
執行下列指令,以在下次開機時啟用 ZFS :
# echo 'zfs_enable="YES"' >> /etc/rc.conf
使用 adduser(8) 工具來新增其他使用者帳號。 別忘了, 至少要有一個帳號得加入 wheel 群組, 才能在重開機後以該帳號切換為 root。
再次檢查上述相關的設定,是否有遺漏或打錯。
現在該系統終於可以重開機了,請用 reboot(8) 指令以重開機。
本文及其他文件,可由此下載:ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/。
若有 FreeBSD 方面疑問,請先閱讀 FreeBSD 相關文件,如不能解決的話,再洽詢
<questions@FreeBSD.org>。
關於本文件的問題,請洽詢 <doc@FreeBSD.org>。