真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Ubuntu內(nèi)核基本系統(tǒng)裁減與編譯的示例分析

這篇文章將為大家詳細(xì)講解有關(guān)Ubuntu內(nèi)核基本系統(tǒng)裁減與編譯的示例分析,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

泰州ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

一、Ubuntu內(nèi)核裁減與編譯

1、安裝make ,gcc, make-kpkg,運(yùn)行menuconfig等等和編譯Ubuntu內(nèi)核相關(guān)的工具。安裝命令如下$sudo apt-get install build-essential kernel-package libncurses5-dev如果無法安裝請檢查/etc/apt/sources.list

2、解壓源代碼可以解壓到任意目錄,我們在這里解壓到/usr/src

tar -xvf linux-2.6.28.N -C /usr/src  cd /usr/src/linux-2.6.28.N

3、開始編譯前的準(zhǔn)備工作

$ sudo make mrproper

網(wǎng)上很多教程上說把現(xiàn)在使用的Ubuntu內(nèi)核的config拷貝過來參考,據(jù)實(shí)驗(yàn),是不需要的,ubuntu還有debian會(huì)自動(dòng)做這步。不過這條命令倒是可以學(xué)習(xí)一下。當(dāng)然你可以將以前的配置拷貝過來。命令:代碼:cp /boot/config-`uname -r` ./.config

4、開始配置Ubuntu內(nèi)核選項(xiàng)

a、sudo make menuconfig,根據(jù)需要進(jìn)行Ubuntu內(nèi)核配置。

5、編譯Ubuntu內(nèi)核

$sudo make-kpkg clean 這條命令好像不要超級(jí)權(quán)限,很多資料上說要,不過這不是原則問題。$ sudo make-kpkg --initrd [--append-to-version=任意名稱] kernel_image [kernel-headers]

例如:make-kpkg –initrd kernel_image

kernel-headers(kernel具體版本號(hào)如2.6.28.3,如果***編譯時(shí)如果指定kernel-headers會(huì)報(bào)錯(cuò)。)說明可以用make -j2代替。

6、安裝Ubuntu內(nèi)核

編譯完成就是安裝工作。編譯好的Ubuntu內(nèi)核在上一層目錄。包括linux-headers-...-_i386.deb和linux- image-...-i386.deb兩個(gè)文件,如果你不搞開發(fā)的話,只要安裝Ubuntu內(nèi)核就可以,頭文件以后要用的時(shí)候再說。
安裝相關(guān)命令:$ cd ..
$ sudo dpkg -i linux-image-(按tab鍵)說明:1、如果用make -j2編譯,則可以用 make install 和make modules_install進(jìn)行代替

2、如果用make 直接編譯,則需要用,mkinitramfs -o initrd.img-2.6.28.N 2.6.28.N生成initrd文件并進(jìn)行/boot/grub/menu.lst增加新Ubuntu內(nèi)核選項(xiàng)。

3、在/boot/grub/menu.lst中可以不實(shí)用uuid,方法可以將/etc/initramfs-tools/conf.d/resume內(nèi)容用#號(hào)注釋,update-initramfs -u -k `uname -r`(如果報(bào)Kinit: no resume image,doing normal boot...)如果報(bào)此錯(cuò)誤可以用該方法解決。

二、基本系統(tǒng)裁減

一般有兩種方法,將原有系統(tǒng)上進(jìn)行刪除,刪除無用的文件;另一種方法就是在新的文件系統(tǒng)中增加文件,我們可以采用***種辦法來作,比較簡單的辦法就是將所有文件拷貝到一個(gè)新的磁盤分區(qū),進(jìn)行操作系統(tǒng)文件裁減,如果刪除文件導(dǎo)致系統(tǒng)無法啟動(dòng)可以將文件從原始系統(tǒng)中拷貝過來。

1、首先我們對(duì)命令進(jìn)行刪除,刪除那些不常用的命令。

2、對(duì)動(dòng)態(tài)庫進(jìn)行刪除,使用ldd comand 確定文件使用的動(dòng)態(tài)庫。(可以盡量將所有模塊編譯到Ubuntu內(nèi)核而不是編譯成模塊,這樣可以減小文件系統(tǒng)裁減的難度。),刪除多余的動(dòng)態(tài)庫。

3、對(duì)/dev目錄進(jìn)行裁減,默認(rèn)可以保留MAKEDEV,console,null,random,urandom,以及bus,pts hm這些文件和目錄。

4、對(duì)/usr目錄進(jìn)行裁減,僅保留bin,lib,sbin,share,local幾個(gè)目錄即可。
a、bin,sbin根據(jù)需要保留必要命令即可。
b、lib保留gconv,i686,locale,sudo,ssl,udev目錄和必要的動(dòng)態(tài)庫即可。
c、share目錄保留command-not-found file i18n terminfo zoneinfo即可,并且可以將這些目錄中不需要的文件刪除。

5、裁減var目錄保留 lock log mail run spool 幾個(gè)目錄即可,根據(jù)需要?jiǎng)h除這些目錄中多余文件。

6、裁減etc目錄,根據(jù)需要進(jìn)行裁減。

說明:

1、/usr/bin/tput命令和/etc/lsb-*文件可以導(dǎo)致系統(tǒng)重啟時(shí)[0K]不顯視,裁減時(shí)必須主義。

2、命令行下修改時(shí)區(qū)a、 sudo tzselect 進(jìn)行選擇;b、將/usr/share/zoneinfo/Asia/Shanghai/etc/localtime

7、boot目錄裁減

根據(jù)需要修改initrd.img-2.6.28.N

1、可以使用gzip -cd /boot/imagefile.img |cpio -imd –quiet對(duì)initrd.img-2.6.28.N進(jìn)行解壓,修改參數(shù)。

2、用find . |cpio –quiet -H newc -o |gzip -9 -n > /boot/initrdfile.img生成壓縮的initrd文件?;蛘呤褂茫╢ind . |cpio –quiet -c -o |gzip -9 -n > /boot/initrdfile.img,不過高版本Ubuntu內(nèi)核使用前面的壓縮方式。

3、可以用mkinitramfs -o initrd.img-2.6.28.N 2.6.28.N生成initrd文件,也可以用update-initramfs -u -k `uname -r` 升級(jí)現(xiàn)有initrd進(jìn)行升級(jí)。

8、重啟進(jìn)行必要的調(diào)整。

說明:

1、如果報(bào)error:”kernel.maps_protect” is an unknow key”可以在/etc/sysctl.conf將該行屏蔽。

2、如果報(bào)error:”vm.mmap_min_addr” is an unknow key可以設(shè)置Security option選項(xiàng) 重新編譯Ubuntu內(nèi)核。

關(guān)于“Ubuntu內(nèi)核基本系統(tǒng)裁減與編譯的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。


網(wǎng)站名稱:Ubuntu內(nèi)核基本系統(tǒng)裁減與編譯的示例分析
網(wǎng)頁鏈接:http://weahome.cn/article/gdoehg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部