第一篇只是簡單的塞了些東西在make.conf,根據手冊,編譯環境的設定還有兩個東西:
ls -FGg /etc/make.profile
檢查所使用的profile連結到哪種類型的預設,可以自行重新連結到喜歡的定義。
less /usr/portage/profiles/use.desc
將喜歡的USE標籤加入make.conf。
現在進入編譯核心的階段,你可以自行下載和新的版本程式碼,如
wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.1.tar.bz2
然後解開到/usr/src,並完成/usr/src/linux的習慣連結後,用土法煉鋼編譯核心即可
make menuconfig && make && make modules_install
cp .config /boot/config-2.6.17.1
cp System.map /boot/System.map-2.6.17.1
cp arch/i386/boot/bzImage /boot/kernel-2.6.17.1
這樣就完成核心編譯,並且將核心檔案塞進/boot。然後要決定哪些modules要在開機時載入:
find /lib/modules/
/ -type f -iname ‘*.o’ -or -iname ‘*.ko’
vi /etc/modules.autoload.d/kernel-2.6
設定開機後網路應由何種方式連線,通常是用dhcp取得
vi /etc/conf.d/net
config_eth0=( “dhcp” )
dhcp_eth0=”nodns nontp nonis”
emerge dhcpcd
接下來將這網路啟動加入內定啟動script
rc-update add net.eth0 default
修改系統的語系,要手動方式加入zh_TW:UTF-8
grep zh /usr/share/i18n/SUPPORTED >> /etc/locale.gen
vi /etc/locale.gen && locale-gen
接著修改建盤定義與時區
vi /etc/conf.d/keymaps
vi /etc/conf.d/clock
補完系統一些基礎服務(syslogd 與 cron)
emerge syslog-ng && rc-update add syslog-ng default
emerge vixie-cron && rc-update add vixie-cron default
接下來是決定能不能開機的重點
emerge grub && vi boot/grub/grub.conf
手冊中有使用genkernel的寫法(就是多了initramfs參數),如果是土法煉鋼,倒也就免了,因為是LPIC LEVEL1的內容,所以就不贅述,請man吧。
grep -v rootfs /proc/mounts | tee /etc/mtab
grub-install –no-floppy /dev/sdc1
vi /boot/grub/device.map
手冊上是這樣grub-install(當然詳細裝置不一定是/dev/sdc1,也有可能是sdb) ,只是最後我把/boot/device.map重新修改成目標機器上的預想狀況(當然不是用sd,而是hda),這樣才有信心開好機。
最後一個動作,設定密碼。不設定也可以啦,只是要進入單人模式重設就很蠢了(自己駭自己的機器,而且單純只是因為自己一時忘記)。
最後,離開,依序卸載所有檔案系統,就可以準備第一次開機了。
從Ubuntu作為操作環境chroot安裝Gentoo雖然不能使用mirrorselect工具,但是卻可以在熟悉的環境下完成工作,不失為Live CD外一種好方法。
沒有留言:
張貼留言