1. 程式人生 > >linux核心工程師 1.03節 Linux Kernel (Linux核心)怎麼安裝

linux核心工程師 1.03節 Linux Kernel (Linux核心)怎麼安裝

1、下載新核心原始碼:到官網www.kernel.org,下載最新版本linux核心,儲存到/usr/src/kernels目錄,大約54MB。
2、# cd /usr/src/kernels
3、# tar jvxf linux-2.6.31.5.tar.bz2
4、進入系統原核心目錄,把其中的隱藏檔案.config複製到新核心目錄中。
5、cd進入新核心目錄,然後執行# make oldconfig
此時所有提示均按回車,選項提示都預設。
6、# make xconfig 此時彈出一個核心配置視窗,裡面全是英文,我看不懂,乾脆就直接把這個視窗關掉,繼續往下做。
7、# make bzImage && make modules && make modules_install && make install 第七步編譯時間比較長,要30到50分鐘不等,要看機器情況了。
8、#uname -r檢視
核心版本
,完成上面步驟後就可以重啟系統了,啟動時會在GRUB選單裡出現新核心選項了。

隨著核心版本的更新換代,你是否有覺得自己的核心版本有些低了呢?如果有的話,沒關係,今天小編就來教大家如何編譯安裝新的核心。

在編譯安裝Linux核心之前先檢查我們的虛擬機器所在的磁碟空間,預留空間10G以上,不然編譯安裝核心無法完成。下面我們就開始核心的編譯安裝吧。

1)下載原始碼檔案

 先在核心官網(www.kernel.org/)上下載最新版本的核心到桌面上,然後rz拷到linux系統上,找到一個空目錄如/app/tmp,將之移到/app/tmp中,然後再解包解壓,就會生成一個目錄

2)準備文字配置檔案.config

/boot下有個檔案

/boot/config-3.10.0-514.el7.x86_64,這個檔案定義了在編譯核心的時候,那些特性,哪些功能啟用了,哪些功能沒啟用,哪些是以模組方式還是打到核心,就是在編譯核心的時候,以這個檔案為模板,在這個模板基礎之上來修改特性,所以先將這個檔案拷到linux-4.13.2目錄下,並命名為隱藏檔案.config

cp  /boot/config-3.10.0-514.el7.x86_64  /app/tmp/linux-4.13.2/.config

3)安裝包組  yum groupinstall "development tools"

yum groupinstall "development tools
"

4)配置核心選項 make menuconfig

cd /app/linux-4.13.2/ 進入到這個目錄下,make menuconfig,但是會提示錯誤,缺少了ncurses

所以再把這個包安裝了, yum  install  ncurses-devel ,安裝之後再次make menuconfig

然後就可以成功了(如果還沒有成功,提示你缺失了包,那你就繼續把這個缺失了的包加上-devel,用yum安裝(yum install 缺失包-devel)。)進入了核心選單項,我們可以自己定製核心版本名字和開啟ntfs功能(預設是不開啟的)

定製核心版本名字

啟動ntfs功能

進入子選單,ntfs檔案系統在最下面,一直往下翻就可以找到

其他配置就不改了,然後退出,yes儲存

 

通過選單修改了核心選項,也就修改了.config這個檔案

 

5)開始編譯

date >> /app/date.log ; make -j 8 ;date >> /app/date.log; for i in {1..10};do echo -e "\a";sleep 0.5;done

其實只需要make -j 8就可以了,我寫這麼長,是為了統計此次編譯花了多長時間,並且在編譯完之後,會發出10次響聲來提醒我編譯完成了。

初次編譯,會有一些錯誤出現,提示你有些包沒有安裝

我們用還是用yum install openssl-devel -y安裝,然後再次編譯,這次沒有錯誤了,時間可能有點長,我的電腦不太好,花了55分鐘才編譯好

 

編譯完成之後我們來看一下這個目錄有多大呢?9.2G,所以我們的虛擬機器所在的磁碟必須預留有10G以上的空間,不然編譯無法完成

6)安裝模組make modules_install

make modules_install

 

我們安裝模組完之後,在/lib/modules目錄下就會出現新的核心

(7)安裝核心相關檔案make install

安裝bzImage/boot/vmlinuz-VERSION-RELEASE

生成initramfs檔案

編輯grub的配置檔案

安裝完之後,我們再進入/boot下看看,發現已經生成了vmlixuzinitramfs檔案

再檢視/boot/grub2/grub.cfg,發現已經生成了我們安裝的新核心的啟動選單

好了編譯安裝核心到此已經結束了,然後再重啟就行了

8)解除安裝核心 

如果我們編譯安裝新核心之後,在使用的過程衝發現各種bug,和我現有的系統軟體不相容,我想刪了這個核心,那麼怎麼刪呢?

1.刪除/lib/modules/目錄下不需要的核心庫檔案

2.刪除/usr/src/linux/目錄下不需要的核心原始碼

3.刪除/boot目錄下啟動的核心和核心映像檔案

4.更改grub的配置檔案,刪除不需要的核心啟動列表

以上4步做完之後,我們新安裝的核心就徹底被刪除了

好了,以上就是小編這次帶給大家的內容,希望能給大家帶來幫助。