天天看點

Linux核心更新及核心編譯

一:Linux核心:

作業系統是一個用來和硬體打交道并為使用者程式提供一個有限服務集的低級支撐軟體。一個計算機系統是一個硬體和軟體的共生體,它們互相依賴,不可分割。計算機的硬體,含有外圍裝置、處理器、記憶體、硬碟和其他的電子裝置組成計算機的發動機。但是沒有軟體來操作和控制它,自身是不能工作的。完成這個控制工作的軟體就稱為作業系統,在Linux的術語中被稱為“核心”,也可以稱為“核心”。Linux核心的主要子產品(或元件)分以下幾個部分:存儲管理、CPU和程序管理、檔案系統、裝置管理和驅動、網絡通信,以及系統的初始化(引導)、系統調用等。Linux系統體系結構如下圖:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674710cHas.png"></a>

二:核心更新的好處:

支援新硬體、 提升效率,支援新功能,主要面向網絡、開發、服務應用等。

三:更新核心的方法:

1:将更新核心的更新檔下載下傳安裝。

2:将新版核心重新安裝在舊機器上,取代原來的核心。

四:核心編譯:

通過修改核心的一些選項來,來實作原有核心的不同功能

五:下面以重新安裝核心為例來說明Linux核心的編譯過程:

1:檢視Linux核心大小:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674717Jp3c.png"></a>

2:檢視核心子產品:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674723Q8sv.png"></a>

3:檢視所有子產品指令:[root@lyt kernel]# lsmod

檢視單個子產品的詳細資訊(用lp子產品為例):[root@lyt kernel]# modinfo lp

删除子產品指令(用lp子產品為例):[root@lyt kernel]# rmmod lp

将子產品重新載入(用lp子產品為例):[root@lyt kernel]# modprobe lp

檢視子產品的配置檔案(可以手動配置一些參數):[root@lyt kernel]# vim /etc/modprobe.conf

4:檢視核心源代碼:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674732TZv0.png"></a>

5:檢視核心官網,可以從官網上下載下傳核心:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674744aKni.png"></a>

6:[root@lyt ~]# mkdir /mnt/cdrom/        #建立挂載點

[root@lyt ~]# mount /dev/cdrom /mnt/cdrom/       #挂載目錄

[root@lyt Server]# vim /etc/yum.repos.d/rhel-debuginfo.repo      #編輯yum配置檔案

[root@lyt Server]# cd /mnt/cdrom/Server       #切換該目錄中,用以安裝vsftpd

[root@lyt Server]# yum install vsftpd         #使用yum安裝vsftp服務

[root@lyt pub]# cd /var/ftp/      #切換到改目錄下,給pub目錄的匿名使用者加上可讀可寫權限

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_13446747507oDj.png"></a>

[root@lyt ftp]# vim /etc/vsftpd/vsftpd.conf        #修改vsftp的配置檔案如圖:

[root@lyt ftp]# service vsftpd restart          #重新開機vsftp伺服器

7:從實體機上進入虛拟機ftp的pub目錄中:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674756JdVI.png"></a>

将核心檔案導入到虛拟機裡ftp的pub目錄中

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674765ZL5y.png"></a>

如圖:在虛拟機上已經檢視到新導入的核心檔案,如圖:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674769oKd8.png"></a>

[root@lyt pub]# tar  –jxvf  linux-2.6.25.19.tar.bz2  –C  /usr/src/kernels/        #将linux-2.6.25.19.tar.bz2檔案解壓到目錄/usr/src/kernels/中

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_13446747747rJh.png"></a>

8:[root@lyt kernels]# make menuconfig          #通過編譯菜單方式編譯核心,必須在/usr/src/kernels/linux-2.6.25.19下執行該指令

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_134467478222rz.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674793iH9q.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674798QFeL.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674803iWNv.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674806xFSb.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674811MWWA.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674815hwAA.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674819apmh.png"></a>

[root@lyt linux-2.6.25.19]# vim .config        #檢視新生成的檔案.config中是否新增了IPRANGE子產品和TIME子產品。如圖:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674823rNsS.png"></a>

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_13446748275EGq.png"></a>

編譯安裝核心:

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_1344674834J83l.png"></a>

[root@lyt linux-2.6.25.19]# vim /etc/grub.conf          #編輯開機菜單選項grub檔案

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_13446748376bwL.png"></a>

9:[root@lyt boot]# init 6    #重新開機檢視核心編譯結果

<a href="http://5493845.blog.51cto.com/attachment/201208/11/5493845_13446748423iDD.png"></a>

本文轉自 liuyatao666 51CTO部落格,原文連結:http://blog.51cto.com/5503845/960996,如需轉載請自行聯系原作者

繼續閱讀