衆多的Linux用戶在經歷了對Linux由好奇到熟悉的過程以後是否但願按照本身機器的實際配置對Linux進行定製從而得到最佳的系統性能呢?也許有用戶會認爲在本身使用Linux的過程當中沒有碰到到任何問題Linux確實象人們所宣傳的那樣永遠不會崩潰所以徹底沒有必要冒着風險對系統內核進行的改動其實對Linux系統內核進行定製和修改並不向不少人想象中的那麼複雜若是用戶可以根據本身的實際狀況對Linux系統內核進行合理的修改能夠有效的簡化Linux內核去除不須要的組件從而提供更快的系統啓動速度釋放更多的內存資源linux
下面咱們對Linux系統內核作一下簡單介紹安全
所謂系統內核其實是系統設計人員編寫的控制系統的各個組件在不一樣程序之間分配系統資源同時協調系統與硬件和外設之間數據傳遞的系統核心程序代碼與Windows系統的內核不一樣Linux系統的內核是可配置的用戶能夠根據本身的實際須要在對系統內核進行定製例如用戶能夠針對本身機器CPU的具體型號對系統內核進行優化網絡
儘管不一樣廠商在推出其各自的Linux產品以前都已經針對某些具體的硬件設備或網絡協議對系統內核進行了設置可是用戶仍是能夠針對本身所實際使用的機器對Linux系統內核進行進一步的修改從而將Linux系統的性能提高到新的高度本文將主要結合目前較爲流行同時也是較爲成熟的RedHatLinux版本對系統內核的定製進行詳細的介紹使用其它廠商推出的Linux產品的用戶也能夠參照本文的介紹對Linux內核進行定製編輯器
準備工做工具
儘管從新編譯Linux系統內核的操做大多數能夠自動完成並且也並不複雜可是一旦出現錯誤將可能致使Linux系統沒法正常啓動所以爲了預先防範可能出現的任何問題用戶必定要在對Linux系統內核進行任何的改動以前製做一張Linux系統啓動盤(注用戶在安裝Linux系統的過程當中可能已經被要求製做了系統啓動盤若是用戶沒有現成的系統啓動盤能夠按照本文隨後的介紹從新制做一張)同時還應當將一些重要的數據進行及時的備份下面咱們就來看一下如何實現Linux系統內核的定製性能
用戶須要以管理員root賬號登陸Linux系統由於本文的全部命令都是經過命令方式實現因此用戶最好選擇以命令方式登陸若是用戶機器上的Linux系統默認登陸到圖形方式的話可使用圖形環境下的終端命令窗口(單擊GNOME桌面任務條中以計算機圖案顯示的按鈕)優化
製做啓動盤spa
通常在Linux系統的安裝過程當中安裝程序都會要求用戶製做一張Linux系統啓動盤這樣當Linux系統出現嚴重錯誤而沒法正常啓動時用戶就可使用啓動盤從新啓動Linux系統若是用戶沒有任何現成的啓動盤能夠按照以下所述方法本身動手製做設計
假設用戶使用的是RedHat推出的Linux產品首先在命令模式或命令終端窗口下輸入more/etc/liloconf命令而後回車該命令將會分屏顯示Linux加載程序即LinuxLoader(簡稱LILO)的配置文件用戶在文件中找到以下條目image=/boot/vmlinuz該項指出的路徑正是用戶每次啓動Linux系統時首先被裝載的Linux系統內核的位置其中vmlinuz項後的數字表明用戶目前所使用的Linux系統內核的版本實際顯示值視用戶的具體狀況可能會有所不一樣記下該數字以後輸入q返回到命令方式orm
隨後用戶輸入mkbootdisk–verbose–device/dev/fd命令其中的Linux系統內核版本號以用戶的實際版本數字爲準回車以後Linux將會要求用戶插入一張軟盤而後自動爲咱們製做一張系統啓動盤設置系統內核
如今咱們開始對Linux系統內核進行定製首先用戶輸入命令cd/usr/src/linux將當前的工做目錄轉換到/usr/src/linux
Linux系統爲用戶提供了兩種系統內核的設置接口分別爲menuconfig和xconfig其中用戶能夠在任何命令方式下經過輸入命令makemenuconfig啓動menuconfig而後使用方向鍵和Tab鍵進行選擇和修改對於xconfig用戶只能在XWindows下經過命令makexconfig啓動xconfig提供了更加友好的用戶界面用戶能夠經過鼠標點擊選擇選擇各項菜單和按鈕本文將主要介紹xconfig使用方法用戶能夠經過使用menuconfig實現一樣的功能
用戶輸入命令makexconfig按回車在一連串文字飛快顯示以後將會彈出xconfig的主窗口該窗口包含許多按鈕選項點擊其中任意一項會彈出對Linux系統內核進行具體設置的設置窗口例如用戶點擊xconfig窗口中的第二項Processortypeandfeatures以後就能夠在相應的彈出窗口中對用戶本身機器處理器進行設置
在每個設置窗口中用戶能夠經過選擇Y或N選項啓動或關閉任意功能此外用戶還能夠選擇M選項把某些功能做爲模塊進行編輯所謂模塊並非系統內核的組成部件可是在須要時系統內核會鏈接指定的模塊從而共同提供特定的功能在默認狀況下設置窗口中的許多功能都是做爲不一樣的模塊被編輯的
若是用戶在具體的設置過程當中對某一個具體功能的設置不清楚的話能夠點擊該功能選項的幫助按鈕啓動相應的幫助文本幫助文本可以提供全部功能選項的詳細說明若是用戶發現本身可能選擇了錯誤的選項而但願恢復之前的設置的話能夠選擇直接返回主窗口而不保存任何所作的改動用戶在完成了全部須要改動的設置以後能夠點擊xconfig主窗口的SaveandExit保存用戶設置並退出xconfig
編輯系統內核
用戶在按照我的的實際須要完成對系統內核的設置以後須要對新的系統內核進行編譯
用戶在關閉全部打開的程序以後在命令方式下輸入makebzImage命令該命令會自動完成對新系統內核的編輯大約須要到分鐘具體時間取決於用戶機器的性能
編譯完系統內核以後返回到命令方式這時若是出現報錯信息則表示用戶對系統內核進行了錯誤的設置例如沒有啓動某一個功能所必須的其它附加功能等這時用戶所能作的只能是從頭開始重新設置系統內核
在順利編譯完新的系統內核以後用戶還須要對配置系統內核過程當中設定的各類功能模塊進行編譯和安裝具體爲輸入makemodules命令而後按回車該命令將會完成對內核模塊的編譯完成編譯以後輸入makemodules_install命令該命令會自動安裝已編譯模塊
收尾工做
在完成了對新系統內核以及模塊的編譯以後咱們須要把新的系統內核複製到Linux的啓動目錄中用戶能夠輸入如下命令cparch/i/boot/bzImage/boot/vmlinuzmykernel此外咱們還須要對LILO進行相應的修改以便使LILO在系統啓動時可以找到新的系統內核咱們可使用任何一種Linux系統下的文本編輯工具對LILO配置文件進行修改這裏咱們使用pico文本編輯器輸入pico/etc/liloconf命令啓動pico編輯器並載入LILO配置文件找到image=項用/boot/vmlinuzmykernel替代該項的現有值建議用戶記下image=項的當前值這樣若是出現任何問題就能夠方便的恢復到安全設置完成修改以後按CtrlX選擇Y而後回車保存設置並退出pico編輯器這樣咱們已經完成了定製Linux系統內核的全部工做從新啓動機器再次進入Linux系統以後用戶將會感覺到新的系統內核所帶來的新的體驗