Linux swap文件配置
背景:
主要是服务器内存紧张时,可以通过交换分区,减轻内存压力。
基础命令:
mkdir:用于创建目录。
touch:若文件不存在,系统会建立一个新的文件。
dd:可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。
mkswap:命令用于设置交换区(swap area)。
swapon:命令用于激活Linux系统中交换空间,Linux系统的内存管理必须使用交换区来建立虚拟内存。
swapoff:命令用于关闭系统交换区(swap area)。
free: free命令用于显示内存状态。
sysctl:Linux内核5.5版本最终消除了支持sysctl系统调用的代码,该代码已被弃用了大约十年,目前对任何架构的现代系统都没有影响。长期以来,Linux sysctl 系统调用都不建议被使用,也不建议将其与通过 /proc/sys 公开的 sysctl 接口一起使用,这是读取/设置内核系统属性的首选方法。
sync: 用于数据同步,sync命令是在关闭Linux系统时使用的。
实践流程:
1.mkdir创建目录,touch创建文件。
mkdir /data && touch /data/swap
2.dd创建交换文件
dd if=/dev/zero of=/data/swap bs=1M count=2048
3.mkswap配置交换分区
mkswap /data/swap
4.swapon开启分区
swapon /data/swap
5.free查看分区是否启动
free -m
6.查询内存使用率配置,如果是0需要调整30-60之间
cat /proc/sys/vm/swappiness
7.临时修改内核配置,需要永久配置/etc/sysctl.conf
sysctl -w vm.swapiness=60
8.内存同步磁盘
sync
9.释放内存
echo 1 > /proc/sys/vm/drop_caches