欢迎大家观看生产环境作大死系列文章,本文将带领大家进入一位妈的智障的博主的心路历程,领略这个人是多么的无可救药。_(:3」∠)_

我是副标题:一个巧合引发的血案

 

言归正传,一个巧合导致生产环境的服务器因为它下线 15 个小时,所以有必要把这件事记录下来,以示警醒_(:3」∠)_

 

阐清:标题将“删除 CentOS 旧的内核版本”设定为愚蠢的行动,不是因为删除它是不行的,也不是删除后有什么副作用,愚蠢仅仅是人品差(为何知道脸黑还作死)导致服务器下线,所以这样定位。

 

CentOS 上系统安装了新的内核 (kernel) 后,旧的内核并不会自动删除,进而占用多余的磁盘空间。

删除 CentOS 上的旧版本的内核,这个根本不应该由我写成博文,因为删除的方法在网上比比皆是,任何搜索引擎都可以给你翻出几十页清理方法…只是因为这个巧合…

 

先提供正统的删除方法

uname -r
#获得服务器当前运行的内核版本

rpm -qa | grep kernel
#获得当前系统安装的所有内核(也有其他的)

在全部内核的列表中,可以删除有版本号的内核,其他就不要删了

在列表中,会发现 kernel-版本号kernel-devel-版本号kernel-firmware-版本号kernel-headers-版本号的内容,每种至少保留一个版本吧

接下来可以选择两种命令:

#第一种
yum remove kernel
#这种方法是删除系统中除了正在使用的内核外的其他所有内核
#过程中会出现[Y/N]选项,Y删除

#第二种
yum remove 具体内核名
#这种方法是将内核一个一个删除

最后一步:重启(reboot),清理完成

下面附上博主想要删除的内核:

删除部分不用的内核
删除部分不用的内核

其实也可以修改 /boot/grub/menu.lst 把多余的项删掉…

 

接下来记录下到底是什么巧合导致服务器下线

一般来说,生产环境的服务器不应该在上面折腾什么东西,但是例行的服务器升级还是要进行的,于是博主打算给服务器更新下内核,顺便清理下多余内核。

博主的服务器的提供商是DigitalOcean,在控制面板里有一个可以调整内核的地方。

DO控制面板

一开始博主并不知道这其实就是一个类似于 Windows 启动项的东西,只是引导系统以哪个内核启动,在系统中必须要已经安装你要调整到的内核。

博主以为它会自动给你装上设置的内核…

OK,这不是重点,其实博主的服务器里面是有这个内核的…

在关机重启后,博主发现服务器无法连接了…httpd 服务也没有启动…看来是启动失败了…

因为一直以为它要给我重装下内核,所以一直以为是后端的某个东西卡住了,于是不停地在控制面板里关机开机…但是依旧无法开启…

没办法啊,发 Ticket 吧,和客服扯了 N 久,还是无法启动…后来太晚了,就睡觉了,可是第二天,依旧打不开_(:3」∠)_

直到客服发回来一句话 “When setting the kernel, you must make sure that the output of “ls -l /lib/modules” and its newest/highest numbered one, matches what you set in the control panel.”,我才知道原来这只是个引导的东西…

为嘛不早说,不知道博主其实是个 baka 么(╯°口°)╯(┴—┴

但是问题是,博主的服务器安装了那个内核…

但是那个内核是有问题的,不能正常启动的…

后来,以其他已安装内核进入系统,重装了那个版本的内核,重启…成功….

妈个鸡,博主又浪费了这么多时间…

 

原谅我这个愚蠢的博主吧_(:3」∠)_


原创文章,转载请以链接形式注明出处:http://blog.ttionya.com/article-971.html