利用Freesbie制作FreeBSD livecd (2008/1/20)[zt]
沒有使用FreeBSD里ports里的Freesbie, 完全自己手工操作,資料參考自
http://freebie.miraclenet.co.th/server/fwCD/index.html
修正了原文的兩處錯誤,一切實踐過程都在Vmware里進行, 這樣方便反復操作.
先安裝一個最基本的FreeBSD 7, 然后安裝ports, 跟著
在 /usr/ports/sysutils/cdrtools/
#make install clean
安裝后會有mkisofs命令了., 然后reboot機器,再繼續以下操作.
新建目錄
#mkdir /usr/livecd
新建文件
#ee /usr/livecd/extfile
輸入
/usr/livecd
/usr/ports
退出保存
#cd /usr/livecd
#tar -X /usr/livecd/extfile -c -p -v -f - / | tar xpf -
#mkdir /usr/livecd/usr/ports
修改livecd目錄的內容
刪除dev內容,
#rm /usr/livecd/dev/*
因為這些內容在系統啟動時會根據devfs自動生成;
刪除tmp,
rm -r /usr/livecd/tmp/
備份var
#mv /usr/livecd/var /usr/livecd/var.copy
#mkdir /usr/livecd/var
該var目錄將掛載內存設備,制造可寫入環境;
清除/usr/livecd/etc/fstab文件的所有內容,這樣,當livecd啟動加載完內核后,需要手工輸入掛載根分區的位置.
方法是在fstab文件中加入一行:
/dev/acd0 / cd9660 r 0 0
去掉開機選項畫面:#vi /livecd/boot/loader.rc,注釋掉最后一行,并新增一行,寫入
boot
制作livecd的寫入環境
首先備份文件
#mkdir /usr/livecd/mkbsd
#cp /usr/livecd/etc/rc /usr/livecd/mkbsd/rc.copy
ee /usr/livecd/etc/rc
在export HOME PATH這行插多一行,
/sbin/mdmfs -s 2m md /tmp
/sbin/mdmfs -s 32m md /var
cp -R /var.copy/* /var
利用mfs可寫的特征,可以根據自己情況改變參數,掛載的是內存設備, 2m和32m可以增大,看機器內存自定義.
跟著
制作ISO文件
#cd /usr/livecd
#mkisofs -l -R -no-emul-boot -b boot/cdboot -o /usr/livecd.iso /usr/livecd
這個按Freebsd最小化安裝后制作出來的ISO文件大概278M左近, 至于怎樣從Vmware虛擬機拿出來,可以用 winscp 登錄freebsd然后copy出來,但筆者沒有裝ssh的服務,于是在本機裝了個簡單的ftp服務器, 然后在虛擬機里用fto命令上傳出來, 192.168.0.10是我部機的IP, 在本機的Vmware主機的IP是192.168.0.9, 命令是
ftp 192.168.0.10
輸入用戶名和密碼,然后
put /usr/livecd.iso d:\livecd.iso
quit
跟著就可以在vmware虛擬機掛上iso測試了.
278M左近,大概大了點吧,那可以精簡一下內核.
cp -R -p /usr/livecd/boot/kernel /usr/livecd/boot/kernel2
cd /usr/livecd/boot/kernel
rm *
cd /usr/livecd/boot/kernel2
gzip -9 *
cp /usr/livecd/boot/kernel2/*acpi* /usr/livecd/boot/kernel
cp /usr/livecd/boot/kernel2/kernel* /usr/livecd/boot/kernel
rm -r /usr/livecd/boot/kernel2/
這樣應該可以到200M左近了, 其實可以在減的., 例如刪調以下的
rm /usr/livecd/usr/include
rm /usr/livecd/usr/local/include
這樣可以減低10M左近吧.
精簡又是一個話題,不說了, 不過最后我成功的精簡到128M, 但在freebsdchina.org看見有人精簡到12M,厲害啊.
以上是我的制作Freebsd livecd的過程,全部基于Freebsd 7.0操作, 記錄下來,以后會有用.
[color="#02368d"]利用Freesbie制作FreeBSD livecd (2008/1/20)
利用Freesbie制作FreeBSD livecd 小結
杜比環繞聲
利用freesbie制作FreeBSD livecd,首先要搭建一個制作平臺。對于制作FreeBSD 7.0 rc1加上kde桌面環境的livecd,要做的準備工作是:
1、在真實主機或虛擬機中安裝FreeBSD 7.0,并且要把ports和src都安裝到系統中。
2、
安裝所需要的軟件包,packages和ports方式都行,xorg
7.3,kde-lite,cdrtools,freesbie是必須的。安裝kde-lite為的是更好的控制系統所占空間,應用軟件按需安裝,
cdrtools是制作iso光盤鏡像必須的工具,freesbie只能用ports安裝方式安裝,是一些腳本。
3、安裝要集成進livecd的軟件包,中文字體、輸入法以及本地化包是必須的。freesbie在定制集成軟件包時,會根據系統登記注冊的軟件包來拷貝這些文件。
4、測試用vmware虛擬機,用于livecd測試
制作方法:
1、進入到freesbie的安裝目錄,默認是 /usr/local/share/freesbie
2、與網絡上以前的資料不同,freesbie不再提供freesbie.sh腳本了,而采用的是Makefile的方式,在freesbie安裝目錄下,會看到一個Makefile文件
3、
最簡單的制作方法是輸入: make iso ,freesbie會按照buildworld,buildkernel,
installworld,installworld,pkginstall,extra,clone和最后的iso等過程,這個過程的時間和所選定的功
能模塊的多少有關,一個500M左右的光盤,全過程大致需要3個小時左右!
制作livecd的一些小經驗:
1、默認的freesbie內核配置文件對于freebsd 7是不合適的,不修改的話編譯內核也無法通過。
2、freesbie制作腳本有很高的定制性,因此在定制前最好熟悉一下整個腳本
3、freesbie制作livecd也有很強的控制性,完全可以分階段來制作livecd
4、make buildworld ,這個過程和freebsd的buildworld是一樣的,make參數可以通過make.conf來進行控制
5、make buildkernel,這個過程也和freebsd的buildkernel類似,不多說
6、make installworld和installkernel,如果上面的build過程順利,installworld會把freebsd的系統程序安裝到 /usr/local/freesbie-fs 目錄下,內核也是一樣!
7、
make pkginstall,這個過程是安裝軟件包,在這之前可以用make
pkgselect選擇要集成的軟件包,選擇好的軟件包會記錄在freesbie安裝目錄的conf子目錄下的packages中,pkginstall
會根據這個文本文件拷貝建立平臺安裝好的各種文件到 /usr/local/freesbie-fs中。
8、make extra,這一步非常關鍵,它涉及到各種內存映像的生成和運行腳本拷貝設定,livecd是否成功,關鍵在這一步,而且里面涉及很多領域,這里不詳述,后面單獨說。
9、make clonefs,這一步是克隆,分析前面的設定和 freesbie-fs的內容,進行uzip壓縮
10、make iso,制作iso文件!
轉載自:http://blog.chinaunix.net/u/12258/showart_468133.html
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/21862/showart_500733.html
轉載于:https://blog.51cto.com/axlrose/1289006
總結
以上是生活随笔為你收集整理的利用Freesbie制作FreeBSD livecd (2008/1/20)[zt]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 道路基金救助是什么
- 下一篇: 核心资本和附属资本的区别