如果你已經安裝過二種以上不同的 Linux 套件, 而且你一直處在不知為就安裝好 Linux 而想去了解它的話, 那麼請繼續看下去囉!!
  1. http://www.gentoo.org/doc/build.html (此為原網站上的安裝說明)
  2. 安裝光碟的 iso 檔, 請到 http://www.ibiblio.org/gentoo/releases/build/
  3. 在 iX86 平台下, 有兩個 iso 檔,
  • 一個是 gentoo-ix86-1.2.iso 大小約 16MB,
  • 一個是 gentoo-i686-1.2.iso, 約有 130MB , 給 i686 的這個 iso 檔, 做成 CD 後, 裡面還會包含有 i686 主系統及 3 個 stage 的 tbz2 檔 (tar.bzip2)
基本說明:
  • 使用 VMware 3.2 WorkStation 做為測試用主機平台
  • 使用 Gentoo Linux 1.2 版,
    本例以 i686 的 iso 檔做為測試
1. 安裝開始

首先將電腦設定為 BIOS 為光碟優先開機(如何設定不詳述), 在光碟開機後, 畫面如左圖原網站說明, 你必須擁有 486 以上的機器, 且有 64MB的實體記憶體, 最好再加個 64MB的 swap 來用, 當然執行的速度..., 呵呵∼ -_-!

2. 系統偵測

須要注意的是 網卡 硬碟 的相關設定, 若是使用 SCSI 的硬碟(VMware可設定虛擬系統是 SCSI 或 IDE 的硬碟), 在之後模組的載入須特別注意系統會偵測你主機的各項設備(因為是利用 VMware 的虛擬機器, 所以有些東西會不太一樣, 有些則會跟你的硬體是相同的, 如音效卡, 網路卡等) 我的網路環境為 中華電信的 Hi-Building, 是使用私有 IP, 網卡是 AMD 的 PCnet32

3. 鍵盤使用的語系

偵測過程會有一步驟問你的鍵盤使用的語系, 一般我們使用的都是不用輸入, 直接按 Enter 即可

4. 偵測繼續

此時電腦所偵測到的網卡正確, 並使用 pcnet32 網卡模組

5. 偵測結束後

電腦會告訴你, 在這次的偵測中, 找到的硬體有哪些, 在本例中, 我們找到了

  1. pcnet32(網卡),
  2. mii(與 pcnet32 併用),
  3. BusLogic 的 SCSI 卡(這是 VMware 軟體所提供的 SCSI 介面卡),
  4. scsi_mod(用以驅動 SCSI 介面)
6. 歡迎畫面

很少看到 Linux 這麼快就要你開始 DIY 吧! 請按一下 Enter 以啟用主控台 (Console) 的操作, 並且跟你說你可以用的指令有哪些... 此時若按 [ALT + F2][Alt + F3] 你可以切換到另外的主控台去操作 .

7. 顯示已載入的模組

剛剛在偵測過程中順利找到的硬體, 你現在可以下 lsmod 來觀看已經載入啟用的模組有哪些

8. 加載模組

雖然已經順利找到網卡, 模組也載入了, 不過尚未啟用, 所以我們輸入 ifconfig 時, 只看到 lo 的網路設備, 還沒看到 eth0, 此時我們先載入其他模組 因為燒錄機是在 SCSI 上的, 為了在 VMware 的 SCSI 卡下可以使用該燒錄機, 我們須先載入相關的模組

  • modprobe sr_mod (用來偵測 SCSI 光碟設備)
  • modprobe sd_mod (用來偵測 SCSI 硬碟設備, 不過我在使用 VMware 時並不是用虛擬的 SCSI 硬碟, 而是用 IDE 硬碟, 所以這個步驟其實是多餘的)

我們在這裡找到了 SCSI 光碟 (即燒錄機), 並且得到了相關資訊

9. 依序加入須要的其他模組

若你有其他模組想要加載的話, 同樣地我們一樣可以使用 modprobe 來加載

  • modprobe nls_big5 (會連同 nls_cp950 一併載入)
  • modprobe vfat (若你的系統在這時候需要 VFAT 檔案格式的話, 當然 NTFS 也可以在此時載入, 請參照左圖)

