Ubuntu Server 24.04 取消预留转储内存

VPS 的内存本来就小,轻量应用也没有开启必要。

阿里云 2核2G ECS有优惠99,但其他国内云99规格会更好些,使用公共镜像 Ubuntu Server 24.04。镜像中默认没有snap,但是有预留 crashKernel 内存(用于内核崩溃时转储内存,),导致可用内存只有1.6GiB。

查看有没有配置预留转储内存

sudo systemctl status kdump-tools
# 看有没有 crashkernel 参数
cat /proc/cmdline

取消预留转储内存方法:请按顺序执行

sudo cp /etc/default/grub /etc/default/grub.bak
sudo vim /etc/default/grub
# 删除【GRUB_CMDLINE_LINUX=】行中【crashkernel=0M-2G:0M,2G-4G:256M,4G-64G:384M,64G-512G:512M,512G-:1G cra    sh_kexec_post_notifiers=1】参数
sudo update-grub
sudo systemctl disable kdump-tools
sudo systemctl stop kdump-tools
sudo reboot

再确认有没有被配置上,后运行free -h查看,有1.8G,就正常了。

另外:

  • 云服务商宣传的 2G 通常指 2 GB(Gigabytes),即 2×10⁹ = 2,000,000,000 字节。
  • free -h 显示的 Gi 是 GiB(Gibibytes),基于二进制:1 GiB = 2³⁰ = 1,073,741,824 字节。
  • 换算一下:2 GB = 2,000,000,000 字节 ÷ 1,073,741,824 ≈ 1.86 GiB
    所以即使没有任何保留,你看到的数字也应该在 1.86 GiB 左右,而不是 2.0 GiB。
# 查看更精确的数字(单位 KiB)
cat /proc/meminfo | grep MemTotal

两台实机:

MemTotal:   977108 kB * 1024 = 1,000,558,592    为OCI的1G VPS
            977108 kB / 1024 ≈ 954 MB
MemTotal:   1913836 kB * 1024 = 1,959,768,064   为ALI的2G VPS
            1913836 kB / 1024 ≈ 1869 MB ≈ 1.825 GB

发表回复