Centos6.8系统怎么解决“/boot”分区满了

一天服务器生产环境Centos6.8系统,报警/boot分区快满了,于是登录服务器查看磁盘空间:

[[email protected] ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        79G  9.9G   65G  14% /
tmpfs           4.0G     0  4.0G   0% /dev/shm
/dev/sda1        93M   76M   13M  86% /boot
/dev/sda6       125G   20G   99G  17% /data
/dev/sda3       7.8G   18M  7.4G   1% /tmp
tmpfs           8.1G  494M  7.6G   7% /data/ramdisk
[[email protected] ~]# 

我嚓,/boot分区怎么采用的是默认的分区100M,尼玛,一看就是新手给安装的系统,平时/boot分区一般给200M的。
报警了,咱就得立刻处理问题。毕竟是生成环境,而且还是/boot分区快满了,这个/boot分区操作时一定小格外的小心,应为服务器启动是从此处加载内核的,如果操作不当,很可能到导致服务器系统奔溃,导致服务器系统重启时启动不了,那样的话真的是想死的心都有了。

接下来是处理的过程:
1.首先查看当前服务器系统采用的内核版本是什么:

[[email protected] ~]# uname -a
Linux localhost.localdomain 2.6.32-642.15.1.el6.x86_64 #1 SMP Fri Feb 24 14:31:22 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[[email protected] ~]# 

2.查看当前服务器安装的内核相关的软件都有哪些:

[[email protected] ~]# rpm -qa|grep kernel
abrt-addon-kerneloops-2.0.8-40.el6.centos.x86_64
kernel-2.6.32-642.15.1.el6.x86_64
kernel-2.6.32-573.el6.x86_64
libreport-plugin-kerneloops-2.0.9-32.el6.centos.x86_64
kernel-abi-whitelists-2.6.32-642.15.1.el6.noarch
dracut-kernel-004-409.el6_8.2.noarch
kernel-firmware-2.6.32-642.15.1.el6.noarch
kernel-doc-2.6.32-642.15.1.el6.noarch
kernel-devel-2.6.32-696.16.1.el6.x86_64
kernel-devel-2.6.32-573.el6.x86_64
kernel-headers-2.6.32-642.15.1.el6.x86_64

我去,发现里面有2个版本的内核(之前一定是新手升级过内核,线上一般要求:配置环境发布系统之后,最后不要做升级与删除内核的操作)
而且是当前使用的高版本的内核kernel-2.6.32-642.15.1.el6.x86_64,于是决定卸载掉不在使用低版本的内核。(当然线上的环境是不建议这么干的,更不建议随意删除即使不在使用的旧版本内核)

友情提示:

第一:安装系统时,空间一定要合理分配好;
第二:一般安装好系统后,可以upgrade或update升级,但是一旦生成环境开始发布了,就最好不要在upgrade或update升级了,除非是迫不得已,或者是自己想屎。
第三:选择稳定内核版本
第四:升级后也不要随意删除旧版本内核,
第五:操作前一定要做好相关数据的备份。

说了这么多不建议删除旧版本的内核,但是为啥我还是要删除旧版本内核呢?因为我已经把生产上的这台报警的机器剔除了,所以才敢这么胆大妄为的干。当时我这么操作也是还是比较小心的,因为我可不想把机器正挂了,跑机房重新安装系统。

3.删除不是当前在使用的旧版本的内核和依赖:


 yum remove    kernel-2.6.32-573.el6.x86_64    kernel-devel-2.6.32-573.el6.x86_64 

4.此时查看磁盘空间,立马见效:


[[email protected] ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        79G  9.7G   65G  13% /
tmpfs           4.0G     0  4.0G   0% /dev/shm
/dev/sda1        93M   38M   51M  44% /boot
/dev/sda6       125G   20G   99G  17% /data
/dev/sda3       7.8G   18M  7.4G   1% /tmp
tmpfs           8.1G  488M  7.6G   6% /data/ramdisk
[[email protected] ~]# 

5.本着怀疑的精神,我还是有点不放心,于是在卸载完旧版本的内核后,reboot重启系统,看机器到期能起来不:
reboot 机器,过了5分钟机器成功了起起来了。而且boot分区成功了瘦身了,此时心里才得以长舒口气。

6.下面的这个生产例子是:系统采用的是老版本的内核,但是/boot/分区下却多了个新版本的内核,从而导致/boot分区满了。
于是咱们就卸载掉不在使用中的新版内核

[[email protected] ~]# uname -a
Linux localhost.localdomain 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[[email protected] ~]# rpm -qa|grep kernel
kernel-devel-2.6.32-696.16.1.el6.x86_64
kernel-2.6.32-642.15.1.el6.x86_64
kernel-firmware-2.6.32-642.15.1.el6.noarch
kernel-headers-2.6.32-642.15.1.el6.x86_64
kernel-devel-2.6.32-573.el6.x86_64
kernel-devel-2.6.32-642.15.1.el6.x86_64
libreport-plugin-kerneloops-2.0.9-32.el6.centos.x86_64
abrt-addon-kerneloops-2.0.8-40.el6.centos.x86_64
dracut-kernel-004-409.el6_8.2.noarch
kernel-2.6.32-573.el6.x86_64

卸载掉不在使用中的内核:

[[email protected] ~]# yum remove kernel-2.6.32-642.15.1.el6.x86_64 kernel-devel-2.6.32-642.15.1.el6.x86_64 

[[email protected] ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        79G  4.6G   71G   7% /
tmpfs           4.0G     0  4.0G   0% /dev/shm
/dev/sda1        93M   40M   49M  46% /boot
/dev/sda6       125G   19G  100G  16% /data
/dev/sda3       7.8G   18M  7.4G   1% /tmp
tmpfs           8.1G  515M  7.6G   7% /data/ramdisk

reboot重启服务器后登录服务器确认/boot分区瘦身成功:

[[email protected] ~]# uname -a
Linux localhost.localdomain 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

[email protected] ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        79G  4.6G   71G   7% /
tmpfs           4.0G     0  4.0G   0% /dev/shm
/dev/sda1        93M   40M   49M  46% /boot
/dev/sda6       125G   19G  100G  16% /data
/dev/sda3       7.8G   18M  7.4G   1% /tmp
tmpfs           8.1G  515M  7.6G   7% /data/ramdisk

[[email protected] ~]# rpm -qa|grep kernel
kernel-devel-2.6.32-696.16.1.el6.x86_64
kernel-firmware-2.6.32-642.15.1.el6.noarch
kernel-headers-2.6.32-642.15.1.el6.x86_64
kernel-devel-2.6.32-573.el6.x86_64
libreport-plugin-kerneloops-2.0.9-32.el6.centos.x86_64
abrt-addon-kerneloops-2.0.8-40.el6.centos.x86_64
dracut-kernel-004-409.el6_8.2.noarch
kernel-2.6.32-573.el6.x86_64

原文地址:http://blog.51cto.com/wujianwei/2330705

时间: 2024-11-09 10:05:37

Centos6.8系统怎么解决“/boot”分区满了的相关文章

Linux操作系统怎么解决“/boot”分区满了

生产服务器: OS:CentOS 6.8 任务:yum upgrade   #升级软件包,但不更改软件和系统配置,不升级内核. 问题: 运行 rpm_check_debug 执行事务测试 事务测试出错: installing package kernel-2.6.32-642.11.1.el6.x86_64 needs 15MB on the /boot filesystem 出错情况 ------------- 磁盘要求: At least 15MB more space needed on

Ubuntu boot分区满了,解决办法

查看当前系统启动用的内核版本 [email protected]:/boot# uname -rm 4.4.0-92-generic x86_64 [email protected]:/boot# 列出安装过的内核版本 [email protected]:/boot# dpkg --get-selections |grep linux-image linux-image-4.4.0-21-generic deinstall linux-image-4.4.0-45-generic deinsta

CentOS 6系统中/boot恢复被删除的/boot分区 简单介绍

在CentOS 6系统中,因为不小心或操作失误导致boot分区被删除, 遇到这种情况是否能够恢复被删除的boot分区呢? 1.首先利用centos6镜像进入linux rescue救援模式. 2.启动sshd服务,查看eth0获取的ip地址,然后用ssh secure shell 连接. SSH Secure Shell 3.2.9 (Build 283) Copyright (c) 2000-2003 SSH Communications Security Corp -  http://www

CentOS6启动流程呢个以及删除boot分区相关实验

centos6启动流程 主动读取BIOS,通过CMOS加载硬件信息 ,并进行POST,指定第一个可启动的设备 ROM:BIOS,Basic Input and Output System,保存着计算机系统最重要的基本输入输出程序,系统信息设置,开机加电自检程序RAM:保存各项参数的设定 读取第一个可启动设备MBR的引导加载程序(grub)的启动信息 MBR: 446 boot loader 64:分区表 2 :55aa BIOS通过硬件的INT13中断功能来读取MBR的 Windows:ntlo

RHEL6系统boot分区损坏恢复方法

不小心格式化掉boot分区,或者删除了/boot下的引导文件,会出现以下提示 解决办法: 一.插入linux安装光盘(此以rhel6.4为例) 二.开机选择光驱启动,选择修复模式 三.语言选择english 四.键盘布局选择us 五.由于使用的是光盘引导,所以安装镜像选择本地cd/dvd 六.选择是否启用网络,由于是本地光驱引导所以可以选择NO不启用 七.选择继续 八.下图告知系统根目录是在/mnt/sysimage   可使用chroot命令更改 九.选择启动shell shell  star

CentOS6.5系统挂载NTFS分区的移动硬盘

CentOS6.5系统挂载NTFS分区的移动硬盘 作为IT的工作者,避免不了使用Linux系统,我现在使用的系统是CentOS6.5 X86_64位版本,但是插入NTFS移动硬盘没有办法识别.通过下面三步就可以使CentOS识别NTFS分区的移动硬盘. 第一步:下载rpmforge,下载对应的版本,就是对应CentOS版本,还有32位与64位也要对应上.rpmforge拥有4000多种CentOS的软件包,被CentOS社区认为是最安全也是最稳定的一个软件仓库. 下载地址"http://pkgs

ubuntu-14.04中/boot分区不足的解决办法

环境:ubuntu-kylin 或者 ubuntu-14.04,/boot单独分区工具:ubuntu的liveCD. 问题: 由于当初安装的时候,看网上说/boot很小,100M足以,于是单独分区,分了100M,结果实际上装好以后,我的/boot只有88M(因为分区时和装好后系统对于容量的计算方法不同).这就带来一个问题,ubuntu过个两三天就会有一些更新,每次都有有内核更新,每次提示/boot太小,不能更新,很是麻烦.所以我需要把/boot扩大./boot没有单独分区的不会存在这个问题. 大

【问题】CentOS6.5系统"libc.so.6: version 'GLIBC_2.15' not found"解决方法

出现"libc.so.6: version 'GLIBC_2.15' not found"问题,是由于glibc版本过低,升级glibc即可. 由于CentOS系统RPM源目前glibc最高版本是2.12,所以只能采用源码升级 一.查看系统glibc支持的版本 strings /lib64/libc.so.6 |grep GLIBC#查看当前glibc版本ll /lib64/libc.so.6 lrwxrwxrwx. 1 root root 12 Oct  9  2014 /lib64

解决Ubuntu 16.04下提示boot分区空间不足的办法

原文地址: http://www.jb51.net/article/106976.htm https://www.linuxidc.com/Linux/2015-09/123227.htm 因为linux内核一直在更新,更新后,旧的内核就不在使用,但旧的内核文件还在boot里面,占据着空间,更新几次过后boot分区就会被占满,显示boot磁盘空间不足. 解决办法: 将不用的内核文件删除,释放空间. 步骤如下 一.查看已安装的内核dpkg --get-selections |grep linux-