温馨提示×

Debian swapper怎么调整大小

小樊
44
2026-07-13 19:24:29
栏目: 智能运维

在 Debian(以及大多数 Linux 发行版)中,swap 的大小调整常见有几种方式,取决于你是用 swap 分区 还是 swap 文件。下面按最常见的场景给你说明。


一、先确认当前 swap 情况

swapon --show
free -h
lsblk

二、如果是 swap 文件(推荐、最方便)

1️⃣ 关闭现有 swap

sudo swapoff /swapfile

如果提示 busy,说明有程序正在使用 swap,可先重启或关闭占用内存的服务。


2️⃣ 删除旧 swap 文件(可选)

sudo rm /swapfile

3️⃣ 创建新的 swap 文件(例如 8G)

sudo fallocate -l 8G /swapfile

如果 fallocate 不可用:

sudo dd if=/dev/zero of=/swapfile bs=1M count=8192

4️⃣ 设置权限

sudo chmod 600 /swapfile

5️⃣ 格式化为 swap

sudo mkswap /swapfile

6️⃣ 启用 swap

sudo swapon /swapfile

7️⃣ 确认自动挂载(fstab)

编辑:

sudo nano /etc/fstab

确保有这一行:

/swapfile none swap sw 0 0

三、如果是 swap 分区

方法一:使用 swapoff + resize + mkswap(风险较高)

⚠️ 不推荐新手操作,可能破坏数据

步骤概览:

  1. 关闭 swap
    sudo swapoff /dev/sdXn
    
  2. 使用 fdisk / gdisk / parted 调整分区大小
  3. 重新创建 swap 分区
  4. 格式化
    sudo mkswap /dev/sdXn
    
  5. 启用
    sudo swapon /dev/sdXn
    

方法二(推荐):新建 swap 分区 + 删除旧的

  1. gpartedfdisk 新建 swap 分区
  2. 格式化:
    sudo mkswap /dev/sdXn
    
  3. 获取 UUID:
    sudo blkid
    
  4. 修改 /etc/fstab
    UUID=xxxx-none  swap  sw  0 0
    
  5. 关闭旧 swap:
    sudo swapoff /dev/旧分区
    

四、推荐的 swap 大小(参考)

内存大小 建议 swap
≤ 2GB 2 × RAM
2–8GB = RAM
8–64GB 0.5 × RAM
≥ 64GB 4–8GB(或不用)

使用 zram 是现代 Debian / SSD 机器的更好选择。


五、额外建议(进阶)

使用 zram(Debian 12+ 推荐)

sudo apt install zram-tools

自动压缩内存,比传统 swap 快很多。


六、如果你愿意,我可以:

  • 根据你的 内存大小 推荐 swap 方案
  • 帮你判断是 swap 文件还是分区
  • 给你一条 安全执行命令清单

只要把下面信息发我即可:

free -h
lsblk
swapon --show

0