若你有興趣看看有哪些模組的話可以到 /lib/modules/2.4.19-gentool-r7/kernel/ 的目錄下看看有哪些可以用 (當然, 像我去看了也沒用...), 此時, [Alt + F2] 就很好用了, 不會打亂安裝的行程

10. 使用 DHCP 取得 IP

若是網卡順利偵測到了, 那麼要啟用它的方法就是 dhcpcd eth0 即可啟用你的網路卡, 現在下 ifconfig -a 的指令, 馬上就可以看到 eth0 已載入 再來是編輯 /etc/resolv.conf 這個網路解析檔案, Gentoo 使用 nano (跟 pico 非常類似) 做為編輯程式 nano /etc/resolv.conf 並且在該檔裡面輸入

  • domain myhome.idv.tw (你自己的網域, 嘿, 我說是網域哦)
  • nameserver 168.95.192.1 (DNS 伺服器位址)
  • nameserver 168.95.1.1 (DNS 伺服器位址, 怕不夠用再加一個吧)
  • search hinet.net (將會搜尋的網域, 比如你輸入www, 他會自動再去接 hinet.net)
11. 確實上網了

也可以開始 ping 其他的主機了 (如果有連上網路的話), 你將可以看到網路主機的回應

12. 分割硬碟

Gentoo Linux 提供了最基本的硬碟分割軟體 fdisk (雖然名字跟微軟巧合地一樣, 不過功能及操作完全不同) 輸入 fdisk /dev/hda (若是 SCSI 硬碟, 便是 /dev/sda, 你得先 dmesg | more 看一下你的硬碟是哪一種的)

(承上) 你可以輸入 m 來查看可用的命令有哪些
  • a: 切換開機表的標號
  • b: 編輯 BSD 系統的磁碟標籤
  • c: 切換 DOS 相容性的標號
  • d: 刪除一個分割區
  • l : 列出已知的分割區型式
  • m: 嗯, 你現在看的就是按這鍵出來的
  • n: 增加一個新的分割區
  • o: 建立一個新的 DOS 分割區表格
  • p: 列出分割區的表格(即這個硬碟的分割狀況)
  • q: 所有做過的分割設定都不要了, 而且馬上離開這個程式
  • s: 增加一個新的 SUN 磁碟標籤
  • t: 改變分割區的 id, 但不改變其分割型式(只是改變 id, 實質上不變動分割區的內容)
  • u: 改變顯示狀況
  • v: 確認一下某個分割區表格
  • w: 若做過分割區設定, 寫進磁碟裡, 順便離開這個煩人的程式
  • x: 我勸你是不要用這個比較好...

Gentoo Linux 安裝說明是建議我們至少做出 /boot, /, swap, 才方便進行安裝, 分割的規畫就不在這詳述, 請依自己的需求來分割! (嗯, 要想清楚!!)

13. 第一刀

先建立一個 主要(Primary)分割區, 並放置於第一個 (將會建立成 /dev/hda1), 輸入 n 吧! 再來會問你, 這個分割區的起始位置, 預設是整顆硬碟的最開頭, 所以直接按 Enter 可以接受他給你的預設值, 接下來是問你這個分割區要多大? 你可以用 +60M 表示要 60MB 的大小 再按一下 Enter 就開始執行分割了輸入 P 你就可以看到已經預割好一塊 Linux (/dev/hda1) 的分割區了, 大小約 64MB

13. 可以標示為哪些分割區

因為在格式化之前, 須先指定該分割區是什麼格式的, 在 fdisk 裡若沒有特別指定, 會先指定為 linux 分割區的 id若想要換成別的分割區, 你可以先割好一塊 Linux 分割區後, 輸入 t , 會問你要用哪一種分割區, 若不知道有哪些可供選擇, 那 可以再輸入 l (小寫的 L), 此時會有列表給你看, 比方輸入 82, 就可以把你要切換 id 的分割區由原來的 Linux 分割區換成 Linux swap 了

14. 若你需要的實在很多...

假若你需要的不只四個分割區, 那麼只好動用 Extended 區囉, 割完三個 主分割區後, 再把第四個分割區設給 extended, 不要再設為 primary partition 了, 而且剩下的空間全設給 extended (都要用 extended 了, 還留空間給誰, 第五個主分割區? 別鬧了, 孩子)有了, extended 後, 以後建立新分割區時, 就直接問你要從哪兒開始, 要多大, 不會再問你是要割 primary 或是extended 了左圖是我的分割狀況, 確認可以之後, 輸入 w 來確定寫入硬碟的分割記錄表裡

