当前位置: 首页 > news >正文

解决阿里云ubuntu内存溢出导致vps死机无法访问 - 永久性增加ubuntu的swap空间 - 阿里云Linux实例内存溢出(OOM)问题修复方案

效果图

报错

通过对实例当前截屏的分析发现,实例因 Linux实例内存空间不足,导致操作系统出现内存溢出(OOM) 无法正常启动。请您根据 Code:1684829582,在文档中查询该问题对应的修复方案,并通过VNC方式访问实例进行修复。

解决办法

在阿里云Ubuntu实例上永久增加Swap空间的完整步骤

在Ubuntu系统上永久增加Swap空间可以有效缓解内存不足问题,特别是对于内存较小的云服务器。以下是详细的操作方法:

1. 检查当前Swap状态

首先查看系统现有的Swap配置:

sudo swapon --show
free -h

2. 创建Swap文件

2.1 创建Swap文件(推荐4GB大小)

# 创建Swap文件(这里以4G为例,可根据需要调整大小)
sudo fallocate -l 4G /swapfile# 如果fallocate不可用,可以使用dd命令
# sudo dd if=/dev/zero of=/swapfile bs=1M count=4096

2.2 设置正确的权限

sudo chmod 600 /swapfile

2.3 格式化文件为Swap

sudo mkswap /swapfile

3. 启用Swap文件

sudo swapon /swapfile

4. 永久生效设置

4.1 编辑fstab文件

sudo nano /etc/fstab

4.2 在文件末尾添加以下行

/swapfile none swap sw 0 0

Ctrl+X,然后按Y保存并退出。

5. 优化Swap配置(可选但推荐)

5.1 调整swappiness值(控制内存使用到Swap的倾向)

# 查看当前值(默认通常是60)
cat /proc/sys/vm/swappiness# 设置为更合理的值(10-30之间)
sudo sysctl vm.swappiness=20# 永久生效
echo "vm.swappiness=20" | sudo tee -a /etc/sysctl.conf

5.2 调整缓存压力设置

echo "vm.vfs_cache_pressure=50" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

6. 验证Swap配置

sudo swapon --show
free -h

输出应显示新添加的Swap空间。

注意事项

  1. Swap大小建议

    • 内存 < 2GB:Swap设为内存的2倍
    • 内存 2-8GB:Swap等于内存大小
    • 内存 > 8GB:Swap为4-8GB即可
  2. 性能考虑

    • Swap使用磁盘空间,速度比物理内存慢
    • 过度依赖Swap会导致性能下降
    • 长期解决方案应考虑升级实例内存
  3. 阿里云特定建议

    • 如果使用高效云盘或SSD云盘,Swap性能会更好
    • 对于频繁使用Swap的情况,建议升级实例规格
  4. 删除旧Swap(如有需要)

    sudo swapoff /old_swapfile
    sudo rm /old_swapfile
    # 记得从/etc/fstab中删除相应行
    

通过以上步骤,您的阿里云Ubuntu实例将拥有永久有效的Swap空间,帮助缓解内存不足的情况。

ending...

http://www.lryc.cn/news/582683.html

相关文章:

  • 代码详细注释:C语言实现控制台用户注册登录系统
  • Spring Boot + Easy Excel 自定义复杂样式导入导出
  • MySQL 8.0 OCP 1Z0-908 题目解析(22)
  • AI编程的未来是智能体原生开发?
  • MyBatis-Plus:深入探索与最佳实践
  • Vue的初步学习
  • 阿里云mysql数据丢失,如何通过服务器备份在其他服务器上恢复数据,并获取mysql丢失数据,完成mysql数据恢复
  • 如何在 Android Framework层面控制高通(Qualcomm)芯片的 CPU 和 GPU。
  • AWS OpenSearch Dev Tools使用
  • 跨平台软件构建方法及工具介绍
  • HCIA-Cloud 是什么?有啥用?
  • Vue 2现代模式打包:双包架构下的性能突围战
  • 在keil中使用stlink下载程序报错Invalid ROM Table
  • 最新团购源码商城 虚拟商城系统源码 全开源
  • 【笔记】开源 AI Agent 项目 V1 版本 [新版] 部署 日志
  • 【Java安全】RMI基础
  • navicat导出数据库的表结构
  • 【1-快速上手】
  • .NET9 实现对象深拷贝和浅拷贝的性能测试
  • ROS平台上使用C++实现A*算法
  • TensorFlow深度学习实战——基于自编码器构建句子向量
  • 微服务集成snail-job分布式定时任务系统实践
  • Go语言反射机制详解
  • 手动实现 Tomcat 核心机制:打造属于自己的 Servlet 容器
  • 【AI智能体】智能音视频-硬件设备基于 WebSocket 实现语音交互
  • 一文讲清楚React的diff算法
  • 汽车功能安全系统阶段开发【技术安全方案TSC以及安全分析】5
  • Eigen中Isometry3d的使用详解和实战示例
  • UDP的socket编程
  • 黑马点评系列问题之P37商户点评缓存作业,用了string和list两种方法,可以直接复制粘贴