核心編譯與升級
轉自:http://lrc.hklpg.org/download.php?sess=0&id=135&parent=19
譯自:http://www.hklpg.org/~vfong/course/admin.kernel.html
核心編譯與升級
這是 Unix 或其他作業系統最重要的部分,負責資源分配、低層次的硬件介面、保安等。
Linux 核心可以獨立重新安裝或升級,通常在 Linux 系統中可以有多於一個核心存在,在啟動時 (LILO) 可以選擇核心。
由於硬件和系統模組 (驅動程式) 大多數是核心的一部分,因此可以將核心重新編譯,來啟動一些硬件驅動程式設定。如果在設定核心時選取了這個選項,它會融入核心,或編譯為核心模組,在偵測到正確的模組名稱時就能啟用。
編譯步驟:
1. 下載核心源程式碼 tarball
- 可在這兒找到:http://www.kernel.org
2. 將 tarball 放在以下目錄:
- cd /usr/src
3. 檢查 "linux" 是否連結
- 如果是,請將它移除:rm linux
- 或將它改名為核心和版本號碼:mv linux linux-2.x.x
4. 將源程式碼 tarball 解壓
- tar fzvxh /location/of/kernel/tarball
5. cd linux
6. 設定及編譯
確定您在 linux 源程式碼目錄中的最頂,當您輸入 'ls' 指令時會顯示以下檔案:
COPYING Makefile arch/ include/ lib/
CREDITS README config init/ mm/
Documentation/ REPORTING-BUGS drivers/ ipc/ net/
MAINTAINERS Rules.make fs/ kernel/ scripts/
make mrproper
- 首次啟用源程式碼目錄和設定檔案
make xconfig 或 make menuconfig
- 按您的需要或硬件,選擇所需的選項
- 核心選項的文件可在這兒找到:
/usr/src/linux/Documentation/Configure.help
make dep
- 建立已選取的選項和模組的所有相依性
make clean
- 清理所有二進元和物件檔案
make bzImage
- 編譯核心檔案,並包裝為 gzip 格式
- 最後的影像檔會建立於:
/usr/src/linux/arch/i386/boot/bzImage
make install
- 在 /boot 目錄安裝核心影像檔和符號地圖 (symbol map)
make modules
- 將選取的所有模組製成 (M)odule
- 基本上大部分都是硬件驅動程式和系統模組
make modules_install
- 安裝所有模組物件檔案
- 模組會被複製至 /lib/modules/2.4.x.x
7. 按 /boot 目錄中的新核心影像,查看/修改 /etc/lilo.conf
- 可能其中一個檔案叫 vmlinuz-2.4.4 (您下載的版本)
8. 重新安裝 LILO
- lilo -v
9. 將現有的選項設定備份
- cp /usr/src/linux/.config /usr/src/config-2.4.x
完成編譯和安裝後,如果想重新選擇核心選項,您可以從第六個步驟重做:
make dep
.
.
make modules_install
.
lilo -v
====================================
小弟看過了,原則上,可以升級成功。
|