1.查看当前使用的内核;

uname -a

2.查看所有内核选项;

rpm -qa|grep kernel

3.删除多余内核;

yum remove 内核名称

下面命令可以删除所有非当前使用内核:(此操作需确认清楚)

yum remove $(rpm -qa | grep kernel | grep -v $(uname -r))

4.查看可用内核

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

5..重新编译引导

grub2-mkconfig -o /boot/grub2/grub.cfg

6.重启;

reboot

用ssh登录到esxi,找到/etc/vmware/passthru.map,在最后一行添加

Intel Corporation Lynx Point AHCI Controller

8086 2822 d3d0 default
供应商ID 设备ID

对于这个启动选项,我的理解是之前ESXi 7.0默认最大会占用138GB左右硬盘,就是上文中提到的default(其中包括BOOTBANK1, BOOTBANK2, 还有OSDATA, 当硬盘为HDD时,OSDATA不会被当作虚拟闪存使用,此时OSDATA类型为VMFS-L. 当硬盘为SSD时,OSDATA会被同时当作虚拟闪存,此时OSDATA类型为VFFS.) 之前写过我们可以通过设置autoPartitionOSDataSize来调整OSDATA的大小. 如何不让ESXi7.0的虚拟闪存占掉你的小硬盘 ,但该方法并非官方提供的解决方案.

此次systemMediaSize参数可以理解官方为此提供了几种预设值(min, small, default, max).
我们可以在安装启动前Shift+O来加上参数systemMediaSize=min,或者在安装介质的boot.cfg文件中的kernelopt=runweasel这行后面加上诸如systemMediaSize=min的参数,让此安装程序自动设置参数.

kernelopt=runweasel systemMediaSize=min

此时,安装好以后的硬盘空间大致情况如下图,系统空间占用大概是33GB.

一、Ubuntu 查看当前内核版本
动手之前,先查看一下 Ubuntu 当前使用的内核版本,以免删错了。

输入以下命令查看:

uname -r

记下输出的版本号即可。

二、Ubuntu 删除多余内核的方法
1、可以查看当前系统安装了多少内核:

dpkg --get-selections | grep linux

2、进入 /boot 分区,删除不需要的内核文件,比如(我这里不需要的是 4.4 版本的所有内核,因为安装了 4.14 版本的):

三、Ubuntu 卸载多余内核的方法
上面只是删除了文件,并没有卸载内核。如果不卸载,下次我们更新的时候还是会遇到问题的。

1、更新并升级系统

apt-get update && apt-get upgrade

2、如果提示报错,进行修复

apt-get -f install

3、卸载多余的内核

sudo apt-get purge linux-image-4.4.0-*
sudo apt-get purge linux-headers-4.4.0-*
sudo apt-get purge linux-modules-4.4.0-*

回车确认进行卸载,注意将版本号修改为自己想卸载的版本号。

4、再次更新系统

apt-get update && apt-get upgrade

至此,就完成了卸载内核的所有操作。

四、检查并确认 Ubuntu 内核情况
最后,我们检查一下是不是真的清理干净了。

1、查看当前所有已安装内核

dpkg --get-selections | grep linux