Appearance
CentOS7最后的挣扎
CentOS7已于2024年6月30日正式结束维护,再也不会有关于这个系统的官方更新。
对应的官方仓库和第三方仓库基本都已经移除,只剩少量的镜像站继续维护归档的Vault镜像,但是稳定性和可用性也没有保证。
可以宣布CentOS7正式开寄!建议迁移到其他的代餐系统。
那么,一时半会无法迁移的CentOS7要怎么处理呢。
写在前面
生产力肯定是建议迁移到其他代餐系统的,用下面的方法也是治标不治本,甚至可能会搞坏原有的系统。 做什么之前都要记得做好备份,不要寄上加寄!
仓库源
直接用中科大的就好了!
sed -i.bak \
-e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://mirror.centos.org/centos|baseurl=https://mirrors.ustc.edu.cn/centos-vault/centos|g' \
/etc/yum.repos.d/CentOS-Base.repo
OpenSSH升级
OpenSSH目前还可以通过源码包自编译的方式继续更新,这里是一个制作RPM包的github项目:
aHR0cHM6Ly9naXRodWIuY29tL2JveXB0L29wZW5zc2gtcnBtcw==
按readme可以在CentOS7上完成rpm包的制作,并分发到其他主机。
一些碎碎念:
#更新命令
rpm -Uvh openssh-*.rpm
#安装后某些文件的权限问题可能导致sshd起不来
chmod 600 /etc/ssh/ssh_host_*_key
内核升级
以往安装比官方新的内核都是采用elrepo仓库提供的内核通道的,但是现在官方elrepo仓库也已经移除对CentOS7的支持,只能通过归档库获取文件(详见下一节)。
#手动下载内核
#最新的稳定主线(mainline stable)内核,需要herders/tools/doc的另自行下载
wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-ml-6.9.7-1.el7.elrepo.x86_64.rpm
wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-ml-devel-6.9.7-1.el7.elrepo.x86_64.rpm
#长期支持(long term support)内核,需要herders/tools/doc的另自行下载
wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-5.4.278-1.el7.elrepo.x86_64.rpm
wget https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-ml-devel-6.9.5-1.el7.elrepo.x86_64.rpm
#安装
rpm -ivh 对应的rpm文件
#查看现有内核启动顺序,新安装的内核应该在最上面
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
#修改默认启动顺序,此处设置顺序第一的内核,计数从0开始
grub2-set-default 0
#生成新的启动文件
grub2-mkconfig -o /boot/grub2/grub.cfg
#重启看看
reboot
elrepo归档仓库
这是一个归档的elrepo的归档仓库:
aHR0cHM6Ly9taXJyb3JzLmNvcmVpeC5uZXQvZWxyZXBvLWFyY2hpdmUtYXJjaGl2ZS8=
Nginx升级
目前nginx官方还提供有nginx的yum源,可以直接使用更新
#创建yum的repo文件
nano /etc/yum.repos.d/nginx.repo
----------
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
----------
#默认会使用稳定版本,如果要使用主线版本可以使用以下命令
yum-config-manager --enable nginx-mainline
#直接yum命令安装即可
yum install nginx
最后
升级内核还是有风险的,在生产环境动手还是要想清楚。
基本升级一下OpenSSH和Nginx就好了(逃
还是尽早迁移到还在维护的系统吧