【Linux】Ubuntu增加Swap交换区大小

Linux交换区Swap

当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。

出现问题

  • 系统过于卡顿

增加交换区大小

  • 查看交换区大小:
    free -m
  • 进入root用户(非常重要,不然后续会很麻烦)
    sudo su - root
  • 创建一个目录:
    mkdir /swap
  • 进入目录
    cd /swap
  • 输入以下命令(增加swap空间):
    dd if=/dev/zero of=swapfile bs=1024 count=10290000
    a. 执行成功,可以看到如下内容:
      记录了1029000+0 的读入
      记录了1029000+0 的写出
      1053696000字节(1.1 GB)已复制,69.0168 秒,15.3 MB/秒
    b. 输入 ls -lh 可以看到一个文件。
      -rw-r–r-- 1 root root 1005M 2010-01-02 14:35 swapfile
  • 配置
    mkswap swapfile
  • 挂载交换区:
    swapon swapfile
  • 再查看交换区大小
    free -m

可能出现问题

  • 不安全的权限 0644,建议使用 0600 (修改权限)
    chmod 0600 /swap/swapfile
  • swapon 失败: 设备或资源忙 (激活swap文件)
    swapoff /swap/swapfile
    swapon /swap/swapfile
  • 重启后交换区恢复默认
    命令:sudo vim /etc/fstab
    添加:/swap/swapfile /swap swap defaults 0 0
    保存:wq

猜你喜欢

转载自blog.csdn.net/m0_46537958/article/details/108469587