時間:2015/6/28來源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評論(0)
#uname -r 顯示內(nèi)核的版本號
一. 內(nèi)核編譯
1. 什么是內(nèi)核編譯
將內(nèi)核源碼轉(zhuǎn)換為目標程序的過程稱之為內(nèi)核編譯,在編譯過程可以定制內(nèi)核的功能
2. 內(nèi)核編譯的理由
(1) 重新定制內(nèi)核功能
(2) 給內(nèi)核打補丁
(3) 安裝硬件驅(qū)動程序
3. 編譯2.4內(nèi)核
(1) 完全編譯
-準備工作
a. 獲取2.4內(nèi)核源碼
-從www.kernel.org下載或從安裝光盤中獲取
b. 安裝gcc等編譯工具
#rpm -ivh gcc-3.2.5-5.i386.rpm ncurses4-5.0-11.i386.rpm ncurses-devel-5.3-4.i386.rpm
-解壓縮內(nèi)核源碼
a. 如果從www.kernel.org下載的源碼,可用tar解壓
#tar -xzvf/-xjvf *.tar.* -C /usr/src
b. 如果從安裝光盤中獲取的源,可用rpm解壓
#rpm -ivh kernel-source-版本號...
-修改內(nèi)核版本號
#vi /usr/src/內(nèi)核源碼目錄/Makefile
VERSION=數(shù)字
PATCHLEVEL=數(shù)字
SUBLEVEL=數(shù)字
EXTRAVERSION=字符串
...............
注:如果要覆蓋當前內(nèi)核將版本號修改成與當前內(nèi)核一致
-定制內(nèi)核功能
#cd /usr/src/內(nèi)核源碼目錄
#make mrproper //清除上次編譯留下垃圾文件
#make clean //清除殘留文件
#make menuconfig //如果想在當前內(nèi)核的基礎進行配置,可復制/boot目錄的"config-內(nèi)核版本號"到內(nèi)核源碼目錄下,取名為.config\
#cp /boot/config-2.4.20-8 /usr/src/linux-2.4.20-8/.config
#make dep //產(chǎn)生依賴關系
-生成內(nèi)核文件
#make bzImage
-編譯和安裝內(nèi)核模塊
#make modules
#make modules_install(安裝到/lib/modules/..)
-安裝內(nèi)核
#make install(安裝到/boot)
(2) 編譯內(nèi)核部分模塊
-準備工作
a. 獲取內(nèi)核源碼
b. 安裝gcc相關編譯工具
-解壓縮內(nèi)核源碼
.....
-修改版本號與當前內(nèi)核一致
#cd /usr/src/內(nèi)核源碼解壓目錄
#vi Makefile
.......
........
-定制內(nèi)核功能
#make mrproper
#make clean
#cp /boot/config-版本號 ./.config
#make menuconfig
#make dep
-編譯和安裝內(nèi)核模塊
#make modules SUBDIRS=路徑
#cp 源路徑/*.o /lib/modules/內(nèi)核版本號/kernel/....
#depmod -a
#p#副標題#e#
4. 編譯2.6內(nèi)核(RHEL)
(1) 完全編譯2.6內(nèi)核
-準備工作
a. 獲取內(nèi)核源碼(建議不用光盤中的源碼)
b. 安裝gcc相關編譯工具
-解壓縮內(nèi)核源碼
#tar -xzvf/-xjvf *.tar.gz/*.tar.bz -C /usr/src
-修改內(nèi)核版本號
#cd /usr/src/內(nèi)核源碼解壓縮目錄
#vi Makefile
...........
-定制內(nèi)核功能
#make mrproper
#make menuconfig
-編譯內(nèi)核及模塊
#make
-安裝內(nèi)核與模塊
#make modules_install
#make install
(2) 編譯內(nèi)核部分模塊
-準備工作
a. 獲取內(nèi)核源碼(建議不用光盤中的源碼)
b. 安裝gcc相關編譯工具
-解壓縮內(nèi)核源碼
#tar -xzvf/-xjvf *.tar.gz/*.tar.bz -C /usr/src
-修改內(nèi)核版本號與當前內(nèi)核一致
.......
-定制內(nèi)核功能
#make mrproper
#make menuconfig
-編譯內(nèi)核模塊
#make modules SUBDIRS=路徑
-安裝內(nèi)核模塊
#cp 源路徑/*.o /lib/modules/....
#depmod -a
注:-lsmod //查看當前內(nèi)核已加載的模塊
-modprobe //加載模塊,且自動解決依賴關系
-insmod //加載模塊,手工解決依賴關系
-rmmod //卸載模塊
-modinfo //查看指定模塊的信息
二. 安裝設備驅(qū)動程序
1. 設備分類
(1) 塊設備
(2) 字符設備
(3) 管道設備
2. Linux設備管理層次
(1) 面向用戶---設備文件
(2) 面向設備---驅(qū)動程序
注:mknod用于創(chuàng)建設備文件,格式為:mknod 設備文件名 類型 主設備號 從設備號
3. 驅(qū)動程序的安裝
(1) 自動安裝
如果所安裝的硬件驅(qū)動是系統(tǒng)自帶的,則在安裝系統(tǒng)時或在啟動系統(tǒng)時會自動安裝驅(qū)動
注:linux系統(tǒng)每次啟動時都會啟動kudzu服務,利用該服務來檢測新硬件
(2) 手工安裝
-獲取硬件的驅(qū)動程序
-解壓縮源碼包、并查看說明
-編譯
-安裝
-加載模塊
實例:安裝D-LINK 530TX網(wǎng)卡驅(qū)動
#tar -xzvf 530tx.tar.gz
#cd 530tx
#make
#mkae install
#modprobe 530tx
關鍵詞標簽:linux,內(nèi)核編譯,驅(qū)動安
相關閱讀
熱門文章 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程使用screen管理你的遠程會話GNU/Linux安裝vmware如何登錄linux vps圖形界面 Linux遠程桌面連
人氣排行 Linux下獲取CPUID、硬盤序列號與MAC地址linux tc實現(xiàn)ip流量限制dmidecode命令查看內(nèi)存型號linux下解壓rar文件安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程Ubuntu linux 關機、重啟、注銷 命令lcx.exe、nc.exe、sc.exe入侵中的使用方法查看linux服務器硬盤IO讀寫負載