debian 交换空间安装与配置步骤
在 debian 中,所谓的“swapper”通常指系统的交换空间,既可以是交换分区(swap partition),也可以是交换文件(swap file)。它用于在物理内存不足时提供虚拟内存支持。以下步骤覆盖两种方式的创建、启用与持久化配置。
步骤一 检查现有交换与规划大小
- 查看当前交换与内存:
- sudo swapon --show
- free -h
- 规划大小(通用建议):
- 一般设为物理内存的1–2 倍;内存较大时可适当降低比例;内存较小(如 ≤8 gb)可适当提高。
- 若需覆盖休眠(hibernate),交换空间应不小于物理内存容量。
- 传统经验也给出上限建议:不超过32 gb(32 位系统)或64 gb(64 位系统),但在现代系统与大内存场景下不必生搬硬套,可结合工作负载与磁盘空间灵活设定。
步骤二 方式一 创建并启用交换文件
- 创建交换文件(示例为 4g):
- 推荐:sudo fallocate -l 4g /swapfile
- 备选(兼容性更好):sudo dd if=/dev/zero of=/swapfile bs=1m count=4096
- 设置安全权限:
- 格式化为交换空间:
- 启用交换文件:
- 持久化(开机自动启用):
- echo ‘/swapfile none swap sw 0 0’ | sudo tee -a /etc/fstab
- 验证:
步骤三 方式二 创建并启用交换分区
- 使用分区工具创建交换分区(示例目标盘为 /dev/sda):
- fdisk:
- sudo fdisk /dev/sda
- 依次:n → p → 回车(起始扇区)→ +4g(大小)→ t → 82(linux swap)→ w
- parted:
- sudo parted /dev/sda
- mkpart primary linux-swap 1mib 4g
- quit
- 格式化交换分区(假设为 /dev/sda2):
- 启用交换分区:
- 持久化(开机自动启用):
- echo ‘/dev/sda2 none swap sw 0 0’ | sudo tee -a /etc/fstab
- 验证:
步骤四 验证与常用优化
- 验证要点:
- 查看是否启用:swapon --show;整体内存与交换:free -h
- 查看系统级交换信息:cat /proc/swaps
- 调整 swappiness(控制内核使用 swap 的倾向,默认通常为 60):
- 查看:cat /proc/sys/vm/swappiness
- 临时调整:sudo sysctl vm.swappiness=10(示例值)
- 永久调整:echo ‘vm.swappiness=10’ | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
- 多交换与优先级(可选,提升性能与灵活性):
- 多个交换文件/分区可并存;在 /etc/fstab 中为条目添加 pri= 值(如:/swapfile none swap sw,pri=10 0 0),数值越高优先级越高。
- 使用 lvm 管理交换(可选,便于后续扩容/调整):
- 可将交换配置为 lvm 逻辑卷,按需在线调整大小,减少重分区风险。