Debian升級內核到3.2的方法


最近用上華為的3G網卡,型號是E353,可能是設備太新,我的蝶變(Debian)死活不支持,后來google到3.2.0-rc5的kernel changelog,里面有一行說添加了HUAWEI E353的支持,這回妥了,毫不猶豫趕緊上吧!

方法一:(這個方法不推薦於是,按着網上找到的步驟:

首先,修改/etc/apt/sources.list,如果其中有含cdrom這行,用“#”號注釋掉該行。

然后,打開終端Terminal,運行

#apt-get update

#apt-get install build-essential

這步將裝上如gcc等的所有基本軟件工具,由於打算使用X-Window中的xconfig界面來配置內核,所以,需要安裝qt3,運行命令

#apt-get install pkg-config qt3-dev-tools libqt3-headers libqt3-mt-dev qt3-qtconfig qt3-doc

然后在http://www.kernel.org/上下載最新的Linux Kernel。

我升級時,最新內核文件是linux-3.2-rc7.tar.bz2

#tar -jxvf linux-3.2-rc7.tar.bz2

#cd linux-3.2-rc7

#make xconfig

X-Window下的內核配置命令,在出現的頁面中,我沒有修改任何參數,直接保存&退出 的。網友可以根據自己的實際情況修改,不過一定要確定沒有錯誤。

#make dep //這步應該是檢查依賴關系

#make clean //如果是第一次編譯新下載的內核,這步可省略

#make bzImage //生成新內核的鏡像,這里時間比較長

#make modules //編譯外掛模塊,這時間最長

#make modules_install //安裝模塊

#depmod –a //創建模塊的鏈接

-------------------------------------------------------------------------------------------------

#make install //這步創建System.map與vmlinuz。

若不成功,需要手動創建,進入/boot文件夾下,執行

#cd /boot

#cp /usr/src/linux/System.map System.map-2.6.36.2

#cp /usr/src/linux//arch/i386/boot/bzImage vmlinuz-2.6.36.2

不過,正常情況下,上三步不用執行,make install已經創建好了鏈接。

---------------------------------------------------------------------------------------------------

最后
mkinitramfs -o /boot/initrd.img-2.6.36.2

#sudo update-grub


//如果出現

Generating grub.cfg ...
Found Debian background: linuxdeepin.png
Found linux image: /boot/vmlinuz-2.6.36.2
Found initrd image: /boot/initrd-2.6.36.2.img
Found linux image: /boot/vmlinuz-2.6.35-24-generic-pae
Found initrd image: /boot/initrd.img-2.6.35-24-generic-pae
Found memtest86+ image: /boot/memtest86+.bin
說明成功了。

#sudo reboot //重新啟動機器體驗新的內核吧!

-----------------------------------------------------------------------

到此為止,整個內核的編譯就全部完成啦。

不過也許你重啟系統時,雖然啟動菜單中增加了新內核2.6.34的啟動項,但極可能會啟動失敗,出現以下提示:

warning:can't open directory /lib/modules/2.6.34/modules.dep,no such files or directory

選擇從舊內核啟動登錄系統,然后執行以下命令(為了避免輸入錯誤,最好復制下面的命令)修改后就能成功啟動新內核了。

######################################
sudo su (保證獲得root權限,否則會提示權限不夠,不能成功完成任務哦)
cd /boot
cp initrd.img-2.6.36 initrd-2.6.36.old (先做一個備份以防萬一,哈哈)
depmod -a
update-initramfs -k 2.6.36 -c
cd /tmp
gzip -dc /boot/initrd.img-2.6.36| cpio -id
touch lib/modules/2.6.36/modules.dep
find ./ | cpio -H newc -o > /boot/initrd.img-2.6.36.new
gzip /boot/initrd.img-2.6.36.new
cd /boot
mv initrd.img-2.6.36.new.gz initrd.img-2.6.36

######################################

重新啟動后,發現可以成功的進入,不放心的話,可以確定一下:

進入終端

#uname -a 查看結果


按照這個步驟之后,我的內核就編譯完成了,其中可能會遇到不能通過uuid識別設備,導致無法掛載到/root的問題,這里再重新mkinitramfs一下就行了。

有些情況是重啟后停止在黑屏左上角光標不停閃爍的地方,這個情況大多是因為顯卡驅動的問題,你可以進入恢復模式,重裝顯卡驅動。


裝好后,對華為e353的支持幾乎完美,個人感覺比在windows下的強多了!爽啊:D

上靚圖一張(注意左下角的圖標就是連上3G的樣子):

 



方法二:(推薦

編輯/etc/apt/sources.list文件,然后添加一個向后兼容的源:

deb http://ftp.cn.debian.org/debian-backports squeeze-backports main

然后:

aptitude update

aptitude -t squeeze-backports install linux-image-3.2.0-0.bpo.1-686-pae

如果編譯NVDIA的官方驅動的話,還要裝:

aptitude -t squeeze-backports install linux-headers-3.2.0-0.bpo.1-686-pae

然后重啟安裝NV驅動,然后再重啟就行了!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM