2008年7月16日 星期三

從Ubuntu安裝Gentoo 筆記2

第一篇只是簡單的塞了些東西在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外一種好方法。

沒有留言: