前言
有人问boot空间不足怎么办,实际上这个问题在硬盘空间不常见的时候不应该被提及。提问者画蛇添足,阅读网上的文章“优化”Linux空间,将boot分区独立设置位256M大小的xfs分区,导致系统无法正常升级内核。这个问题其实也很容易解决,修改默认设定即可。
解决方式
一个比较错误的方式是直接删除多余的内核。但是可能会移除错误,移除了过多的组件导致系统无法运行,或者内核删除错误,导致重启后找不到内核文件。
一般来说内核并不大,vmlinux一般是压缩文件的形式存在,一般是vmlinuz,而内核,除了rescue包含的内容大而全导致文件体积比较大,普通内核也没多大,256M空间可能也足够使用。
提问者询问的是CentOS,就以此系统为例。修改/etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=2
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
# This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll "gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
# It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
默认情况下installonly_limit=5,将5修改位2,系统就能减少保留的内核数量,每次升级就移除旧版本的内核。减少boot分区空间的占用。
在某一些情况下,例如服务器的运行内存比较大,而主系统存储器为了使用寿命考虑,需要尽可能减少对系统存储器的写入量,也可以编辑这个文件。例如利用tmpfs挂载/tmp,将此目录存放在内存中。如此设计,/tmp中的文件储存在内存中重启就会丢失。然后修改cachedir=/tmp/yum,每次更新系统获取到的几百兆写入量就可以直接进入内存,而不是频繁的触动系统盘的存储器。yum源本身更新较多,虽然安装软件包可能比较小,但是repo源如果加载的比较多,那么频繁改动的目录文件,仍然会产生比较多的写入量。运行结束后yum clean all 就可以删除cache下来的文件,释放内存占用。
红帽系系统解决方法如上,yum管理的方式与dnf管理的方式基本上没有太大的差距。deb系apt也差不多,通过snap管理也没有太大的差距,都是类似的方法。
其他
RH系主要的知名复刻系统都追求二进制兼容,而红帽系统本身作为商用系统稳定性是不错的,但是deb系即使是商用支持的ubuntu,也可能由于缺乏足够的真实环境考验,内核最好不要随便升级避免重启之后无法启动。相对来说ubuntu会比debian本身来的稳定可靠,具有更多的支援。大品牌的原厂支援系统往往是红帽、乌班图之类的,如果使用的CentOS,一般也不会有什么问题都能够给予基本技术支持,但是debian一般就不被支持了,哪怕大厂技术支持售后服务真的贴心,但是他们没有环境的系统,他们真的无法支持。红帽系目前看来吃枣药丸,ubuntu LTS 具有5年支持周期,还是可以用一下的。虽然寿命短了一倍,不过软件环境日新月异,ubuntu在新特性上比后续选择alma还是rocky似乎是要好许多的。
虽然国内许许多多的“系统”是在红帽系的基础上二开的,许多应用也以保障redhat为主要目标,但是依赖ubuntu的越来越多了。17年前,国内各种互联网“大厂们”通过一些渠道流出的加固、harden之类的用途的脚本都还是针对centos6的,从centos6结束延长支持之后,情况已经开始多样化了。
标签:系统,分区,boot,yum,内核,不足,ubuntu,红帽,metadata From: https://blog.51cto.com/infrado/7253982