ubuntu中linux核心的編譯 更換與使用

2021-09-12 11:01:13 字數 1528 閱讀 3820

由於需要在pc機上做一些linux驅動的實驗,來學習《linux裝置驅動開發技術及應用》這本書,最近在ubuntu上配置、編譯、安裝了更老一些的核心。原來ubuntu11.10自帶的核心是linux-3.0.0-12的,我改為了linux-2.6.39.4版本的。過程主要參考《ubuntu環境下編譯linux-2.6.36核心操作手冊》。

以下過程全部在root許可權下操作。

1、 安裝必備軟體編譯工具:

#apt-get install libncurses5-dev build-essential kernel-package

注意:(1)libncurses5-dev是為之後配置核心能執行 make menuconfig程式做準備

build-essential為編譯工具,kernel-package是編譯核心工具

(2)如果系統顯示無法查詢到這三個檔案,輸入#apt-get update更新資料來源。

3、 將原始碼放在windows下的共享目錄內,這樣在linux下就可以看到並操作了。

我在linux下的共享目錄為:

linux@xiangpingli:~/桌面/share$ pwd

/home/linux/桌面/share

linux@xiangpingli:~/桌面/share$ ls

linux-2.6.39.4.tar.bz2  vimrc.tiny3

4、 將該壓縮包拷貝到/usr/src/目錄下解壓

5、 配置核心:

建議使用當前系統配置檔案,使用當前系統配置檔案方法:

#cp /boot/config-xx  ./.config,然後進入menuconfig選擇load選項。

6、 編譯核心:

make,這可能需要2~3個小時的時間。

7、加入模組

#make modules_install

8、生成可執行的核心引導檔案

#make bzimage

#cp arch/x86/boot/bzimage /boot/vmlinuz-2.6.39.4

9、將system.map複製到/boot下:

#cp system.map /boot/system.map-2.6.39.4

10、生成initrd.img檔案

#cd /lib/modules/2.6.39.4

#update-initramfs –c –k 2.6.39.4

11、自動查詢新核心,並新增至grub引導

#update-grub

12、修改/boot/grub/grub.cfg檔案,將幾個timeout的值設為10

這樣grub在引導的時候就會出現10秒的停留,如果有按鍵輸入,則可以對核心映象進行選擇

Ubuntu下Linux核心的解除安裝

在之前的文章中就已經介紹過如何來編譯生成乙個核心。那麼相應的,當然還有如何解除安裝我們不許要的核心。解除安裝核心我們分為兩部分來介紹 對於第一種情況,很簡單 1.dpkg get selections grep linux,這會列出當前使用的核心及公升級前的一系列版本,其中的 image 就是核心檔...

清除ubuntu核心列表中的舊核心

不用的核心已經被解除安裝掉了,如何從列表中刪除呢?gleerat gleerat sudo apt get autoclean 正在讀取軟體包列表.完成 正在分析軟體包的依賴關係樹 正在讀取狀態資訊.完成 gleerat gleerat dpkg get selections grep linux ...

ubuntu下編譯linux核心

我們作業系統課程設計要求做關於linux核心視覺化方向相關的內容,首先要做的是編譯核心。其實核心編譯還是比較簡單的 cd usr src tar jxvf linux 3.2.28.tar.bz2 執行sudo apt get install ncurses devel3.因為ubuntu自己整合了...