解决阿里云2G机子只有1.57G内存可用的问题

购买了一台99元的阿里云的机子

机子开机安装宝塔 在安装PHP-fileinfo时会死机 SSH无反应 VNC也无法登录系统 只能通过阿里云控制台强制关机重启(其实本文还没完全解决这个问题 安装fileinfo仍然会死机 完整方法见https://www.heleguo.cn/archives/243)

打开htop发现 这台机子实际可用的只有1.57G

询问客服 发现是阿里云的Ubuntu镜像默认开启了预留内存(crashkernel内存)

下面是查看和释放预留内存的方法

查看预留内存

首先我们需要查看系统是否已开启了crashkernel

sudo cat /proc/cmdline

如果输出的内容中带有crashkernel 则有可能开启了crashkernel

然后我们再看看预留了多少内存

sudo cat /sys/kernel/kexec_crash_size

输出的数字就是预留内存的大小,单位为字节

如图 通过换算可得知博主的机子预留了256MB的内存

释放预留内存

接下来我们开始释放这些预留的内存(注:如果机子里有重要数据要先备份,以免意外造成数据丢失)

首先我们输入

sudo vim /etc/default/grub

按i进入编辑模式 用键盘上的方向键移动光标

找到GRUB_CMDLINE_LINUX那一行 删掉 crashkernel=0M-1G:0M,1G-4G:256M,4G-64G:384M,64G-:512M

编辑完成的文本应如下图所示

然后按键盘上的Ese键 输入:wq后 回车 保存

然后还需要更新一下配置

sudo update-grub

关闭Kdump服务

sudo systemctl disable kdump-tools
sudo systemctl stop kdump-tools

重启一下系统

sudo reboot

重启完成后重新连接机器输入

sudo cat /sys/kernel/kexec_crash_size

此时的结果应为0

此时再用htop查看内存 可用内存变成了1.82G(剩下的内存应该是虚拟化损耗 没法释放)

本文参考自:https://help.aliyun.com/zh/ecs/use-cases/view-and-change-the-size-of-reserved-memory-on-a-linux-instance

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