當前位置:首頁 » 編程軟體 » centos7源碼編譯內核

centos7源碼編譯內核

發布時間: 2023-04-22 00:48:08

Ⅰ 如何升級centos7內核並且編譯

、使用 elrepo rpm包升級
查看前系統內核版本 uname -r
1. 導入key
rpm --import
2. 安裝 elrepo yum源
rpm -Uvh
3. 安裝內核
yumelrepo源新版本內核直接yum安裝即
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
5. 設置系統啟順序
查看系統啟項:
cat /boot/grub2/grub.cfg |grep menuentry
發現新版本內核設置新版本內核默認啟:
grub2-set-default 'CentOS linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
查看默認啟系統版本grub2-editenv list:
顯示'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
6. reboot重啟再查看 uname -r
二、使用源碼編譯安裝升級
1 載內核源碼
載網址
wget xxx
2 解壓並進入源碼目錄
3 更新系統並安裝依賴軟體
#yum update
#yum upgrade
#yum groups install Development Tools
#yum install ncurses-devel qt-devel hmaccalc zlib-devel binutils-devel elfutils-libelf-devel
4 前內核配置文件拷貝前目錄
本應該執行make menuconfig自定義內核配置配置文件.config; 直接使用原系統內核配置拷貝/boot目錄配置文件前目錄
cp /boot/config-2.6.32-431.11.2.el6.x86_64 .config
5 使用前內核配置
#sh -c 'yes "" | make oldconfig' #centos 6
#sh -c 'y "" | make oldconfig' #centos 7
6 編譯安裝
#make bzImage
#make moles
#make moles_install
#make install
7 設置系統啟順序
查看系統啟項:
cat /boot/grub2/grub.cfg |grep menuentry
發現新版本內核設置新版本內核默認啟:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
查看默認啟系統版本grub2-editenv list:
顯示'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
8 reboot重啟再查看 uname -r
-

Ⅱ centos 7如何獲取完整內核源碼

1. 下載內核
內核官網獲得了(不讓加鏈接,搜索linux內核官網 )
tar.xz 是完整的內核包
pgp 是.tar.sign後綴的文件,用於校驗類似於MD5
patch 是補丁包

2. 解壓文件,現在一般採用 .tar.xz 的壓縮格式(壓縮率最高,但是壓縮時間較長)。
/usr/src 一般而言、我們製做linux內核的時候源碼一般放在這個路徑下,
可以使用 # tar -Jxvf linux-3.13.2.tar.xz -C /usr/src/ 把文件解壓到 /usr/src/ 中(在root用戶下才有效)
3. 如果是第一次編譯內核,並沒有上次的殘留文件可以可以跳過
# make mrproper
這個步驟

注意:make clean 刪除大多數的編譯生成文件, 但是會保留內核的配置文件.config, 還有足夠的編譯支持來建立擴展模塊
make mrproper 刪除所有的編譯生成文件, 還有內核配置文件, 再加上各種備份文件
make distclean mrproper刪除的文件, 加上編輯備份文件和一些補丁文件。
4. 接下來是 make config 。
具體參照 《make config 的幾種類型》
一般採用 # make menuconfig 的方式
此處需要兩個包,選擇最簡單的yum安裝
# yum -y install gcc 和
# yum install ncurses ncurses-devel。
具體選項的作用參考 《Linux-3.10-x86_64 內核配置選項簡介 》
對新的內核功能選擇,並生成一個 .config 的文件

5. 編譯內核
# make 和 # make moles_install (此處命令必須進入/usr/src/linux-x-x-x/才有效,否則會報錯)

注意:2.6內核作了優化,不必顯示的執行make dep 和make bzImage,只需要直接執行
make 就行,系統會自動完成make dep 和 make bzImage 所做的工作。

6. 安裝內核
# make install

7. 修改默認啟動的內核(把游標處的default值改成0,就為默認啟動,編譯成功後默認為1)

# vim /boot/grub/grub.conf

用 cat /boot/grub/grub.conf 驗證並測試
# cat /boot/grub/grub.conf
看是否添加成功

8. 重啟機器,查看效果
默認的內核就是剛才編譯成功的。。。

Ⅲ 如何在 CentOS 7 中安裝或升級最新的內核

步驟 1:檢查已安裝的內核版本
讓我們安裝了一個發行版,它包含了一個特定版本的內核。為了展示當前系統中已安裝的版本,我們可以:
# uname -sr

