- 論壇徽章:
- 0
|
Google上找了三天資料,終于實現(xiàn)免光驅(qū),免軟驅(qū),免U盤通過PXE遠程引導(dǎo)來安裝FreeBSD了,這種PXE遠
程引導(dǎo)安裝的方法非常適合沒有光驅(qū),軟驅(qū),甚至連U盤都沒有的管理人員。
第一步:
在Windows環(huán)境下載需要用于遠程引導(dǎo)安裝FreeBSD系統(tǒng)安裝的軟件
1.FreeBSD軟盤映象文件
映象文件名 (boot.flp,kern1.flp,kern2.flp,kern3.flp,mfsroot1.flp)
官方下載地址
ftp://ftp.cn.freebsd.org/pub/Fre ... 2-RELEASE/floppies/
2.用于引導(dǎo)FreeBSD軟盤映象文件的啟動文件
啟動文件名 pxelinux.0(在syslinux壓縮包里可以找到)
官方下載地址
http://www.kernel.org/pub/linux/utils/boot/syslinux/
3.用于Windows環(huán)境下的NFS服務(wù)器軟件
軟件名 Allegro NFS Server for Windows
官方下載地址
http://www.nfsforwindows.com/home
4.用于DHCP和TFTP服務(wù)的軟件
軟件名 tftpd32
官方下載地址
http://tftpd32.jounin.net/tftpd32_download.html
第二步:將FreeBSD軟盤映象文件為一個啟動文件(制作啟動文件要在FreeBSD環(huán)境下操作)
1.復(fù)制啟動文件boot.flp中的內(nèi)容到臨時文件夾boot_tmp下:
#mkdir /mnt/cd
#mdconfig -a -t vnode -f boot.flp -u 0
#mount /dev/md0 /mnt/cd
#mkdir boot_tmp
#cp -R /mnt/cd/* boot_tmp/
#umount /mnt/cd
#mdconfig -d -u 0
查看boot_tmp下的kernel.gz.split和mfsroot.gz.split這兩個文件,可以知道kernel.gz文件被分割成
了四個文件:kernel.gz.boot、kernel.gz.aa、kernel.gz.ab、kernel.gz.ac,而mfsroot.gz
被分割成了
mfsroot.gz.boot和mfsroot.gz.aa兩個文件,下面就是要把這幾個分割開的文件合并成一個磁盤映象文件
2.合并kernel.gz文件:
#mdconfig -a -t vnode -f kern1.flp -u 0
#mount /dev/md0 /mnt/cd
#cat /mnt/cd/kernel.gz.aa >> boot_tmp/kernel.gz.boot
#umount /mnt/cd
#mdconfig -d -u 0
#mdconfig -a -t vnode -f kern2.flp -u 0
#mount /dev/md0 /mnt/cd
#cat /mnt/cd/kernel.gz.ab >> boot_tmp/kernel.gz.boot
#umount /mnt/cd
#mdconfig -d -u 0
#mdconfig -a -t vnode -f kern3.flp -u 0
#mount /dev/md0 /mnt/cd
#cat /mnt/cd/kernel.gz.ac >> boot_tmp/kernel.gz.boot
#umount /mnt/cd
#mdconfig -d -u 0
#mv boot_tmp/kernel.gz.boot boot_tmp/kernel.gz
至此kernel.gz合并完畢
3.合并mfsroot.gz文件:
#mdconfig -a -t vnode -f mfsroot1.flp -u 0
#mount /dev/md0 /mnt/cd
#cat /mnt/cd/mfsroot.gz.aa >> boot_tmp/mfsroot.gz.boot
#umount /mnt/cd
#mdconfig -d -u 0
#mv boot_tmp/mfsroot.gz.boot boot_tmp/mfsroot.gz
至此mfsroot.gz合并完畢
4.另外還需要做額外一些工作:刪除無用的文件
#rm -f boot_tmp/{kernel,mfsroot}.gz.split
5.修改boot_tmp/boot/loader.conf文件,刪除含有"Insert floppy"的兩行
6.再把boot_tmp下的內(nèi)容打包成啟動文件:
#dd if=/dev/zero of=freebsd72 bs=1k count=6800
#mdconfig -a -t vnode -f freebsd72 -u 0
#disklabel -Bw /dev/md0
#newfs /dev/md0a
#mkdir /mnt/hd
#mount /dev/md0a /mnt/hd
#cp -R boot_tmp/* /mnt/hd
#umount /mnt/hd
#mdconfig -d -u 0
#gzip -9 freebsd72
7.將freebsd72用網(wǎng)絡(luò)或U盤拷到到Windows系統(tǒng)里
第三步:
1.配置tftpd32,開啟dhcp和tftp服務(wù),設(shè)置好網(wǎng)絡(luò)參數(shù),在啟動文件處填寫pxelinux.0
2.COPY下載的pxelinux.0和做好的freebsd72兩個文件到 tftpd32的根目錄
3.新建一個名為pxelinux.cfg的文件夾
4.在pxelinux.cfg文件夾里新建一個Default的文件
5.編輯Default文件,輸入以下內(nèi)容:
DEFAULT menu.c32
PROMPT 0
NOESCAPE 0
ALLOWOPTIONS 0
TIMEOUT 50
MENU TITLE My Boot Menu
# FreeBSD 7.2 Boot Floppy
LABEL FreeBSD 7.2 Boot Floppy
MENU Boot Floppy
KERNEL memdisk
APPEND initrd=freebsd72.gz
6.編輯好后保存
第四步:
1.安裝Allegro NFS Server for Windows
2.用虛擬光驅(qū)將FreeBSD光盤映象文件載入
3.啟動Allegro NFS Server for Windows,將虛擬的FreeBSD7.2光盤根目錄Mount成/export
第五步:
將需要安裝FreeBSD的機器設(shè)成PXE網(wǎng)絡(luò)啟動之后就會加載pxelinux.0這個文件,然后pxelinu.0就會把做好的FreeBSD啟動文
件下載到機器的內(nèi)存中執(zhí)行并成功進入FreeBSD的Sysinstall安裝界面,安裝方法基本和光驅(qū)安裝相同,不同之處在于要在安裝來源中選擇
NFS,并填上nfs server mount的FreeBSD目錄,然后就可以成功開始安裝了。
PS:附件為制作好的FreeBSD7.2的啟動文件
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/2389/showart_2049869.html |
|