无存储AWS EC2实例yum安装软件包的最佳实践咨询
解决Amazon Linux EC2实例yum安装内存不足的最佳实践
一、临时添加交换空间(Swap)快速缓解内存压力
这是解决内存不足最直接的临时方案,无需额外硬件资源:
- 创建swap文件:
sudo fallocate -l 4G /swapfile(可根据实际需求调整大小,比如4G/8G) - 限制文件权限:
sudo chmod 600 /swapfile - 启用swap:
sudo mkswap /swapfile && sudo swapon /swapfile - (可选)设置开机自动挂载:编辑
/etc/fstab,新增一行/swapfile swap swap defaults 0 0
二、清理系统冗余释放内存与磁盘资源
减少不必要的资源占用,为yum安装腾挪空间:
- 清理yum缓存:
sudo yum clean all - 删除旧内核(若存在多个冗余内核):
sudo package-cleanup --oldkernels --count=1 - 停止闲置后台服务:
sudo systemctl stop <服务名>,后续可设置禁用开机启动:sudo systemctl disable <服务名>
三、挂载EBS卷优化存储(避免直接自定义yum安装路径)
遵循系统规范的前提下,利用EBS卷扩容关键目录:
- 挂载EBS卷到
/var/cache/yum:yum缓存文件默认存放在此目录,挂载后缓存将存储到EBS,既减少根卷压力,也避免内存被缓存过度占用 - 扩容根EBS卷:在AWS控制台调整根卷大小后,执行
sudo xfs_growfs /(针对XFS文件系统)或sudo resize2fs /dev/xvda1(针对ext4文件系统)扩展文件系统 - 挂载EBS卷到
/usr/local:对于支持自定义安装路径的软件,编译安装时指定到此目录,既符合系统规范,又能利用EBS的大容量存储
四、调整yum配置降低内存消耗
修改yum配置文件减少资源占用:
- 编辑
/etc/yum.conf,设置keepcache=0,安装完成后自动删除缓存文件 - 新增
installonly_limit=1,限制保留的内核数量,减少磁盘与内存占用
内容的提问来源于stack exchange,提问作者NateDogg123
相关产品推荐
相关产品推荐

