阿和
发布于 2025-09-23 / 3 阅读
0
0

linux创建虚拟内存

创建虚拟内存文件

使用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分区

  1. 编辑/etc/fstab文件并添加下列内容 /swapfile 要根据你实际制作的文件路径填写

  2. 加载swap分区 执行命令 swapon -a

/swapfile swap swap defaults 0 0

验证交换分区

swapon --show
free -h

FAQ

swap分区一直未使用

检查wappinesscat /proc/sys/vm/swappiness 查看结果如果结果未0则需要将其配置为>0的值以下配置值40可以凭借自己需求修改一般不建议超过60

  • 临时设置 sudo sysctl vm.swappiness=40

  • 永久设置 编辑/etc/sysctl.conf文件设置vm.swappiness=40 执行sudo sysctl -p使其生效


评论