在 CentOS 7 上檢查內核版本
如果我們現在進入 https://www.kernel.org/,在撰寫本文時,我們看到最新的內核版本是 4.10.1(其他版本可以從同一網站獲得)。
還要考慮的一個重要的事情是內核版本的生命周期 – 如果你當前使用的版本接近它的生命周期芹首結束,那麼在該日期後將不會提供更多的 bug 修復。關於更多信息,請參閱 內核發布 [2] 頁。
步驟 2:在 CentOS 7 中升級內核
大多數現代發行版提供了一種使用 yum 等包管理系統 [3] 和官方支持的倉庫升級內核的方法。
但是,這只會升級內核到倉庫中可用的最新版本 – 而不是在可用的最新版本。不幸的是,Red Hat 只允許使用前者升級內核。
與 Red Hat 不同,CentOS 允許使用 ELRepo,這是一個第三方倉庫,可以將內核升級到最新版本。
要在 CentOS 7 上啟用 ELRepo 倉庫,請運行:
# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

在 CentOS 7 啟用 ELRepo
倉庫啟用後,你可以使用下面的命令列出可用的內核相關包:
# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

yum – 找出可用的內核版本
接下來,安裝最新的主線穩定內核:
# yum --enablerepo=elrepo-kernel install kernel-ml

在 CentOS 7 中安裝最新的內核版本
最後,重啟機器並應用最新內核,接著運行下面的命令檢查最新內核版本:
uname -sr

驗證內核版本
步驟 3:設置 GRUB 默認的內核版本
為了讓新安裝的內核成為默認啟動選項,你需要如下修改 GRUB 配置:
打開並編輯 /etc/default/grub 並設置 GRUB_DEFAULT=0。意思是 GRUB 初始化頁面的第一個內核將作為默認內核。
GRUB_TIMEOUT=5
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"嫌沒數
接下來運行下面的命令來重新創建內核配置。
# grub2-mkconfig -o /boot/grub2/grub.cfg

在 GRUB 中設置內核
重啟並驗證最新的內核已作為默認內核。

Booting Default Kernel Version in CentOS 7
在 CentOS 7 中啟動默認內核版本
恭喜你!你已經在 CentOS 7 中升級內核了!
總結
在本文中,我們解釋了如何輕松升級系統上的 Linux 內核。我們還沒講到另外一個方法,因為它涉及從源代碼編譯內核,這可以寫成一本書,並且不推薦在生產系統上這么做。
雖然它是最好的學習體驗之一,並且允許細粒度配置內核,但是你察檔可能會讓你的系統不可用,並且可能必須從頭重新安裝它。 收起

Ⅳ CentOS 7 怎樣安裝或升級最新的內核

一、使用 elrepo 的rpm包升級
查看當前系統內核版本 uname -r
1. 導入key
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
2. 安裝 elrepo 的yum源
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
3. 安裝內核
在yum的elrepo源中,有最新版本內核。直接yum安裝即可。
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
5. 設置系統啟動順序
查看系統啟動項:
cat /boot/grub2/grub.cfg |grep menuentry
可以發現有最新版本的內核,此時可以設置最新版本內核為默認啟動:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
此時,查看默認啟動的系統版本grub2-editenv list:
顯示為'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
6. reboot,重啟之後再次查看 uname -r
二、使用源碼編譯安裝升級
1 下載內核源碼
下載網址為 https://www.kernel.org/
wget xxx
2 解壓並進入源碼目錄
3 更新系統並安裝依賴軟體
#yum update
#yum upgrade
#yum groups install Development Tools
#yum install ncurses-devel qt-devel hmaccalc zlib-devel binutils-devel elfutils-libelf-devel
4 將當前內核配置文件拷貝到當前目錄
本來是應該執行make menuconfig來自定義內核配置的,生成配置文件.config; 但是可以直接使用原來系統的內核配置,也就是拷貝/boot目錄下的配置文件到當前目錄。
cp /boot/config-2.6.32-431.11.2.el6.x86_64 .config
5 使用當前內核的配置
#sh -c 'yes "" | make oldconfig' #centos 6
#sh -c 'y "" | make oldconfig' #centos 7
6 編譯安裝
#make bzImage
#make moles
#make moles_install
#make install
7 設置系統啟動順序
查看系統啟動項:
cat /boot/grub2/grub.cfg |grep menuentry
可以發現有最新版本的內核,此時可以設置最新版本內核為默認啟動:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
此時,查看默認啟動的系統版本grub2-editenv list:
顯示為'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
8 reboot,重啟之後再次查看 uname -r

