前言
阿里云、腾讯云等云厂商近期都陆续推出了200Mbps
峰值带宽且不限流量的轻量服务器,如图所示;尽管其价格略高于同配的30M/3M(海外/大陆),但如此高的带宽对于流量不高的自建站和图床而言,完全可以省下配置CDN的精力和金钱开销,属实福音。
本着尝鲜的想法,我自己买了一个34元/月的2C1G版本来体验一下。阿里云的Ubuntu镜像设置了crashkernel
参数以配置内核崩溃转储(kernel crash dump)的大小,使得1G内存中实际可用量大约只有700M
。
只是随便玩玩的话内核崩溃转储并非必须,可以酌情考虑关闭。Ubuntu的crashkernel
参数是通过GRUB引导加载程序传递给内核的。以下是修改它的具体步骤:
编辑GRUB配置文件
打开终端并使用管理员权限编辑GRUB配置文件,通常是/etc/default/grub。
sudo nano /etc/default/grub
修改GRUB_CMDLINE_LINUX_DEFAULT
行:
在该行中找到crashkernel=
参数进行修改。如果没有这个参数,你可以手动添加它。例如,设置默认128MB的内存用于崩溃转储:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash crashkernel=128M"
128M只是一个示例,具体的值需要根据你的系统内存大小和实际需求来设定。例如,2025年2月在阿里云购买的轻量服务器,其中提供的Ubuntu 24.04系统中的相关配置如下:
root@xxx-hk-2:~# cat /etc/default/grub
...
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=1
GRUB_DISTRIBUTOR=`( . /etc/os-release; echo ${NAME:-Ubuntu} ) 2>/dev/null || echo Ubuntu`
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX="vga=792 console=tty0 console=ttyS0,115200n8 net.ifnames=0 noibrs iommu=pt crashkernel=0M-1G:0M,1G-4G:192M,4G-128G:384M,128G-:512M nvme_core.io_timeout=4294967295 nvme_core.admin_timeout=4294967295"
...
注意到0M-1G:0M,1G-4G:192M
,实测这里如果有刚好1G内存,会有192M内存被吃掉,可以修改为8G以下都不开启,
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX="vga=792 console=tty0 console=ttyS0,115200n8 net.ifnames=0 noibrs iommu=pt crashkernel=0M-8G:0M,8G-128G:384M,128G-:512M nvme_core.io_timeout=4294967295 nvme_core.admin_timeout=4294967295"
完整配置如下:
更新GRUB
修改完成后,保存退出编辑器,并运行以下命令更新GRUB配置:
sudo update-grub
重启系统
更新GRUB后,为了使新的设置生效,需要重启系统:
sudo reboot
完成上述步骤后,系统将按照新的crashkernel
参数设置运行,上述配置将影响内核崩溃转储的行为。
如果kdump对你而言是刚需,应确保你提供的crashkernel
值足够大以包含可能的崩溃信息,但也不要过大以免影响系统的正常运行内存。
Comments NOTHING