15. 執行格式化

有了分割區之後, 下一步便是要格式化這些分割區, 至於要格式化成什麼格式由你自己來選擇本例是格式化成 ext3, 使用

# mke2fs -j /dev/hda1

若不加 -j 參數的話, 則會格式化成 ext2, 因為 -j 是表示日誌式的格式, 也就是原 ext2 加上日誌功能 = ext3依序完成其他 linux 分割區的格式化, 至於 linux swap 則不用去格式化它 左圖是格式化之後的相關資訊

16. 掛載分割區

因為第一次安裝, 須改變目前所擁有的 / (現在的根目錄是安裝時期暫時預設的, 並非是我們到時候要真正運用的), 所以我們在這時候"假裝" /mnt/gentoo 是我們的根目錄, 我們須要先 mkdir 出相關的目錄進入點

  1. mkdir /mnt/gentoo
  2. mount /dev/hda3 /mnt/gentoo
  3. mkdir /mnt/gentoo/boot
  4. mount /dev/hda1 /mnt/gentoo/boot
要說明的是, 你必須先把我們的未來真正根目錄 (/mnt/gentoo) 先掛載起來,
而不是依 /dev/hd? 的號碼順序去掛載, 這樣會產生錯誤

若你先 mkdir /mnt/gentoo, 也 mkdir /mnt/gentoo/boot (到這裡操作上沒問題),
結果你先把 /dev/hda1 掛在 /mnt/gentoo/boot, 再把 /dev/hda3 掛在 /mnt/gentoo,
由於掛載的順序, 會造成 /mnt/gentoo/boot 原先掛載的分割區被後來的 /dev/hda3 分割區給蓋了過去
(正確說來, 是 /dev/hda1 的 /boot, 不是掛在/dev/hda3 的 /mnt/gentoo 裡面),
雖然表面上看來都一樣沒問題, 執行 mount 去看也沒錯, 都掛上來了,
可是到時要做開機資料時, 資料會寫到 /dev/hda3 下的 /mnt/gentoo/boot ,
而非 /dev/hda1 所掛載上去的 /mnt/gentoo/boot 目錄, 這點要注意到

其他的分割區, /dev/hda5, /dev/hda6, /dev/hda7
也必須先把我們的假根目錄 /mnt/gentoo 先掛進來, 才能再繼續掛載進來

再來是 swap 的建立與設置 mkswap /dev/hda2
(告訴系統 /dev/hda2 要做 swap 分割區)

# swapon /dev/hda2 (告訴系統開啟 swap, 並啟用它)
# mount /dev/hdc /mnt/cdrom -o -ro -t iso 9660 (掛上光碟來安裝吧)
# ls /mnt/cdrom
(在光碟裡掛載後, 你應該可以看到 stage???.tbz2 之類的檔案)
然後先切換到 /mnt/gentoo, 也就是你將來的根目錄,

輸入 tar -xvjpf /mnt/cdrom/stage?-*.tgz2
(Gentoo 網站說, stage3 是為 i686的機器做過最佳化設定,
絕大多數的檔案及設定都已經幫你完成了, 小弟人懶, 又剛好有 i686 的機器, 所以選了 stage3 來省去麻煩)

然後會將該檔解到 /mnt/gentoo 下, 要是你的現行目錄還在 /mnt/cdrom, 就會出現無法寫入的問題
若你選用了 stage3 這個 tar ball, 在你完成這個解檔程序後你就可以看到你目前的"根目錄" /mnt/gentoo 已經包含了所有預先最佳化給 i686 的目錄結構了, 而且因為其包含了新版的 2.4.19-rc5 的核心原始碼及 port目錄, 故之後的 emerge rsync 可以忽略不做 (要是不放心, 做一下也好啦)

# mount -o bind /proc /mnt/gentoo/proc
# cp /etc/resolv/conf /mnt/gentoo/etc/resolv/conf
(把我們剛剛在網路設定時編寫的檔案寫過去)
# chroot /mnt/gentoo /bin/bash
# env-update
# source /etc/profile

