使用者工具

網站工具


freebsd:world_kernel

這是本文件的舊版!


FreeBSD 6.2 RELEASE

做世界 BuildWorld

編譯環境的設定檔

複製 make 的設定檔(若檔案已經存在就不需要)。

# cp /usr/share/examples/etc/make.conf /etc/

修改 make.conf,新增 MASTER_SITE_BACKUP。

# CVSup update flags.  Edit SUPFILE settings to reflect whichever distribution
# file(s) you use on your site (see /usr/share/examples/cvsup/README for more
# information on CVSup and these files).  To use, do "make update" in /usr/src.
#
SUP_UPDATE=yes
#
SUP=            /usr/local/bin/csup
SUPFLAGS=       -g -L 2
SUPHOST=        cvsup.tw.FreeBSD.org
SUPFILE=        /usr/share/examples/cvsup/standard-supfile
PORTSSUPFILE=   /usr/share/examples/cvsup/ports-supfile
DOCSUPFILE=     /usr/share/examples/cvsup/doc-supfile
X11BASE=${LOCALBASE}

MASTER_SITE_BACKUP?= \
   ftp://freebsd.csie.ncu.edu.tw/distfiles/${DIST_SUBDIR}/ \
   ftp://freebsd.csie.nctu.edu.tw/pub/distfiles/${DIST_SUBDIR}/
MASTER_SITE_OVERRIDE?=    ${MASTER_SITE_BACKUP}

Download World Source Code

系統所需的程式原始碼,存放在 /usr/src/ 中。

# sysinstall
Configure -> Distributions -> src -> All

Upgrade Source Code

更新原始檔。

# cd /usr/src
# make update

Build World

編譯所有檔案。

make -j2 buildworld

刻核心 BuildKernel

修改核心設定檔

MYKERNEL 可以改成自己想要的核心名字。

# cd /usr/src/sys/i386/conf
# cp GENERIC MYKERNEL

將用不到的東西 mark 掉。

# vi MYKERNEL

Build Kernel

-j2 代表同時有兩個程式在執行,對於雙核心或多核心系統可減少編譯時間,四個核心可以用 -j5。

# cd /usr/src
# make -j2 buildkernel KERNCONF=MYKERNEL

安裝核心 Install Kernel

# make installkernel KERNCONF=MYKERNEL

將編譯過程中使用的檔案刪除:

# rm -rf /usr/obj/usr/src/sys/MYKERNEL

安裝世界 Install World

# make installworld

Mergemaster

把 /usr/src/etc 的東西跟 /etc 的東西更新。

# mergemaster

新世界

# sync;sync;sync;reboot

最後,祈禱沒出問題。 XD

freebsd/world_kernel.1186491824.txt.gz · 上一次變更: 2007/08/07 21:03 由 wenpei