Debian Swap使用最佳实践
fallocate命令快速创建(支持稀疏文件,节省时间):sudo fallocate -l 4G /swapfile # 替换4G为所需大小
若fallocate不可用,用dd命令(较慢但通用):sudo dd if=/dev/zero of=/swapfile bs=1G count=4
设置严格权限(仅root可访问):sudo chmod 600 /swapfile
格式化为Swap空间:sudo mkswap /swapfile
启用Swap:sudo swapon /swapfile
fdisk/gparted工具创建分区,类型设为82(Linux Swap),然后格式化并启用:sudo mkswap /dev/sdXN # 替换为实际分区(如/dev/sda2)
sudo swapon /dev/sdXN
编辑/etc/fstab文件,添加对应行以实现重启后自动启用:
/swapfile none swap sw 0 0
/dev/sdXN none swap sw 0 0
swappiness控制系统使用Swap的积极程度,取值0-100(默认60)。
sudo sysctl vm.swappiness=10
/etc/sysctl.conf,添加/修改:vm.swappiness=10
应用更改:sudo sysctl -p
vfs_cache_pressure控制内核回收用于目录和inode缓存的内存的积极性,默认值100。
/etc/sysctl.conf,添加:vm.vfs_cache_pressure=50
应用更改:sudo sysctl -p
定期检查Swap状态,及时调整策略:
free -h
swapon --show
sudo top -o %MEM,%SWP # 或使用htop(需安装)
sudo swapoff /swapfile
sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
/etc/fstab(替换原路径):sudo swapon /swapfile
/etc/fstab(需备份数据)。sudo swapoff -a
永久禁用:
sudo swapoff -a;/etc/fstab中的Swap条目;sudo rm /swapfile或sudo wipefs -a /dev/sdXN。适用场景:内存充足的桌面系统、数据库服务器(需避免Swap导致的IO延迟)。
cryptsetup加密Swap文件/分区(需额外配置,参考Debian文档)。