CentOS7使用yum和源码升级内核
admin
2023-03-12 20:01:20
0

两种方式升级内核

一、yum升级内核

参考:https://blog.csdn.net/kikajack/article/details/79396793

不多废话了,直接操作,原理看别的文章

1、uname -r
[root@localhost ~]# uname -r
3.10.0-957.el7.x86_64
2、备份数据
3、按照官方导入epel仓库

参考:http://elrepo.org/tiki/tiki-index.php

[root@localhost ~]# yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm -y
#就是一个repo仓库文件
[root@localhost ~]# rpm -ql elrepo-release-7.0-4.el7.elrepo.noarch
/etc/pki/elrepo
/etc/pki/elrepo/SECURE-BOOT-KEY-elrepo.org.der
/etc/pki/rpm-gpg
/etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
/etc/yum.repos.d
/etc/yum.repos.d/elrepo.repo
4、安装long term版本吧

参考:http://elrepo.org/tiki/kernel-lt

[root@localhost ~]# yum --enablerepo=elrepo-kernel install kernel-lt
5、查看已有的内核
# '作为分隔符,查找第一列为menuentry的行,打印改行的第二列,i++打印序号,除了数字和字母其他符号要引起来
[root@localhost ~]# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (4.4.190-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
2 : CentOS Linux (0-rescue-dd6fe5c491024a9486fa9acf832f21a6) 7 (Core)
6、命令设置grub
[root@localhost ~]# grub2-set-default 0
7、也可以修改/etc/default/grub,修改完记得重新生成配置文件
[root@localhost ~]# sed -i 's/GRUB_DEFAULT=saved/GRUB_DEFAULT=0/' /etc/default/grub
[root@localhost ~]# cat /etc/default/grub 
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg 
8、重启即可
9、清理旧内核(可选)

能不清理旧别清理吧,centos允许多内核共存

CentOS7使用yum和源码升级内核


二、源码编译内核

1、安装必要的包
[root@localhost ~]# yum install gcc ncurses-devel flex bison openssl-devel elfutils-libelf-devel -y
2、解压包
[root@localhost ~]# tar xf linux-5.2.11.tar.xz -C /usr/src/
[root@localhost ~]# cd /usr/src/linux-5.2.11/
3、cp一个配置文件稍作修改
[root@localhost linux-5.2.11]# cp /boot/config-3.10.0-957.el7.x86_64 .config
[root@localhost linux-5.2.11]# make menuconfig

加一个NTFS文件系统支持:

CentOS7使用yum和源码升级内核

[root@localhost linux-5.2.11]# grep -i  ntfs .config
CONFIG_NTFS_FS=m
CONFIG_NTFS_DEBUG=y
CONFIG_NTFS_RW=y
4、开始编译
[root@localhost linux-5.2.11]# make -j 4
#经过了一个多小时
[root@localhost linux-5.2.11]# du -sh .
12G .
[root@localhost linux-5.2.11]# find -name ntfs.ko
./fs/ntfs/ntfs.ko
5、安装模块
[root@localhost linux-5.2.11]# make modules_install

[root@localhost linux-5.2.11]# ls /lib/modules
3.10.0-957.el7.x86_64  4.4.190-1.el7.elrepo.x86_64  5.2.11-1.0-laowang_linux_x86_64
[root@localhost linux-5.2.11]# du -sh /lib/modules/5.2.11-1.0-laowang_linux_x86_64/
2.7G    /lib/modules/5.2.11-1.0-laowang_linux_x86_64/
6、安装内核
[root@localhost linux-5.2.11]# make install
7、关机,加个NTFS优盘,使用新内核启动,发现可以识别了

如果只是需要ntfs,只需安装ntfs-3g

[root@localhost ~]# uname -r
5.2.11-1.0-laowang_linux_x86_64
[root@localhost ~]# lsblk -f
NAME            FSTYPE      LABEL           UUID                                   MOUNTPOINT
sdb                                                                                
└─sdb1          ntfs        小黑屋          A0283A0D2839E2C8                       
sr0             iso9660     CentOS 7 x86_64 2018-11-25-21-21-31-00                 
sda                                                                                
├─sda2          LVM2_member                 h3lAZD-7e2i-TiO6-x0Bc-2b41-U15R-iGMXBG 
│ ├─centos-swap swap                        c06f8b43-1b47-4412-bae7-785f3b599368   [SWAP]
│ ├─centos-home xfs                         c30dee7e-0800-4737-b7b0-90db187eb3f8   /home
│ └─centos-root xfs                         444b91d1-7fde-4f5d-9016-ad7b63862a5d   /
└─sda1          xfs                         3778e6e0-8f51-4843-8b8f-239c8b5e826b   /boot
[root@localhost ~]# mount /dev/sdb1 /mnt/usb
[root@localhost ~]# ls /mnt/usb                    
8、更改启动优先级
#查看下
[root@localhost ~]# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.2.11-1.0-laowang_linux_x86_64) 7 (Core)
1 : CentOS Linux (4.4.190-1.el7.elrepo.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-dd6fe5c491024a9486fa9acf832f21a6) 7 (Core)
#设置5.2内核有限启动
[root@localhost ~]# grep -i default /etc/default/grub
GRUB_DEFAULT=0
#重新生成grub配置文件
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
9、手动删掉编译的内核
[root@localhost ~]# rm /boot/*5.2.11* -f
[root@localhost ~]# rm /boot/*5.2.11* -f
[root@localhost ~]# rm -rf /lib/modules/5.2.11-1.0-laowang_linux_x86_64/
[root@localhost ~]# rm -rf /usr/src/linux-5.2.11/
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg 

相关内容

热门资讯

音乐作品被白宫用于宣传打击伊朗... 据美国《国会山报》《华盛顿邮报》等多家媒体报道,美国流行歌手“水果姐”凯蒂·佩里当地时间25日在社交...
特朗普暂停空袭,美媒曝光核心原... 据《纽约时报》报道,在连续13晚对伊朗发动袭击后,7月25日,美军没有宣布任何夜间打击行动。据知情人...
一年内18次操纵证券市场,方某... 7月24日,根据中国证券监督管理委员会山东监管局发布的行政处罚决定书,方某军因一年内18次操纵市场的...
电热水器红色蓝色那里漏水 因为电热水器的发热器密封圈出现了破损,就会导致红色蓝色那里漏水;也有可能是由于电热水器的内胆出现了故...
电热水器漏水弹出一个圆片 可能是密封圈,是因为漏水造成这一部位出现问题,如果刚开始仅仅是滴水,慢慢的相邻的位置就开始出现侵蚀,...
电热水器为什么热水口不出水 因为温控器发生了故障,会导致电热水器的热水口不会出水;也有可能是因为对温控器所设置的水的温度太低;当...
电视不小心按成蓝屏了无信号 家里是机顶盒装置的电视,可以按遥控器上面的“信源”按键进行设置,一般选择正确的输入路径即可。如果家里...
格兰仕空调本机按钮按了没反应 造成了这种情况可能是因为电源未接好或没电,电源导线插座接触不良,电源电压低,会导致空调无法正常使用,...
付费学员投资亏损,任泽平“不荐... 近期,一张“泽平宏观VIP群”学员亏损超千万的截图近日在网络流传,引发市场关注。截图显示,一名付费会...
韩国芯片“爆单”背后:离不开中... 韩国公布的最新数据显示,2026年6月该国半导体出口同比大增199.5%,达到448亿美元,占韩国出...