温馨提示×

Ubuntu Swap如何管理

小樊
46
2025-04-09 13:19:37
栏目: 智能运维

在Ubuntu系统中,Swap(交换空间)是一种内存管理技术,它在物理内存(RAM)不足时,将部分不活跃的内存页面暂时存储到硬盘上。Swap可以是专用的Swap分区,也可以是以Swap文件的形式存在。以下是Ubuntu中管理Swap的基本步骤:

创建Swap文件

  1. 创建一个空白文件
sudo fallocate -l 1G /swapfile

或者

sudo dd if=/dev/zero of=/swapfile bs=1M count=1024
  1. 设置文件权限
sudo chmod 600 /swapfile
  1. 格式化为Swap文件系统
sudo mkswap /swapfile
  1. 启用Swap文件
sudo swapon /swapfile
  1. 永久启用Swap文件

编辑 /etc/fstab 文件,添加以下行:

/swapfile none swap sw 0 0

调整Swap文件大小

  1. 禁用当前的Swap文件
sudo swapoff /swapfile
  1. 修改Swap文件的大小

使用 fallocate 命令调整文件大小,例如调整为2GB:

sudo fallocate -l 2G /swapfile

或者使用 dd 命令:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
  1. 重新格式化并启用Swap文件
sudo mkswap /swapfile
sudo swapon /swapfile
  1. 更新 /etc/fstab 文件

确保 /etc/fstab 文件中的条目已更新,以便系统在重启后自动加载新的Swap文件大小。

删除Swap文件

  1. 停用Swap文件
sudo swapoff /swapfile
  1. /etc/fstab 文件中删除相关行

编辑 /etc/fstab 文件,删除与Swap文件相关的行。

  1. 删除Swap文件
sudo rm /swapfile

查看Swap使用情况

使用以下命令查看当前的Swap使用情况和大小:

sudo swapon --show

或者

free -h

调整Swappiness值

Swappiness值是一个内核参数,用于控制系统使用Swap空间的频率。值越低,系统越倾向于使用物理内存,值越高,系统越倾向于使用Swap空间。

  • 查看当前Swappiness值
cat /proc/sys/vm/swappiness
  • 临时修改Swappiness值(仅本次开机有效):
sudo sysctl vm.swappiness=20
  • 永久修改Swappiness值

编辑 /etc/sysctl.conf 文件,添加或修改以下行:

vm.swappiness = 20

然后重新启动系统以应用更改。

请注意,调整Swap大小和使用策略可能会影响系统性能,建议在调整之前仔细考虑并根据实际需求进行。

0