一、聲明
因為目前只使用CentOS 7 x64系統,所以本教程將僅適用於CentOS 7 x64系統,不保證在CentOS 8等系統上的效果。
另外卸載系統內核屬於危險操作,可能導致VPS無法啟動,非必要請勿進行此項操作,也不建議在生產環境下進行此項操作。
二、獲取當前使用的內核
執行以下命令可以獲取到當前系統正在使用的內核:
uname -r
輸出結果舉例:3.10.0-1160.15.2.el7.x86_64
記一下這個輸出結果,也就是正在使用的內核。
三、CentOS 7自動卸載多余內核的教程
首先分享下自動化的方法,命令少,操作少,方便快捷。
1. 執行以下命令可以自動獲取當前系統中的無用內核(未使用的)並進入卸載
yum remove $(rpm -qa | grep kernel | grep -v $(uname -r))
2. 執行上面命令后,會有卸載確認操作。確認下卸載內核列表中沒有當前正在使用的內核,然后輸入y
確認卸載即可。
3. 卸載完畢后,可以執行以下命令查看下/boot分區的占用情況
df -h /boot
案例:
[root@7 ~]# df -h /boot Filesystem Size Used Avail Use% Mounted on /dev/sda1 197M 105M 93M 54% /boot
其中Avail
對應的就是/boot分區當前的可用空間大小。
四、CentOS 7手動卸載多余內核的教程
1. 執行以下命令獲取當前系統的全部內核列表(已使用的和未使用的):
rpm -qa | grep kernel
提供一個輸出結果樣例:
kernel-tools-3.10.0-1160.15.2.el7.x86_64 kernel-3.10.0-957.el7.x86_64 kernel-devel-3.10.0-1160.15.2.el7.x86_64 kernel-3.10.0-957.21.3.el7.x86_64 kernel-devel-3.10.0-957.21.3.el7.x86_64 kernel-3.10.0-1160.15.2.el7.x86_64 kernel-headers-3.10.0-1160.15.2.el7.x86_64 kernel-tools-libs-3.10.0-1160.15.2.el7.x86_64
2. 以前面提到的正在使用的內核是3.10.0-1160.15.2.el7.x86_64為例,那么我們需要從全部內核列表中排除掉包含3.10.0-1160.15.2.el7.x86_64的內核,剩下的就是無用的內核。如下:
1 kernel-3.10.0-957.el7.x86_64 2 kernel-3.10.0-957.21.3.el7.x86_64 3 kernel-devel-3.10.0-957.21.3.el7.x86_64
3. 我們執行yum remove依次卸載以上無用內核即可,比如:
同樣的也需要輸入y
來確認卸載。
4. 卸載完畢后,可以執行以下命令查看下/boot分區的占用情況
1 df -h /boot
其中Avail
對應的就是/boot分區當前的可用空間大小。