创建虚拟内存文件
使用dd命令创建
根据你的实际需要选择其中一个即可
dd if=/dev/zero of=swapfile bs=1M count=2048 # 2G
dd if=/dev/zero of=swapfile bs=1M count=4096 # 4G
dd if=/dev/zero of=swapfile bs=1M count=8192 # 8G
dd if=/dev/zero of=swapfile bs=1M count=16384 # 16G
dd if=/dev/zero of=swapfile bs=1M count=32768 # 32G
命令解释
if=/dev/zero
输入文件,一个提供无限空字符(0)的设备。of=swapfile
输出文件,即你要创建的 swap 文件路径。bs=1M
块大小,这里设置为 1MB。count=2048
块的数量。1M * 2048 = 2GB。如果你想创建 4GB 的 swap,就将 count 改为 4096。
设置文件权限
swap 文件包含敏感内存信息,权限必须非常严格,只能由 root 读写。
chmod 600 swapfile
制作交换文件
mkswap swapfile
挂载交换分区
临时挂载swap分区
swapon swapfile # 临时挂载交换分区 如需卸载可使用swapoff指令
自启动swap分区
编辑
/etc/fstab
文件并添加下列内容/swapfile
要根据你实际制作的文件路径填写加载swap分区 执行命令
swapon -a
/swapfile swap swap defaults 0 0
验证交换分区
swapon --show
free -h
FAQ
swap分区一直未使用
检查wappiness
值 cat /proc/sys/vm/swappiness
查看结果如果结果未0则需要将其配置为>0的值以下配置值40可以凭借自己需求修改一般不建议超过60
临时设置
sudo sysctl vm.swappiness=40
永久设置 编辑
/etc/sysctl.conf
文件设置vm.swappiness=40
执行sudo sysctl -p
使其生效