歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> 手把手教你配置最新linux-2.6.6內核

手把手教你配置最新linux-2.6.6內核

日期:2017/2/27 14:28:32   编辑:更多Linux

下載內核源代碼   http://www.kernel.org/pub/Linux/kernel/v2.6/linux-2.6.6.tar.gz   放置到 /usr/src/下   解壓 tar zxvf linux-2.6.6.tar.gz   #cd linux-2.6.6   #make menUConfig (如果裝了X11 可用Xconfig 命令) 配置內核 一定要選自己的網卡驅動!   不選的為空 選的是*號 M 是編譯為模塊形式,日後可手動插入模塊     升級module-init-tools軟件包   要編譯與正常運行新的內核你需要升級一些軟件包,這些信息在源碼目錄下的Documentation/Changes文件中,請根據你的實際情況選擇升級。   特別要說明的是,因為2.4.x下的modutils工具包已經不在適合新的2.6.x內核, 必需將其升級到module-init-tools工具包.,我下載module-init-tools-3.0.tar.gz源碼包的地方是:     http://www.kernel.org/pub/linux/kernel/people/rusty/modules/module-init-tools-3.0.tar.gz     接下來, 按照下列步驟安裝module-init-tools工具包:     tar -zxvf module-init-tools-3.0.tar.gz     在module-init-tools-3.0目錄下,     # configure --prefix=/   # make moveold   # make all install   # ./generate-modprobe.conf /etc/modprobe.conf     命令"make moveold"將把系統原來的modutils工具程序改名為"*.old"(比如,lsmod.old等等). NOTE! 這是非常重要的一步, 千萬不要省略. 這將使得你可以繼續使用原有的linux-2.4.x系統, 因為在2.4.x系統下, 新的module-init-tools工具包實際上是倚賴原來"*.old"程序來加載內核模塊. 如果忘記了這一步也不要緊張, 可以先下載並安裝原來的modutils程序包, 然後按照上面的步驟重來一遍就可以了.   新的module-init-tools工具包不再使用原來的/etc/modules.conf配置文件了, 而是使用新的配置文件/etc/modprobe.conf. 因此必需用命令"./generate-modprobe.conf /etc/modprobe.conf"來生成新的配置文件/etc/modprobe.conf.   如果你使用devfs系統你還需要復制modprobe.devfs 到/etc目錄下。   當你升級完相關軟件包之後,准備工作就算完成了,下面我們將進入到編譯階段。     1. Code maturity level options   代碼成熟等級。此處只有一項:prompt for development and/or incomplete code/drivers,如果你要試驗現在仍處於實驗階段的功能,比如khttpd、IPv6等,就必須把該項選擇為Y了;否則可以把它選擇為N。   2. Loadable module support   對模塊的支持。這裡面有三項:   Enable loadable module support:除非你准備把所有需要的內容都編譯到內核裡面,否則該項應該是必選的。   Set version information on all module symbols:可以不選它。   Kernel module loader:讓內核在啟動時有自己裝入必需模塊的能力,建議選上。   3. Processor type and features   CPU類型。內容蠻多的,不一一介紹了,有關的幾個如下:   Processor family:根據你自己的情況選擇CPU類型。   High Memory Support:大容量內存的支持。可以支持到4G、64G,一般可以不選。   Math emulation:協處理器仿真。協處理器是在386時代的寵兒,現在早已不用了。   MTTR support:MTTR支持。可不選。   Symmetric multi-processing support:對稱多處理支持。除非你富到有多個CPU,否則就不用選了。   4. General setup   這裡是對最普通的一些屬性進行設置。這部分內容非常多,一般使用缺省設置就可以了。下面介紹一下經常使用的一些選項:   Networking support:網絡支持。必須,沒有網卡也建議你選上。   PCI support:PCI支持。如果使用了PCI的卡,當然必選。   PCI Access mode:PCI存取模式。可供選擇的有BIOS、Direct和Any,選Any吧。   Support for hot-pluggabel devices:熱插拔設備支持。支持的不是太好,可不選。   PCMCIA/CardBus support:PCMCIA/CardBus支持。有PCMCIA就必選了。   System V IPC   BSD Process Accounting   Sysctl support:以上三項是有關進程處理/IPC調用的,主要就是System V和BSD兩種風格。如果你不是使用BSD,就按照缺省吧。   Power Management support:電源管理支持。   Advanced Power Management BIOS support:高級電源管理BIOD支持。   5. Memory Technology Device(MTD)   MTD設備支持。可不選。   6. Parallel port support   串口支持。如果不打算使用串口,就別選了。   7. Plug and Play configuration   即插即用支持。雖然Linux對即插即用目前支持的不如Windows好,但是還是選上吧,這樣你可以拔下鼠標之類的體驗一下Linux下即插即用的感覺。   8. Block devices   塊設備支持。這個就得針對自己的情況來選了,簡單說明一下吧:   Normal PC floppy disk support:普通PC軟盤支持。這個應該必選。   XT hard disk support:   Compaq SMART2 support:   Mulex DAC960/DAC1100 PCI RAID Controller support:RAID鏡像用的。   Loopback device support:   Network block device support:網絡塊設備支持。如果想訪問網上鄰居的東西,就選上。   Logical volume manager(LVM)support:邏輯卷管理支持。   Multiple devices driver support:多設備驅動支持。   RAM disk support:RAM盤支持。   9. Networking options   網絡選項。這裡配置的是網絡協議。內容太多了,不一一介紹了,自己看吧,如果你對網絡協議有所了解的話,應該可以看懂的。如果懶得看,使用缺省選項(肯定要選中TCP/IP networking哦)就可以了。讓我們看看,TCP/IP、ATM、IPX、DECnet、Appletalk……支持的協議好多哦,IPv6也支持了,Qos and/or fair queueing(服務質量公平調度)也支持了,還有kHTTPd,不過這些都還在實驗階段。   10. Telephony Support   電話支持。這個是什麼東東?讓我查查幫助,原來是Linux下可以支持電話卡,這樣你就可以在IP上使用普通的電話提供語音服務了。記住,電話卡可和modem沒有任何關系哦。   11. ATA/IDE/MFM/RLL support   這個是有關各種接口的硬盤/光驅/磁帶/軟盤支持的,內容太多了,使用缺省的選項吧,如果你使用了比較特殊的設備,比如PCMCIA等,就到裡面自己找相應的選項吧。   12. SCSI support   SCSI設備的支持。我沒有SCSI的設備,所以根本就不用選,如果你用了SCSI的硬盤/光驅/磁帶等設備,自己找好了。   13. IEEE 1394(FireWire)support   這個是什麼?低版本的沒有見過,看看幫助再說。原來是要Fireware硬件來提高串行總線的性能,我沒有,不選了。   14. I2O device support   這個也不清楚,幫助裡說是這個需要I2O接口適配器才能支持的,在智能Input/Output(I2O)體系接口中使用,又是要硬件,不選了。   15. Network device support   網絡設備支持。上面選好協議了,現在該選設備了,可想而知,內容肯定多得很。還好還好,裡面大概分類了,有ARCnet設備、Ethernet(10 or 100 Mbit)、Ethernet(1000Mbit)、Wireless LAN(non-hamradio)、Token Ring device、Wan interfaces、PCMCIA network device support幾大類。我用的是10/100M的以太網,看來只需要選則這個了。還是10/100M的以太網設備熟悉,內容雖然多,一眼就可以看到我所用的RealTeck RTL-8139 PCI Fast Ethernet Adapter support,為了免得麻煩,編譯到內核裡面好了,不選M了,選Y。耐心點,一般說來你都能找到自己用的網卡。如果沒有,你只好自己到廠商那裡去要驅動了。   16. Amateur Radio support   又一個不懂的,應該是配置業余無線廣播的吧,沒有,不要了。   17. IrDA(infrared)support   這個要紅外支持,免了。   18. ISDN subsystem   如果你使用ISDN上網,這個就必不可少了。自己看著辦好了。   19. Old CD-ROM drivers(not SCSI、not IDE)   做的可真周到,原來那些非SCSI/IDE口的光驅誰還在用啊,自己選吧,反正我是用的IDE的CD-ROM,不選這個。   20. Character devices   字符設備。這個內容又太多了,先使用缺省設置,需要的話自己就修改。把大類介紹一下吧:   I2C support:I2C是Philips極力推動的微控制應用中使用的低速串行總線協議。如果你要選擇下面的Video For Linux,該項必選。   Mice:鼠標。現在可以支持總線、串口、PS/2、C&T 82C710 mouse port、PC110 digitizer pad,自己根據需要選擇。   Joysticks:手柄。即使在Linux下把手柄驅動起來意義也不是太大,游戲太少了。   Watchdog Cards:雖然稱為Cards,這個可以用純軟件來實現,當然也有硬件的。如果你把這個選中,那麼就會在你的/dev下創建一個名為watchdog的文件,它可以記錄你的系統的運行情況,一直到系統重新啟動的1分鐘左右。有了這個文件,你就可以恢復系統到重啟前的狀態了。   Video For Linux:支持有關的音頻/視頻卡。   Ftape, the floppy tape device driver:   PCMCIA character device support:   21. File systems   文件系統。內容又太多了,老法子,在缺省選項的基礎上進行修改。介紹以下幾項:   Quota support:Quota可以限制每個用戶可以使用的硬盤空間的上限,在多用戶共同使用一台主機的情況中十分有效。   DOS FAT fs support:DOS FAT文件格式的支持,可以支持FAT16、FAT32。   ISO 9660 CD-ROM file system support:光盤使用的就是ISO 9660的文件格式。   NTFS file system support:ntfs是NT使用的文件格式。   /proc file system support:/proc文件系統是Linux提供給用戶和系統進行交互的通道,建議選上,否則有些功能沒法正確執行。   還有另外三個大類都規到這兒了:Network File Systems(網絡文件系統)、Partition Types(分區類型)、Native Language Support(本地語言支持)。值得一提的是Network File Systems裡面的兩種:NFS和SMB分別是Linux和Windows相互以網絡鄰居的形式訪問對方所使用的文件系統,根據需要加以選擇。   22. Console drivers   控制台驅動。一般使用VGA text console就可以了,標准的80*25的文本控制台。   23. Sound   聲卡驅動。如果你能在列表中找到聲卡驅動那自然最好,否則就試試OSS了。   24. USB supprot   USB支持。很多USB設備,比如鼠標、調制解調器、打印機、掃描儀等,在Linux都可以得到支持,根據需要自行選擇。   25. Kernel hacking   配置了這個,即使在系統崩潰時,你也可以進行一定的工作了。普通用戶是用不著這個功能的。   配置完內核後就可以開始編譯了,linux 2.6.6 簡化了程序只需執行如下命令就可以了     #make //編譯內核和模塊   #make modules_install //安裝模塊   #make install //安裝內核和修改grub.conf 文件     Grub.conf 行如:     # grub.conf generated by anaconda   #   # Note that you do not have to rerun grub after making changes to this file   # NOTICE: You have a /boot partition. This means that   # all kernel and initrd paths are relative to /boot/, eg.   # root (hd0,1)   # kernel /vmlinuz-version ro root=/dev/hda3   # initrd /initrd-version.img   #boot=/dev/hda   default=0   timeout=10   title Red Hat Linux (2.6.6)   root (hd0,1)   kernel /vmlinuz-2.6.6 ro root=LABEL=/   initrd /initrd-2.6.6.img   title Red Hat Linux (2.4.20-   root (hd0,1)   kernel /vmlinuz-2.4.20-8 ro root=LABEL=/   initrd /initrd-2.4.20-8.img   title Windows Server 2003   rootnoverify (hd0,0)   chainloader +1     如果以上步驟沒有出錯的完成,那表示就可以了。   #reboot 後啟動 linux-2.6.6 內核吧!     如果編譯完 又不必要的模塊比如USB 聲卡等設備 可在 /etc/modules.conf 文件中注釋掉!這樣在啟動時就不會啟USB模塊了!     modules.conf 內容如下:   alias eth0 e100   #alias usb-controller ehci-hcd   #alias sound-slot-0 i810_audio   #post-install sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -L >/dev/null 2>&1 :   #pre-remove sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -S >/dev/null 2>&1 :   #alias usb-controller1 usb-uhci






Copyright © Linux教程網 All Rights Reserved