centos7-14-升级系统内核到最新版
CentOS 升级系统内核到最新版
Linux centos7升级内核
1 Linux内核都有啥
极客漫画网站turnoff.us
这幅漫画是以一个房子的侧方剖面图来绘画的,使用这样的一个房子来代表Linux内核。
1.1 地基(file system)
作为一个房子,最重要的莫过于其地基,在这个图片里,我们也从最下面的地基开始看起:
地基(底层)由一排排的文件柜组成,井然有序,文件柜里放置着"文件",即电脑中的文件。
左上角,有一只胸前挂着421号牌的小企鹅,它表示着PID(Process ID,进程ID)为421的进程,它正在查看文件柜中的文件,这代表系统中正有一个进程在访问文件系统。
右下角有一只小狗,它是看门狗(watchdog),这代表对文件系统的监控。
1.2 一层
看完了地基,接下来我们来看地基上面的一层,都有哪些东西。
1.2.1 进程表(process table)
在这一层,最引人瞩目的莫过于中间的一块垫子,众多小企鹅围着桌子坐着,这个垫子的区域代表进程表。
左上角有一只站着的小企鹅,仿佛在说些什么,这显然是一位家长式的人物。它代表着Linux内核中的初始化(init)进程,也就是我们常说的PID为1的进程。
桌子上坐的小企鹅都在等待(wait)状态中,等待工作任务。不过看起来周围坐的那些小企鹅不是很听话,走神的、自顾自聊天的。
1.2.2 监控进程(watchdog process)
垫子(进程表)旁边也有一只小狗,它会监控小企鹅的状态(监控进程),当小企鹅们不听话时,它就会汪汪地叫喊起来。
1.2.3 http进程(httpd process)
在这层的左侧,有一只号牌为1341的小企鹅,守在门口,门上写着80,说明这个PID为1341的小企鹅负责接待80端口,也就是我们常说的HTTP(网站)的端口。
小企鹅头上有一片羽毛,这片羽毛大有来历,它是著名的HTTP服务器Apache的Logo。
1.2.4 FTP协议(21端口)
向右看,我们可以看到这里仍有一扇门,门上写着21,但是看起来这扇门似乎年久失修,上面的门牌号都歪了,门口也没人守着。
看起来这个21端口的FTP协议有点老旧了,目前用的人也比以前少了,以至于这里都没人接待了。
1.2.5 SSH(22端口)
而在最右侧的一个门牌号22的待遇就大为不同,居然有一只带着墨镜的小企鹅守着,看起来很酷,它是黑衣人叔叔吗?为什么要这么酷的一个企鹅呢?
因为22端口是SSH端口,是一个非常重要的远程连接端口,通常通过这个端口进行远程管理,所以对这个端口进来的人要仔细审查。
它身上写着52,说明它是第52个小企鹅。
在图片的左上角,有一个向下的台阶,这个台阶是通向底层文件系统的,进程们可以通过这个台阶,到文件系统中去读取文件,进行操作。
1.2.6 定时任务(crontab)
在这一层中,有一个身上写着217的小企鹅,它正满头大汗地看着自己的手表。这只小企鹅就是定时任务(Crontab),它会时刻关注时间,查看是否要去做某个工作。
1.2.7 管道(PipeLine)
在图片的中部,有两个小企鹅扛着管道(pipeLine)在行走,一只小企鹅可以把自己手上的东西通过这个管道,传递给后面的小企鹅。不过怎么看起啦前面这只企鹅(男)累得满头大汗,而后面那只企鹅(女)似乎游刃有余。
1.2.8 Wine进程(Wine Process)
在这一层还有另外的一个小企鹅,它手上拿着一杯红酒,身上写着411,看起来有点不胜酒力。它就是红酒(Wine)小企鹅,它可以执行一些来自Windows的任务。
1.3 跃层
在一层之上,还有一个跃层,这里有很多不同的屏幕,每个屏幕上写着TTY(这就是对外的终端)。
比如说最左边tty4上输入了freshmeat。
它旁边的tty2和tty3就正常多了,看起来是比较正常的命令。
tty7显示的图形界面,图形界面(X Window)一般就在7号终端。
tty5和tty6是空的,这表示这两个终端没人用。
tty1呢?
tty(终端)是对外沟通的渠道之一,但是不是每一个进程都需要tty,某些进程可以直接通过其它途径(比如端口)来和外部进行通信,对外提供服务。所以这一层不是完整的一层,只是个跃层。
2 Centos7更新内核
2.1 centos7默认内核版本
系统版本:CentOS 7.x
CentOS 7.x默认内核版本是Linux 3.10,我们需要部署K8s等项目需要高版本的内核。
一、Linux Kernel官方网站
(1)Prepatch:Prepatch 或 “RC” 内核是主要的内核预发行版本,主要针对内核开发人员和 Linux 爱好者。必须从源代码进行编译,并且通常包含必须在可以放入稳定版本之前进行测试的新功能。Prepatch 内核由 Linus Torvalds 维护和发布。
(2)Mainline:Mainline 主线树由 Linus Torvalds 维护。这个版本的内核会引入所有新功能。新的 Mainline 内核每 2-3 个月发布一次。
(3)Stable:每个主线内核被发布后,即被认为是“stable”。任何对 stable 内核的 BUG 修复都会从 Mainline 主线树中回溯并由指定的 stable 内核维护人员使用。 在下一个主线内核可用之前,通常只有几个 BUG 修复内核版本 - 除非它被指定为“longterm maintenance kernel(长期维护内核)”。stable 内核更新按需发布,通常每月 2-3 次。
(4)Longterm:通常会提供几个“longterm maintenance”内核版本,用于修复旧版内核的 BUG。这些内核只会修复重大 BUG,并且不会频繁发布版本。
二、ELRepo源网站
ELRepo项目重点关注与硬件相关的软件包,以增强您使用Enterprise Linux的体验。这包括文件系统驱动程序、图形驱动程序、网络驱动程序、声音驱动程序、网络摄像头和视频驱动程序。
(1)检查当前 CentOS 系统版本
#cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
(2)检查当前CentOS系统内核版本
#uname -sr
Linux 3.10.0-1127.el7.x86_64
2.2 升级系统
yum clean all #清除缓存
yum makecache fast #重新建立缓存
yum update -y #升级系统
reboot #重启系统
2.3 使用ELRepo源升级内核
(1)导入公钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
(2)CentOS-7安装ELRepo
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
(3)备份文件
cp /etc/yum.repos.d/elrepo.repo /etc/yum.repos.d/elrepo.repo.bak
(4)查看有哪些内核版本可供安装
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
内核版本说明:
#kernel-ml #主线版本,比较新,该版本比较激进,慎重选择。
#kernel-lt #长期支持版本,比较旧,安装的长期稳定版本,稳定可靠。
(5)安装新内核,这里安装长期版本
yum --enablerepo=elrepo-kernel install kernel-lt
2.4 设置系统默认内核
为了让新安装的内核成为默认启动选项,你需要如下修改GRUB配置:
(1)查看系统上的所有可用内核
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg0 : CentOS Linux (5.4.191-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1127.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-1062.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-adb83bd7911b1c45a946d60a476f19d1) 7 (Core)
(2)设置默认内核为我们刚才升级的内核版本
cp /etc/default/grub /etc/default/grub-bak #备份
grub2-set-default 0 #设置默认内核版本或者
vi /etc/default/grub
GRUB_DEFAULT=saved修改为:
GRUB_DEFAULT=0
:wq! #保存退出(3)重新创建内核配置
grub2-mkconfig -o /boot/grub2/grub.cfg(4)查看默认内核
grub2-editenv list(5)重启
reboot
现在系统默认内核已经是我们刚才升级后的最新版本
uname -sr
yum makecache #更新软件包
3 问题及解决
CentOS7用yum安装软件显示错误:cannot find a valid baseurl for repo: base/7/x86_64。
解决方案如下:
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
centos7-14-升级系统内核到最新版相关推荐
- centos7 离线升级/在线升级操作系统内核
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 一.前言 CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Ha ...
- centos7升级系统内核
文章目录 说明 分享 安装 查看系统内核 yum升级最新稳定版 导入仓库 查看可安装的软件包 安装更新 设置内核启动顺序 卸载内核 查看内核列表 删除多余内核 总结 说明 centos7 使用yum方 ...
- centos7.9 升级python3.9
centos7.9 升级python3.9 卸载自带python 安装新版 验证安装成功 CentOS7误删python2.7及yum后解决办法 在虚拟环境中升级python 不可行,只能系统中重新装 ...
- centos升级系统内核
centos7升级系统内核 1.查看当前内核版本 uname -a Linux localhost.localdomain 3.10.0-1160.25.1.el7.x86_64 #1 SMP Wed ...
- ISE 14.7安装教程最新版(Win10安装)——解决Win10安装完后打不开快捷方式的方法
ISE 14.7安装教程最新版(Win10安装)--解决Win10安装完后打不开快捷方式的方法 参考文章: (1)ISE 14.7安装教程最新版(Win10安装)--解决Win10安装完后打不开快捷方 ...
- centos7.x 升级svn版本到指定版本(1.10)
centos7.x 升级svn版本到指定版本 为什么要升级? 在测试过程中为了进行代码diff,需要使用svn的一些命令来进行自动化操作,发现本地和服务器的版本不一致,且服务器svn client的版 ...
- openssh rpm包_100台CentOS7要升级OpenSSH怎么办?
背景 现在有 100 台 Centos7 需要升级 OpenSSH 到 8.3,怎么办呢?一台台的操作显然不符合我摸鱼的风格,既然每台操作都一样,Ansible Roles 就有用武之地了. 正常升级 ...
- 如何将lnmp 0.5里面的php5.2.14升级到php 5.3.3???
如何将lnmp 0.5里面的php5.2.14升级到php 5.3.3??? --------------- 注意:不要百度Google找到的教程发来 那个升级不了::: CentOS5.3的php版 ...
- 100台CentOS7要升级OpenSSH怎么办?
100台CentOS7要升级OpenSSH怎么办? https://www.toutiao.com/i6898152133523227144/?tt_from=weixin&utm_campa ...
最新文章
- javascript 堆栈_JavaScript调用堆栈-它是什么以及为什么它是必需的
- hibernate -- 分页模糊查询中setParameter 和setParameterList
- Python3 出现'ascii' codec can't encode characters问题
- 【PC工具】200412更新百度网盘下载工具——最终最简单百度网盘下载方法及注意事项...
- 数据结构与算法之快速排序
- (54)FPGA基础编码D触发器(三)
- c语言强化训练作业整理1
- NopCommerce支持友好路由
- Vertx与Spring配合完成DML操作
- 转:Vss2005局域网开发权限设置指南
- 数值分析(8)-最佳一致逼近多项式
- 修改fstab导致UBUNTU无法启动的解决办法
- 关于BMC ipmi oem cmd和redfish
- MXF Operational Pattern 1a (OP1a)
- vue-awsome-swiper安装和css引入问题
- 特斯拉开火,状告5名前员工、小鹏汽车、Zoox身陷漩涡...
- 安徽省省二级c语言准考证号查询系统,网办进度考试查询系统
- css表格随内容变化,css 使表格随着内容自动适应宽度
- POT超阈值模型和极值理论EVT分析
- 1天 等于 86400 秒?