Swap是磁盘上的专用空间,物理RAM用满的情况下会使用到。Linux系统耗尽RAM,非活动页面将从RAM移动到交换空间。交换使用可能出现延迟情况,因此一般情况下交换配置可用内存的50%左右。受限环境建议系统配置从1GB交换空间起,配置Swap(交换分区或交换文件)的方法如下:
使用`dd`命令创建一个指定大小的文件。创建Swap文件:
sudo dd if=/dev/zero of=/swapfile bs=1M count=1024 # 创建1GB的Swap文件
```
确保Swap文件的权限正确。设置权限:
sudo chmod 600 /swapfile
```
使用`mkswap`命令格式化。格式化Swap文件:
sudo mkswap /swapfile
```
使用`swapon`命令启用Swap文件。启用Swap文件:
sudo swapon /swapfile
```
编辑`/etc/fstab`文件,添加Swap文件配置。设置开机启动:
echo '/swapfile none swap defaults 0 0' >> /etc/fstab
```
创建Swap分区:使用`fdisk`或`parted`命令在磁盘上创建一个新的分区。
sudo fdisk /dev/sdb # 假设/dev/sdb是目标磁盘
```
在`fdisk`提示下创建新分区,并设置分区类型为`Linux swap / Solaris`(类型代码82)。
使用`mkswap`命令格式化新分区:
sudo mkswap /dev/sdb1 # 假设新分区为/dev/sdb1
```
使用`swapon`命令启用Swap分区。
sudo swapon /dev/sdb1
```
编辑`/etc/fstab`文件,添加Swap分区配置,设置开机启:
echo '/dev/sdb1 none swap defaults 0 0' >> /etc/fstab
```
调整Swap使用策略,如查看和设置`swappiness`值:`swappiness`值决定了系统使用Swap的倾向。查看当前`swappiness`值:
cat /proc/sys/vm/swappiness
```
临时设置`swappiness`值:
echo 10 > /proc/sys/vm/swappiness
```
永久设置`swappiness`值:编辑`/etc/sysctl.conf`文件,添加`vm.swappiness=10`。
sudo sysctl -p
```
完成后么就可以配置好Swap空间,能提高linux系统出现物理内存不足时稳定性和响应速度。