【经验分享】Ubuntu如何设置swap交换

我的Linux小鸡内存只有512兆,经常爆内存,导致很多应用没有办法一直正常运行,可以通过设置swap来缓解一下,虽然和内存的速度无法媲美,但是能一定程度缓解一下问题

文章目录

    • [1. 创建一个交换文件](#1. 创建一个交换文件)
    • [2. 设置正确的权限](#2. 设置正确的权限)
    • [3. 设置交换空间](#3. 设置交换空间)
    • [4. 启用交换空间](#4. 启用交换空间)
    • [5. 使交换永久生效](#5. 使交换永久生效)
    • [6. 保存并关闭文件](#6. 保存并关闭文件)
    • [7. 使用top命令检查](#7. 使用top命令检查)

1. 创建一个交换文件

首先,使用 dd 命令或 fallocate 命令创建一个大小为 1GB 的交换文件。fallocate 命令比 dd 更快,但并非在所有系统上都可用。以下是使用 fallocate 的示例命令:

bash 复制代码
   sudo fallocate -l 1G /swapfile

如果 fallocate 不可用,可以使用 dd 命令:

bash 复制代码
    sudo dd if=/dev/zero of=/swapfile bs=1M count=1024

2. 设置正确的权限

出于安全原因,交换文件应该只能被 root 用户读写。设置权限:

bash 复制代码
    sudo chmod 600 /swapfile

3. 设置交换空间

使用 mkswap 命令将文件设置为交换空间:

bash 复制代码
   sudo mkswap /swapfile

4. 启用交换空间

使用 swapon 命令启用交换空间:

bash 复制代码
   sudo swapon /swapfile

5. 使交换永久生效

为了在系统重启后保持交换设置,需要编辑 /etc/fstab 文件。打开这个文件:

bash 复制代码
   sudo vi /etc/fstab

然后添加以下行:

bash 复制代码
    /swapfile none swap sw 0 0

6. 保存并关闭文件

bash 复制代码
  :wq

7. 使用top命令检查

相关推荐
JZC_xiaozhong1 小时前
数据不互通、审批慢?企业多系统智能协同与流程自动化解决方案
运维·自动化·流程管理·流程自动化·数据集成与应用集成·流程监控·流程可视化设计
爱学习的小囧1 小时前
ESXi 8.0 原生支持 NVMe 固态硬盘吗?VMD 配置详解教程
linux·运维·服务器·esxi·esxi8.0
坚持就完事了2 小时前
Linux中的变量
linux·运维·服务器
hERS EOUS2 小时前
nginx 代理 redis
运维·redis·nginx
handler012 小时前
从源码到二进制:深度拆解 Linux 下 C 程序的编译与链接全流程
linux·c语言·开发语言·c++·笔记·学习
Cat_Rocky2 小时前
利用Packet Tracer网络实验
linux·运维·服务器
嵌入式×边缘AI:打怪升级日志2 小时前
Linux 驱动实战:SR501 人体红外传感器驱动开发与调试全记录
linux·运维·驱动开发
正点原子2 小时前
【正点原子Linux连载】第三章 U-Boot使用 摘自【正点原子】ATK-DLRK3568嵌入式Linux驱动开发指南
linux·运维·驱动开发
Qbw20043 小时前
【Linux】进程地址空间
linux·c++
忍冬行者3 小时前
MongoDB 三节点副本集离线部署运维手册
运维·数据库·mongodb