以 USB 安裝 FreeBSD [by chen]
FreeBSD:: 以 USB 安裝 FreeBSD
by thinker
—-
USB 容易取得
目前 FreeBSD 6.0 只提供對 1.44″ 軟碟和 CD 兮開機片,來裝 FreeBSD。不過, 1.44″ 兮磁片已經真少郎佇用,如 CD 開機片又無法多次使用,只是製造垃圾而已。USB 是一種方便的兮方法,USB disk 比 floppy 較簡單取得。
利用 FreeBSD CD 開機片
咱要用 USB 來安裝 FreeBSD,首先要做 USB 兮開機磁碟。但是 FreeBSD distribution 目前只提供, 1.44″ floppy 和 CD 開機片。咱只好改造 FreeBSD 兮開機片,改成可以放佇 USB disk。floopy 被分成三片,因為 kernel 兮 size 太大,無法擠入去一片 floppy 內,所以將 kernel 分割成三部分。若是用 floppy 兮開機片來改造,咱就要重新組合出 kernel。為著減少麻煩,咱是 CD 開機片來改造。
download CD 開機片
CD 開機片兮 image 放佇 FTP 兮 releases/i386/ISO-IMAGES/ 目錄下面。咱以 freebsd.nctu.edu.tw 兮 6.0 開機片為例,就放佇 ftp://freebsd.csie.nctu.edu.tw/pub/releases/i386/ISO-IMAGES/6.0/ 下面兮 6.0-RELEASE-i386-bootonly.iso 這個檔案。將之傳轉來,以 root 權限
mdconfig -a -t vnode -f 6.0-RELEASE-i386-bootonly.iso
將之當成 memory disk 使用 (mdconfig(8))。並將之以 cd9660 兮 type mount 起來;
mount -t cd9660 md0 mount_point_1/
假使 memory disk 是 md0,將之 mount 在 mount_point_1 這個目錄。
製作 USB disk 兮 image
假使汝兮 USB disk 總共有 524288 個 sector (heads * sectors/track * tracks/cylinder),那麼
dd if=/dev/zero of=USB-IMAGE bs=512 count=524288
將之當成 memory disk md1
mdconfig -a -t vnode -f USB-IMAGE
並使用 disklabel 割成單一個磁碟
disklabel -w -B /dev/md1 # -B 將 bootstrap code 寫入開機磁區
# (stage 1, stage 2)
disklabel -e -A /dev/md1 # 留下第一個 cylinder 第一個 track
# 其餘空間都給 partition a
譬如;
# size offset fstype [fsize bsize bps/cpg]
a: 524272 16 4.2BSD 512 4096 26664
c: 524288 0 unused 0 0 # “raw” part, don’t edit
接落來,作成 BSD 兮 filesystem;
newfs /dev/md1a
將之
mount /dev/md1a mount_point_2/
mount 在 mount_point_2 目錄。
copy 開機片兮內容
將 CD image 兮內容,對 mount_point_1 copy 到 mount_point_2
cp -Rp mount_point_1/ mount_point_2/
umount
將 CD image 和 USB disk 兮 image 攏 umount
mdconfig -d -u md0
mdconfig -d -u md1
umount mount_point_1
umount mount_point_2
傳到 USB disk 上
用 dd 將 USB-IMAGE 寫入 USB disk
dd if=USB-IMAGE of=/dev/ad0 bs=512
完成
用 USB 開機,開始網路安裝吧!
http://heaven.branda.to/~thinker/GinGin_CGI.py/show_id_doc/90