swap介绍
swap交换分区是系统RAM的补充,
swap 分区支持虛拟内存。当没有足够的RAM 保存系统处理的数据
时会将数据写入 swap 分区,当系统缺乏 swap 空间时,内核会因 RAM 内存耗尽而终止进程。配置过多swap 空间会造成存储设备处于分配状态但闲置,造成浪费,过多 swap 空间还会掩盖内存泄露
注意:为优化性能,可以将swap 分布存放,或高性能磁盘存放
Redhat 官方推荐swap空间
系统中的RAM量 | 推荐的swap空间 | 允许休眠的建议swap空间大小 |
---|---|---|
低于2G | RAM量的2倍数 | RAM容量的三倍 |
2GB-8GB | 等于RAM量 | RAM量的倍数 |
8GB-64GB | 4GB到RAM容量的0.5倍 | RAM容量的1.5倍 |
超过64GB | 独立负载(至少4GB) | 不建议使用休眠功能 |
交换分区实现过程
一般我们的系统都会自带有swap分区,可以先把之前的swap分区给禁用,自行尝试创建。
先把 /ect/fstab
里的swap挂载分区给注释掉
echo 0 > /proc/sys/vm/swappiness
/proc/sys/vm/swappiness的值决定了当内存占用达到一定的百分比时,会启用swap分区的空间
使用规则
当内存使用率达到100-5wappiness时,会启用交换分区
简单地说这个参数定义了系统对swap的使用倾向,此值越大表示越倾向于使用 swap。
可以设为0,这样做并不会禁止对swap的使用,只是最大限度地降低了使用 swap的可能性
1、创建swap分区
echo -e 'n\np\n\n\n+5G\nt\n82\nw\n' | fdisk /dev/nvme0n2
mkswap /dev/nvme0n2p1
在执行这个步骤时要确保自己操作的磁盘没有被挂载和使用,不然会出现错误!!!
查看刚才创建的swap的UUID
lsblk -f
将UUID写入进 fstab 文件以永久保存
立即生效并查看内存空间
查看swap空间
显示创建成功!
禁用swap分区
sed -i.bak '/swap/d' /etc/fstab
swapoff -a