添加交换分区
建立swapfile
sudo dd if=/dev/zero of=/var/swapfile bs=1G count=8
修改权限
sudo chmod 600 /var/swapfile
将文件设置为交换分区
sudo mkswap /var/swapfile
打开交换分区
sudo swapon /var/swapfile
#或
sudo swapon -a
永久使用
默认重启后就会失效
向/etc/fstab
添加一条,表明/var/swapfile
是一个交换文件。
sudo sed -i '$a /var/swapfile swap swap default 0 0' /etc/fstab
查看是否生效
sudo swapon --show
查看内存情况
free -m
#或
free -g
优先使用交换分区
swappiness值为0表示优先使用物理内存,值为100则优先使用swap内存,Ubuntu默认为60,建议优先使用内存,所以这里改成10
查看当前swappiness值
cat /proc/sys/vm/swappiness
修改swappiness值为10(临时修改,重启后即还原为默认值)
sudo sysctl vm.swappiness=10
永久修改swappiness默认值(重启生效)
sudo vi /etc/sysctl.conf
#添加:
vm.swappiness=10
关闭交换分区
sudo swapoff /var/swapfile
#或
sudo swapoff -a
减小交换分区
先关闭
交换文件减小为4G
sudo fallocate -l 4G /swapfile
#或
sudo truncate -s 4G /swapfile
fallocate:主要用于预先分配物理空间,占用实际的磁盘空间
truncate:生成空洞文件,看起来大小很大,但实际上它并不占用任何磁盘空间
评论