当前位置:   article > 正文

【操作系统】Ubuntu Swap内存扩容

【操作系统】Ubuntu Swap内存扩容

目录

背景

查看内存信息

确定当前的交换空间大小

查看内存使用情况

查看fstab文件,确认swap分区位置

查看swap分区大小

swap分区扩容

关闭swap分区

创建大的swap文件

格式化swap空间

关闭之前的swap

开启新swap

开机挂载

验证交换空间的大小


背景

在执行某些程序的时候,需要大量内存,但我们没有这么多的物理内存情况下,可以考虑使用swap内存来解决。如有时候build 大模型的镜像的时候,需要内存可能高达好几百G内存,此时就可以使用这里的方法扩容swap内存来实现。

查看内存信息

确定当前的交换空间大小

  1. sudo swapon --show
  2. NAME TYPE SIZE USED PRIO
  3. /swapfile file 2G 1.7G -2

查看内存使用情况

  1. free -g
  2. total used free shared buff/cache available
  3. Mem: 31 2 27 0 0 27
  4. Swap: 0 0 0

查看fstab文件,确认swap分区位置

  1. cat /etc/fstab
  2. # /etc/fstab: static file system information.
  3. #
  4. # Use 'blkid' to print the universally unique identifier for a
  5. # device; this may be used with UUID= as a more robust way to name devices
  6. # that works even if disks are added and removed. See fstab(5).
  7. #
  8. # <file system> <mount point> <type> <options> <dump> <pass>
  9. # / was on /dev/nvme0n1p2 during installation
  10. UUID=7cc1912c-3b10-4630-8c97-de02e675b09a / ext4 errors=remount-ro 0 1
  11. # /boot/efi was on /dev/nvme0n1p1 during installation
  12. UUID=4E4D-C7B8 /boot/efi vfat umask=0077 0 1
  13. /swapfile none swap sw 0 0
  14. # ...

参数含义:

  1. /swapfile: 这是你的交换文件的路径。在大多数情况下,Ubuntu 默认会创建一个名为 /swapfile 的交换文件。
  2. none: 表示没有文件系统类型,因为这是一个特殊的文件而不是磁盘分区。
  3. swap: 指定文件的类型为交换空间。
  4. sw: 这个字段告诉操作系统,在启动时要启用这个交换文件。
  5. 0: 表示在 dump 命令中被忽略。
  6. 0: 表示在系统启动时不进行交换文件的检查。

查看swap分区大小

  1. sudo fdisk -l /swapfile
  2. Disk /swapfile: 2 GiB, 2147483648 bytes, 4194304 sectors
  3. Units: sectors of 1 * 512 = 512 bytes
  4. Sector size (logical/physical): 512 bytes / 512 bytes
  5. I/O size (minimum/optimal): 512 bytes / 512 bytes

这里看到swap空间为2 GiB,而我们需要扩展到32GB,所以至少要扩展30GB。

swap分区扩容

这里通过本身磁盘剩余空间扩容方案

关闭swap分区

sudo swapoff -a

创建大的swap文件

这里count大小为32GB,of参数为需要写盘位置

  1. dd if=/dev/zero of=/opt/swap bs=1024 count=33554432
  2. 33554432+0 records in
  3. 33554432+0 records out
  4. 34359738368 bytes (34 GB, 32 GiB) copied, 29.9129 s, 1.1 GB/s

格式化swap空间

  1. /sbin/mkswap /opt/swap
  2. mkswap: /opt/swap: insecure permissions 0664, fix with: chmod 0600 /opt/swap
  3. Setting up swapspace version 1, size = 32 GiB (34359734272 bytes)
  4. no label, UUID=8d156b8f-cace-44b4-99ce-44dc3ce74c09

关闭之前的swap

sudo swapoff /swapfile

开启新swap

  1. sudo /sbin/swapon /opt/swap
  2. swapon: /opt/swap: insecure permissions 0664, 0600 suggested.
  3. swapon: /opt/swap: insecure file owner 1000, 0 (root) suggested.

开机挂载

sudo vim /etc/fstab

/opt/swap                                 none            swap    sw              0       0

验证交换空间的大小

swapon --show

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/77526
推荐阅读
相关标签
  

闽ICP备14008679号