今天給大家分享一篇ubuntu更換內(nèi)核的系列文章之一。為什么要換內(nèi)核呢,這個(gè)對(duì)于我們大部分人有一樣的原因,例如你要跑的某個(gè)包只能在某一個(gè)特定的內(nèi)核版本,或者你升級(jí)了你的ubuntu內(nèi)核導(dǎo)致你的電腦驅(qū)動(dòng)等出現(xiàn)問(wèn)題,所以你需要更換你系統(tǒng)的內(nèi)核。
歡迎關(guān)注微信公眾號(hào):羽林君,或者添加作者個(gè)人微信:become_me
情節(jié)介紹:
我也遇到類似的問(wèn)題,在解決問(wèn)題的過(guò)程中,發(fā)現(xiàn)和網(wǎng)上的文章有些不一樣,甚至有些操作可以讓我們更快的更換內(nèi)核。所以特來(lái)分享一下。這里我就是按照自己遇到的情況,給大家做一個(gè)簡(jiǎn)單的分享。
步驟一:查看自己的版本,進(jìn)行安裝下載
首先我先來(lái)查看一下我當(dāng)前的內(nèi)核版本 我現(xiàn)在是5.11.0-38的版本,而我需要將我ubuntu內(nèi)核修改為需要5.8.0-63
uname?-a
Linux?lyn?5.11.0-38-generic?#42~20.04.1-Ubuntu?SMP?Tue?Sep?28?20:41:07?UTC?2021?x86_64?x86_64?x86_64?GNU/Linux
查詢Linux指定版本的鏡像:
apt-cache?search?linux|?grep?5.8.0-63
一般來(lái)說(shuō)我們有幾種方式去安裝你對(duì)應(yīng)的內(nèi)核,從官網(wǎng)上下載.deb包安裝(下面有描述),也可以使用
apt-cache?search?linux
命令進(jìn)行查找我們系統(tǒng)里面是否有對(duì)應(yīng)的安裝包選項(xiàng),用apt-get install 進(jìn)行安裝會(huì)很快。
1、如果查詢不到,可以在/etc/apt/sources.list配置中,加入源:deb http://security.ubuntu.com/ubuntu trusty-security main
2、也可以在http://kernel.ubuntu.com/~kernel-ppa/mainline/網(wǎng)站中找到所需的deb包
安裝上面查到的指定版本內(nèi)核的linux系統(tǒng)頭文件及鏡像
安裝結(jié)束后,我們可以查看此時(shí)系統(tǒng)里面安裝好的內(nèi)核版本
其中可以看到5.8.0-63已經(jīng)安裝完成
dpkg --get-selections ?| grep linux-image
步驟二:安裝顯卡和網(wǎng)卡等驅(qū)動(dòng)
其實(shí)步驟二是我的步驟三,因?yàn)榇蟛糠纸榻B的文章中都是安裝內(nèi)核之后直接進(jìn)行內(nèi)核啟動(dòng)順序配置,然后我按照對(duì)應(yīng)內(nèi)核啟動(dòng)進(jìn)去之后,發(fā)現(xiàn)我的電腦的顯卡和網(wǎng)卡等驅(qū)動(dòng)無(wú)法使用。
網(wǎng)上給的參考意見(jiàn),都是讓我用lsb_release -a命令之后,查看自己對(duì)應(yīng)的網(wǎng)卡驅(qū)動(dòng)型號(hào),去官網(wǎng)下載驅(qū)動(dòng)包進(jìn)行編譯和安裝。
但是我不想進(jìn)行隨意下載編譯和安裝,所以我去電腦里面一點(diǎn)點(diǎn)搜索對(duì)應(yīng)的包,看是否是自己遺漏了包。果然在一番對(duì)照下,我用dpkg --get-selections ?| grep linux(之前是grep linux-image命令,主要查看鏡像,沒(méi)有查看對(duì)應(yīng)的配套的驅(qū)動(dòng)包)命令比對(duì)出,我電腦本身完好驅(qū)動(dòng)的5.11內(nèi)核對(duì)應(yīng)的全部包和我后續(xù)回退版本5.8.0的區(qū)別,發(fā)現(xiàn)我缺少與之對(duì)應(yīng)的 modules-extra和tools包,
dpkg?--get-selections??|?grep?linux
查找到之后,我直接進(jìn)行apt-get install進(jìn)行安裝這兩個(gè)包
安裝完之后進(jìn)行重啟,機(jī)器正常運(yùn)行,顯卡驅(qū)動(dòng)和網(wǎng)卡驅(qū)動(dòng)正常工作。后來(lái)我發(fā)現(xiàn),我們也可以在官網(wǎng)去下載對(duì)應(yīng)的.dep,進(jìn)行dep包的安裝。
步驟三:選擇對(duì)應(yīng)內(nèi)核做第一啟動(dòng)
首先查看當(dāng)前系統(tǒng)中內(nèi)核的啟動(dòng)順序
grep?'menuentry'?/boot/grub/grub.cfg
menuentry?'Ubuntu,Linux?5.8.0-63-generic'?--class?ubuntu?--class?gnu-linux?--class?gnu?--class?os?$menuentry_id_option?'gnulinux-5.8.0-63-generic-advanced-f44d1976-8e56-4c37-8ce1-d345b8f923ea'?{
??menuentry?'Ubuntu,?with?Linux?5.8.0-63-generic?(recovery?mode)'?--class?ubuntu?--class?gnu-linux?--class?gnu?--class?os?$menuentry_id_option?'gnulinux-5.8.0-63-generic-recovery-f44d1976-8e56-4c37-8ce1-d345b8f923ea'?{
例如,這里我想要更換5.8.0-63,就選擇 Ubuntu,Linux 5.8.0-63-generic這一欄,注意不是(recovery mode).
復(fù)制上面信息中menuentry之后的單引號(hào)內(nèi)的字符串
比如我是Ubuntu,Linux 5.8.0-50-generic
再修改內(nèi)核啟動(dòng)順序
注意:如果你升級(jí)的版本比當(dāng)前內(nèi)核版本高的話,默認(rèn)新安裝的內(nèi)核就是第一順序啟動(dòng)的,只需重啟系統(tǒng)就行了,否則,則需要修改配置文件,具體如下:
vi?/etc/default/grub
GRUB_DEFAULT=0
修改為
GRUB_DEFAULT=”Ubuntu,Linux 5.8.0-50-generic“
如果遇以下警告
警告:Please don't?use?old?title?`Ubuntu,Linux?5.8.0-63-generic'?for?GRUB_DEFAULT,?use?`Advanced?options?for?Ubuntu>Ubuntu,Linux?5.8.0-63-generic'?(for?versions?before?2.00)?or?`gnulinux-advanced-f44d1976-8e56-4c37-8ce1-d345b8f923ea>gnulinux-5.8.0-63-generic-advanced-f44d1976-8e56-4c37-8ce1-d345b8f923ea'?(for?2.00?or?later)
那我們還需要把 GRUB_DEFAULT=”Ubuntu,Linux 5.8.0-50-generic“
修改為
GRUB_DEFAULT=”Advanced options for Ubuntu>Ubuntu,Linux 5.8.0-50-generic“
生效配置
sudo?update-grub
然后關(guān)機(jī)重啟,上面是修改系統(tǒng)內(nèi)核啟動(dòng)步驟,但是我遇到一些問(wèn)題,并不是很順利,我中間還用了手工選項(xiàng),進(jìn)入我對(duì)應(yīng)的內(nèi)核中,下面是對(duì)應(yīng)的選項(xiàng)。
在重啟后的電腦初始化選項(xiàng)中選擇ubuntu的高級(jí)選項(xiàng)
進(jìn)入之后選擇你對(duì)應(yīng)要使用的內(nèi)核
成功進(jìn)入
結(jié)語(yǔ)
這就是我分享我在ubuntu使用中降低內(nèi)核的使用的情況,如果大家有更好的想法和需求,也歡迎大家加我好友交流分享哈。
作者:良知猶存,白天努力工作,晚上原創(chuàng)公號(hào)號(hào)主。公眾號(hào)內(nèi)容除了技術(shù)還有些人生感悟,一個(gè)認(rèn)真輸出內(nèi)容的職場(chǎng)老司機(jī),也是一個(gè)技術(shù)之外豐富生活的人,攝影、音樂(lè) and 籃球。關(guān)注我,與我一起同行。