在 Ubuntu 系统中管理 SWAP 空间(虚拟内存)是优化系统性能的重要操作。以下是详细的创建、删除和调整 SWAP 空间的步骤:
sudo swapon --show # 查看活动的SWAP分区/文件
free -h # 查看内存和SWAP使用情况
cat /proc/swaps # 查看SWAP详细信息
创建分区(假设使用 /dev/sdXN
):
sudo fdisk /dev/sdX # 创建新分区,类型改为Linux swap (82)
sudo mkswap /dev/sdXN # 格式化分区为SWAP
sudo swapon /dev/sdXN # 启用SWAP
永久生效:
编辑 /etc/fstab
添加:
/dev/sdXN none swap sw 0 0
创建交换文件(例如 4GB):
sudo fallocate -l 4G /swapfile # 或使用 dd if=/dev/zero of=/swapfile bs=1M count=4096
sudo chmod 600 /swapfile # 设置权限
sudo mkswap /swapfile # 格式化
sudo swapon /swapfile # 启用
永久生效:
编辑 /etc/fstab
添加:
/swapfile none swap sw 0 0
bash
sudo swapoff /swapfile
sudo rm /swapfile
sudo fallocate -l 8G /swapfile # 调整为8GB
sudo mkswap /swapfile && sudo swapon /swapfile
同样需要先关闭交换文件,然后缩小文件大小后重新启用。
bash
sudo swapoff /swapfile # 或 sudo swapoff /dev/sdXN
bash
sudo rm /swapfile # 删除交换文件
# 或使用 fdisk 删除分区
/etc/fstab
中移除对应行。调整 swappiness(默认值60)
临时修改:
sudo sysctl vm.swappiness=10 # 值越低,越少使用SWAP(0-100)
永久生效:
编辑 /etc/sysctl.conf
添加:
vm.swappiness=10
调整缓存压力(vfs_cache_pressure)
减少内存缓存回收频率:
vm.vfs_cache_pressure=50
swappiness
。vmstat 1
或 top
监控 SWAP 使用情况。通过以上步骤,你可以灵活管理 Ubuntu 的 SWAP 空间以适应不同场景需求。