扩大liunx的虚拟内存

在Linux系统中,交换空间(swap space)是当物理内存(RAM)不足时,系统会使用硬盘空间作为虚拟内存。修改交换空间的大小通常涉及以下步骤:

禁用当前的交换文件: 首先,你需要禁用当前的交换空间,使用swapoff命令:

  • sudo swapoff /swapfile
  • 删除交换文件: 然后,删除交换文件:
  • sudo rm /swapfile
  • 更新/etc/fstab文件: 接下来,需要从/etc/fstab文件中删除或注释掉与该交换文件相关的条目。打开/etc/fstab文件进行编辑:
sudo nano /etc/fstab

找到与/swapfile相关的行,并删除或在行首添加#来注释掉它。

创建新的交换文件: 使用fallocate命令可以快速创建一个指定大小的文件。例如,创建一个50GB的交换文件:

  • sudo fallocate -l 50G /swapfile
  • 设置交换文件的权限: 为了安全起见,应该将交换文件的权限设置为仅允许root用户读写:
  • sudo chmod 600 /swapfile
  • 格式化交换文件: 使用mkswap命令来格式化新创建的交换文件:
  • sudo mkswap /swapfile
  • 启用交换文件: 使用swapon命令来启用交换文件:
  • sudo swapon /swapfile
  • 更新/etc/fstab文件: 为了让这个交换文件在系统启动时自动挂载,需要更新/etc/fstab文件。可以使用blkid获取交换文件的UUID,然后将其添加到/etc/fstab
  • SWAP_UUID=$(sudo blkid -s UUID -o value /swapfile)
    echo "UUID=$SWAP_UUID none swap sw 0 0" | sudo tee -a /etc/fstab
  • 调整交换空间的权重: 有时候,你可能希望调整交换空间的优先级,这可以通过编辑/etc/fstab中的条目来实现,修改其中的sw参数为pri,其中pri是你希望设置的优先级(数值越小,优先级越高):
  1. sudo sed -i "/UUID=$SWAP_UUID/ s/sw/priog=0/" /etc/fstab
  2. 验证交换空间: 使用free -mswapon --show命令来验证交换空间是否已经正确设置。

请注意,调整交换空间的大小可能会对系统性能产生影响,特别是在创建过大的交换文件时。确保你了解你的系统需求,并在进行这些更改之前备份重要数据。如果你不确定,最好咨询系统管理员或有经验的用户。

THE END
分享
二维码
< <上一篇
下一篇>>