自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

編譯Linux內核的詳細過程

系統(tǒng) Linux
默認情況下,編譯輸出的文件是放在源碼目錄里的,可以通過O=output/dir參數來指定輸出文件的位置(字母O,不是數字0)。

1、準備源碼

最新的源碼可以從kernel.org上獲取,如當前最新版本為2.6.31:$ wget linux-kernel/v2.6/linux-2.6.31.tar.bz2">http://oss.ustc.edu.cn/linux-kernel/v2.6/linux-2.6.31.tar.bz2

2、解壓源碼:

$ tar xvf linux-2.6.31.tar.bz2 -C /usr/src/ TIP:當然,解壓縮到/usr/src/中并不是必須的,你可以解壓縮到任何位置。

3、檢查源碼(該步不是必須):

$ cd /usr/src/linux-2.6.31

$ make mrproper

TIP:該步的作用是檢查源碼是否有.o文件和依賴問題,從全新的源碼編譯時不需要這一步。配合make clean(主要清除.o文件)使用更好,make mrproper主要清除環(huán)境變量及配置文件

4、編譯內核

默認情況下,編譯輸出的文件是放在源碼目錄里的,可以通過O=output/dir參數來指定輸出文件的位置(字母O,不是數字0)。很多第一次編譯內核的人都會碰到一個問題,/usr所在分區(qū)的空間不夠,此時,這個參數就很有用。

源碼提供了很多配置方式,推薦使用menuconfig:進入/usr/src/linux-2.6.31,已經進入則略過:$ cd /usr/src/linux-2.6.31

創(chuàng)建/build/kernel menuconfig文件夾:$ mkdir -p /home/你的用戶名/build/kernel menuconfig

使用menuconfig配置:$ make O=/home/你的用戶名/build/kernel menuconfig

對于第一次編譯內核的人,不推薦直接從內核默認配置開始,推薦使用發(fā)行版自帶的配置文件,通常/boot下會有config-2.6.xx的文件。選擇Load an Alternate Configuration File,然后輸入/boot下那個config文件的名字,載入即可。第一次編譯最好還是不要隨便修改配置了,如果失敗的話,會留下心理陰影的:-)在配置里隨便看看,如果有什么懂的也可以根據自己的需求改改,不明白的地方就不要動了吧。完了之后別忘了save,保存的時候文件名就填.config。

接下來就開始正式編譯了。編譯時間可能會有些長,為了避免終端意外關閉,可以使用screen,具體用法這里就不談了。

$ make O=/home/name/build/kernel

為了加快編譯的速度,可以使用-j參數,開啟多線程。比如雙核的cpu可以這樣編譯

$ make -j4 O=/home/name/build/kernel

一般-jn的n為核數的兩倍即可

5、安裝內核

$ sudo make O=/home/name/build/kernel modules_install install

6、生成initrd

$ sudo mkinitramfs -o /boot/initrd-img.2.6.31 2.6.31關于mkinitramfs的其他參數,請參考man mkinitramfs,關于initrd的作用,請自己google搜索。我近期也會寫一篇文章剖析一下initrd。

7、修改引導

使用grub的話,可以直接使用:

$ sudo update-grub

來更新引導文件,當然也可以自己編輯/boot/grub/menu.lst或者/boot/grub/grub.cfg文件。

8、重啟

重啟之后可以通過以下命令確認你當前使用的是不是剛編譯的內核:

$ uname -a

【編輯推薦】

  1. Linux內核SCSI IO子系統(tǒng)分析
  2. 如何成為一個Linux系統(tǒng)內核開發(fā)者
  3. Linux的2.6.32獲取R600的內核模式設置
責任編輯:趙寧寧 來源: chinaitlab
相關推薦

2017-03-27 18:05:49

Linux內核編譯與開發(fā)

2023-05-08 08:05:42

內核模塊Linux

2009-10-28 09:54:32

Linux內核詳細解析

2021-01-19 11:40:40

Linux代碼程序編譯

2022-06-09 09:20:40

Linux語言編寫代碼

2021-05-26 07:53:58

Linux運維Linux系統(tǒng)

2010-03-02 16:13:56

Linux升級

2009-12-17 15:18:47

2023-10-05 15:47:04

Linux內核編譯

2011-01-04 17:00:32

Linux內核編譯

2009-09-07 08:58:23

VMWare編譯lin

2009-12-01 12:59:50

編譯Suse Linu

2023-07-25 15:17:38

Linux操作系統(tǒng)開發(fā)

2010-05-13 09:45:26

Linux地址空間

2010-07-20 10:04:25

Linux內核編譯

2021-09-09 12:01:13

Linux內核f宏

2022-05-18 07:58:21

Linux程序編譯代碼

2009-12-24 10:04:38

Linux進行C編譯

2010-02-26 10:17:15

Linux uClin

2010-04-20 10:12:05

點贊
收藏

51CTO技術棧公眾號