(給 bash 的基本設定)好啦, 現在我們已經 "假裝" 在我們自設的 /mnt/gentoo 裡面囉 所以我們就直接來設定時區吧, 先設個連結檔, ln -sf /usr/share/zoneinfo/path/to/timezonefile /etc/localtime (這是網站安裝說明的寫法, 不要照抄)
# ln -sf /usr/sahre/zoneinfo/Asia/Taipei /etc/localtime
(這是連結到 Asia/Taiepi 時區的)那個 -sfs 是象徵性連結, f 是強制, 表示若原地方已有檔案, 就直接蓋過去!! 夠狠!! )

17.核心 及 系統記錄

重編核心若你不是用 stage3 來安裝的話, 你必須要合併核心原始檔合併核心原始檔案, 有五個選擇emerge sys-kernel/gentoo-sources

  • 若你用了 stage3 的話, 就直接來吧
  • cd /usr/src/linux/
  • make menuconfig (完成核心的各項選定後) make dep (等待....)
  • make clean
  • make bzImage (等待....)

結束後會有數列訊息, 大約是說你編譯後的狀況, 如核心的大小

  • make modules (等待....)
  • make modules_install
  • cp /usr/src/linux/arch/i386/boot/bzImage /boot/ (把編譯出來的核心檔 bzImage 複製到 /boot 裡)
系統記錄 sys-logged
  • emerge sys-apps/sysklogd
  • rc-update add sysklogd default
    ( 製作 cron 程序)
  • emerge sys-apps/dcron
  • crontab /etc/crontab

若你有其他的軟體要現在安裝的話, 你可以 emerge sys-apps/XXXX (軟體名稱), 不過你得知道要裝什麼東西及該軟體的名稱, 還有, 不是每個軟體都在 sys-apps 裡的...

你可以到 /usr/postage 目錄下, 你會看到許多的分類目錄, 每個分類目錄下面還會細分類目錄, 再下去才是軟體...(好險我是學圖書館的, 不然這麼多分類, 不如叫我去吃..., 呃, 不要說髒話比較好!)

18.編輯 /etc/fstab

請參照左圖 (不過我建議你得先上網或看書一下, 了解 fstab 該怎麼編寫才好)

# passwd (幫 root 設密碼)過程中可能會出現錯誤訊息警告, 可以繼續下去不用理會

19.編輯 /etc/hostname

寫入本台主機完整網路名稱 編輯 /etc/hosts 寫入各電腦的名稱 (IP 名稱)

# nano -w /etc/conf.d/netrc-update add net.eth0 default

20.nano -w /etc/rc.conf (照 rc.conf 這個檔的內文解釋來編輯)

# nano /etc/conf.d/local.start

填上
# hdparm -d1 /dev/hda (將DMA 打開)
# hdparm -c3 /dev/hda
(啟用同步 32bit I/O存取)這個將可開啟 IDE 硬碟的 DMA 存取模式, 但若你的是 SCSI 硬碟, 那可真說是一點屁用也沒有 @_@

安裝 grub (請輸入 grub)

grub> root (hd0,0)
grub> setup (hd0)
grub> quit

21. 如果你的 grub 安裝畫面結跟左邊的不一樣, 沒有出現 succeeded (關鍵字!!), 那麻煩你檢查一下, 你是不是有掛載磁區錯誤的情況 在你做完這一步之後, 請輸入 exit, 因為之前我們不是 chroot 嗎, 所以要回到安裝時期的預設根目錄, 並且把 mount 進來的 /mnt/gentoo, 及其下的目錄全部 umount 掉, 別忘了, /usr 是掛在 / 下面的, 所以, umount 的次序別搞錯了, 會一直 umount 不掉哦!! 好吧, 輸入 reboot 吧!!
22.woo ∼∼

有沒有超感動啊?好啦, 系統安裝的部分, 就先這樣啦, 這兩天為了 KDE 安裝, 竟然可以花去我 20個小時的 make 時間...,一玩別的遊戲, make 的動作就更慢了 (誰叫我用 VMware, 是偷別人家系統的資源嘛), 其他軟體安裝的圖我先放上來, 內文先不寫了, 好累 好啦, 系統裝完啦, 那麼剩下的就是...嘿, 放假去玩啦!! 我要去綠島啦!! 辛克樂颱風給我滾遠一點 !!

  回到本頁最上端 | 回到騎士團首頁