核心終於編過並且公升級了,本來打算抓緊繼續往下學習。但是在老婆的鼓勵下,感覺還是停下來總結下比較好,這樣對自己對別人都有所幫助。
0、環境介紹
我是在virtualbox-3.1.6-59338-win的虛擬機上安裝了ubuntu-9.10-desktop-i386.iso。電腦本身是xp系統。
注意,在進行下面之前最好做以下工作:
1) 安裝了增強包。這個裝上後虛擬機器和我們的電腦之間切換很是方便,不需要按右ctl鍵了。至於其他的好處,現在還沒意識到,呵呵。
2) 和主機(xp系統)之間設定好共享資料夾。這樣比較方便互通資料。
3) 虛擬機器的硬碟空間最好要20g以上。因為核心解壓後就佔很大空間了,再做其他的,可能就不方便了。 1
位址為www.kernel.org
,在「
是2.6.33.2,下面以這個版本為例進行講解。
linux-2.6.33.2.tar.bz2
放在/usr/src
下。
2、解壓核心原始碼
執行命令:
#cd/usr/src
#tar-jxvf linux-2.6.33.2.tar.bz2
#ln-s linux-2.6.33.2 linux (
將linux
符號鏈結對映到
linux-2.6.33.2)
#cdlinux3、#
makemrproper
該命令確保源**目錄下沒有不正確的.o檔案以及檔案的相互依賴。
4、配置核心
注意:執行這步之前,需要先安裝
libncurses
,因為ubuntu
預設沒有安裝。安裝命令為:
#apt-getinstall libncurses5-dev
配置可以使用下面命令中的乙個:
#makeconfig (基於文字的最傳統的配置介面,不推薦使用)
#makemenuconfig (基於文字選單的配置介面)
#makexconfig (需要qt已經被安裝)
#makegconfig (需要gtk+已經被安裝)
通常我們都用第二個:#makemenuconfig
具體配置核心,這裡不再詳述了。我第一次也什麼都沒有改動。
5、編譯核心
注意:執行此命令前 1
)需要是
root
使用者才行。可以用
su或者
sudo
命令。
2)要確保
/lib
資料夾是可以寫的,因為
ubuntu
預設為不可寫的。命令:
#chmod777 /lib
這個可要注意哦。我就是沒注意更改,然後執行了下面的編譯核心的命令就下班回家了,以為第二天來了就編譯好了。沒想到第二天來了發現執行了沒多久就停掉了,原因就是打算往/lib裡的某個資料夾下考檔案時候,出錯了。
下面開始編譯:
#makebzimage (
生成可執行的
ubuntu
核心引導檔案)
#makemodules modules_install
以上要花一兩個小時吧。
6、以上成功的話,核心就編譯成功了。下面更新核心
#cp arch/i386/boot/bzimage /boot/vmlinuz-2.6.33.2
然後將將system.map
複製至/boot下:
#cp system.map /boot/system.map-2.6.33.2 生成
initrd.img:
#cd/lib/modules/2.6.33.2 #
mkinitramfs-o /boot/initrd.img-2.6.33.2
注意:這個地方有些要說明的。
製作initrd.img,在fedora下面一般是用mkinitrd,而在ubuntu/debian下是用mkintramfs.
它們的用法稍微有些不一樣,如下所示:
#mkinitrd /boot/initrd.img 2.6.33.2
#mkintramfs 2.6.33.2 -o /boot/initrd.img
我這個是
ubuntu/debian,當然要用
mkintramfs。我一開始沒分清
fedora還是
ubuntu/debian,用mkinitrd始終說找不到,查了下才發現,原來使用
mkintramfs啊。
7、自動查詢新ubuntu
核心,並新增至grub引導
#update-grub
8、好了,此時重啟,用命令(uname -r)
檢視下你的核心是不是2.6.33.2吧。
注意:以上都是依據核心版本為2.6.33.2
寫的,但是請將所有相應的2.6.33.2
替換為你的新的版本號。
linux公升級核心
下面以centos6.5 64位 為例,介紹下docker安裝步驟和使用方法 一 公升級核心 帶aufs模組 2 修改grub的主配置檔案 etc grub.conf,設定default 0,表示第乙個title下的內容為預設啟動的kernel 一般新安裝的核心在第乙個位置 3 重啟系統,這時候你的...
公升級Linux核心
公升級linux核心 linux核心檔案 l 預設位置 boot vmlinuz l 支援多個核心檔案,開機時選擇其中乙個版本進系統 grub2多系統啟動配置 l 引導資訊 boot grub2 grub.cfg 案例 為虛擬機器 server0公升級新版的核心 l 當系統重新啟動後,公升級的新核心...
Linux公升級核心
檢視核心版本 uname a 檢視linux版本 cat etc issue 編譯安裝新核心,依賴於開發環境和開發庫 yum grouplist 檢視已經安裝的和未安裝的軟體包組,來判斷我們是否安裝了相應的開發環境和開發庫 yum groupinstall development tools 一般是...