TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码

Linux交换分区(Swap)创建与激活完全指南

2025-08-29
/
0 评论
/
1 阅读
/
正在检测是否收录...
08/29


一、什么是Swap空间?

当物理内存(RAM)耗尽时,Linux内核会将非活跃内存页移动到预先配置的Swap空间——本质是磁盘上的虚拟内存区域。虽然读写速度远低于RAM(机械硬盘约差1000倍),但能有效防止系统因内存不足而崩溃。

二、创建前的关键决策

  1. 类型选择



    • 传统Swap分区:性能最优,需提前规划磁盘空间
    • Swap文件:灵活性高,支持动态调整
    • ZRAM压缩交换:适合小内存设备(如树莓派)
  2. 容量建议(根据红帽官方文档):



    • RAM ≤ 2GB:Swap = RAM × 2
    • 2GB < RAM < 8GB:Swap = RAM + 1GB
    • RAM ≥ 8GB:至少4GB

三、4种创建方法详解

方法1:创建Swap文件(推荐新手)

bash

创建1GB的Swap文件

sudo fallocate -l 1G /swapfile

设置权限(必须600)

sudo chmod 600 /swapfile

格式化

sudo mkswap /swapfile

立即启用

sudo swapon /swapfile

永久生效(写入/etc/fstab)

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

注意:若fallocate失败,可使用dd if=/dev/zero of=/swapfile bs=1M count=1024

方法2:使用独立分区(生产环境推荐)

bash

假设创建/dev/sda3为Swap分区

sudo fdisk /dev/sda # 创建新分区并修改类型为82(Linux swap)
sudo mkswap /dev/sda3
sudo swapon /dev/sda3

持久化配置同方法1

方法3:LVM交换卷(灵活扩容)

bash sudo lvcreate -L 4G -n swap_lv vg01 sudo mkswap /dev/vg01/swap_lv sudo swapon /dev/vg01/swap_lv

方法4:ZRAM压缩交换(低配设备)

bash

Ubuntu/Debian需先安装

sudo apt install zram-config

查看状态

cat /proc/swaps

四、高级配置技巧

  1. 优先级调整:bash



    修改/etc/fstab中的sw参数(值越大优先级越高)



    /swapfile none swap sw,pri=10 0 0

  2. Swappiness优化:bash



    查看当前值(默认60)



    cat /proc/sys/vm/swappiness



    临时修改为更保守的值(建议10-30)



    sudo sysctl vm.swappiness=20

  3. 性能监控命令
    bash free -h # 查看使用概况 vmstat 1 # 实时监控si/so(交换入/出) swapon --show # 显示活动Swap设备

五、常见问题解决

Q:扩容Swap文件如何操作?
A:按顺序执行:
bash sudo swapoff /swapfile sudo fallocate -l 2G /swapfile sudo mkswap /swapfile sudo swapon /swapfile

Q:收到"swap area has duplicate UUID"警告?
A:使用mkswap -U new-uuid /dev/sdX生成新UUID

Q:如何彻底移除Swap?
A:先swapoff,再删除对应文件/分区,最后清理/etc/fstab条目


通过合理配置Swap空间,你的Linux系统将获得更稳定的内存管理能力。建议定期监控freevmstat输出,根据实际负载调整Swap策略。对于现代SSD设备,Swap文件的性能损耗已大幅降低,成为多数场景的优选方案。

内存扩展Swap分区Linux交换空间swaponswapoff
朗读
赞(0)
版权属于:

至尊技术网

本文链接:

https://www.zzwws.cn/archives/37082/(转载时请注明本文出处及文章链接)

评论 (0)

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

最新回复

  1. 强强强
    2025-04-07
  2. jesse
    2025-01-16
  3. sowxkkxwwk
    2024-11-20
  4. zpzscldkea
    2024-11-20
  5. bruvoaaiju
    2024-11-14

标签云