Ⅳ centos 7怎麼安裝編譯安裝二進制文件

安裝軟體包

rpm [option] /path/to/package_file

-i:安裝

-v:顯示安裝詳細信息

-h:以#號顯示安裝進度,每個#號代表2%的安裝進度

組合用法:rpm -ivh /path/to/package_file

--nodeps:安裝時忽略依賴關系。(此方式安裝的軟體可能運行不了)

--test:測試安裝,不是真正的安裝。

--replacepkgs:重新安裝(如果原有配置文件作了修改,很有可能不執行替換,而是將應該安裝生成的配置文件重命名為 .rpmnew)

卸載軟體包

rpm [option] package_name

-e:卸載(如果包的配置文件安裝後曾被改動過,卸載時,此文件將不會卸載,而是被重命名並保留,例如warning: /etc/zprofile saved as /etc/zprofile.rpmsave.)

--nodeps:卸載時忽略依賴關系(卸載後,依賴次軟體包的程序可能無法正常運行)

升級軟體包

rpm [option] /path/to/package_file

-Uvh:升級或安裝,如果舊版本的軟體包不存在,則安裝此軟體包;如果舊的軟體包存在,則升級舊軟體包。

-Fvh:純升級,如果舊版本的軟體包不存在,則不安裝此軟體包;如果舊的軟體包存在,則升級舊軟體包。

注意:不應該對內核執行升級操作,而是安裝。系統允許多內核並存

Ⅵ centos 7是什麼版本的內核

3.10.0內核。

CentOS 7於2014年7月7號正式發布,基於Red Hat紅帽免費公開的源代碼。

CentOS 7首個正式版的版本號為7.0.1406,主要更新內容如下:

1、內核更新至 3.10.0

2、支持 Linux 容器

3、Open VMware Tools 及 3D 圖像能即裝即用

4、OpenJDK-7作為預設 JDK

5、原地升級 6.5 至 7.0

(6)centos7源碼編譯內核擴展閱讀

在一台主機或VPS上安裝Centos7後,首要的工作是加強它的安全性,主要有:

1、更改root 密碼

若果是自行安裝 CentoS7的話,安裝叢段程序會自行設定root的密碼。不過很多VPS服務商只會提供預先安裝好的CentoS7映像檔,這種情況下他們會透過主控界面告訴root的密碼,這個密碼的安全性誰也不知道。

2、新增一個普通帳號

這一步連同下一步,相當於為一個城市築起兩道城牆,既可加強防滲讓譽滑鏈衛,也建立了一道警報機制,當敵人(黑客)卒然來襲,第一道城牆被襲擊和破壞,還有第二道城牆阻延一下,有時間部署防衛甚至反擊。所以這是一個很多人忽略,但其實非常重要的步驟。

3、禁止root 使用ssh登入

CentOS7默認容許任何帳號透過ssh登入,包括root 和一般帳號,為了不讓root帳號被黑客暴力入侵,必須禁止root 帳號的ssh功能,事實上root也沒有必要ssh登入伺服器,因為只要使用su或sudo當然需要輸入root的密碼)普通帳號便可以擁有root的許可權。

Ⅶ 如何在centos7中編譯linux內核

下載linux內核的源代碼,然後設置內核參數,然後編譯。

熱點內容
安卓jj比賽哪個版本有全記牌器 發布:2025-07-14 08:28:27 瀏覽:72
python腳本執行hive 發布:2025-07-14 08:26:24 瀏覽:488
媒體存儲可以刪除嗎 發布:2025-07-14 08:26:13 瀏覽:812
ios網易雲音樂上傳 發布:2025-07-14 08:16:58 瀏覽:392
榮耀8x可以用方舟編譯器嗎 發布:2025-07-14 08:09:49 瀏覽:277
雲伺服器商家怎麼購買 發布:2025-07-14 08:05:34 瀏覽:45
c語言convert函數 發布:2025-07-14 07:56:34 瀏覽:484
sql存儲過程列印 發布:2025-07-14 07:56:26 瀏覽:658
弄伺服器需要什麼語言 發布:2025-07-14 07:54:27 瀏覽:507
金土火的三才配置是什麼意思 發布:2025-07-14 07:51:21 瀏覽:774