当前位置: 首页 > article >正文

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

目录

背景

查看内存信息

确定当前的交换空间大小

查看内存使用情况

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

查看swap分区大小

swap分区扩容

关闭swap分区

创建大的swap文件

格式化swap空间

关闭之前的swap

开启新swap

开机挂载

验证交换空间的大小


背景

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

查看内存信息

确定当前的交换空间大小

sudo swapon --show

NAME      TYPE SIZE USED PRIO
/swapfile file   2G 1.7G   -2

查看内存使用情况

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

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

cat /etc/fstab

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

参数含义:

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

查看swap分区大小

sudo fdisk -l /swapfile

Disk /swapfile: 2 GiB, 2147483648 bytes, 4194304 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

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

swap分区扩容

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

关闭swap分区

sudo swapoff -a

创建大的swap文件

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

dd if=/dev/zero of=/opt/swap bs=1024 count=33554432

33554432+0 records in
33554432+0 records out
34359738368 bytes (34 GB, 32 GiB) copied, 29.9129 s, 1.1 GB/s

格式化swap空间

/sbin/mkswap /opt/swap

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

关闭之前的swap

sudo swapoff /swapfile

开启新swap

sudo /sbin/swapon /opt/swap

swapon: /opt/swap: insecure permissions 0664, 0600 suggested.
swapon: /opt/swap: insecure file owner 1000, 0 (root) suggested.

开机挂载

sudo vim /etc/fstab

/opt/swap                                 none            swap    sw              0       0

验证交换空间的大小

swapon --show


http://www.kler.cn/news/234395.html

相关文章:

  • iOS平台如何实现RTSP|RTMP播放端录像?
  • js基础(2)
  • QT+OSG/osgEarth编译之八十三:osgdb_ogr+Qt编译(一套代码、一套框架,跨平台编译,版本:OSG-3.6.5插件库osgdb_ogr)
  • Acwing154滑动窗口
  • Windows10安装PCL1.14.0及点云配准
  • MongoDB聚合:$shardedDataDistribution
  • OOD分类项目训练
  • kyuubi 接入starrocks | doris
  • Vue3中Setup概述和使用(三)
  • maven插件maven-jar-plugin构建jar文件详细使用
  • 一、西瓜书——绪论
  • 【大厂AI课学习笔记】【1.6 人工智能基础知识】(4)深度学习和机器学习
  • JavaScript 设计模式之原型模式
  • 【美团】酒旅用户增长-后端研发
  • Nginx实战:1-安装搭建
  • C# 字体大小的相关问题
  • 【博云2023】乘龙一跃腾云海,侧目抬手摘星河
  • 双向链表的插入、删除、按位置增删改查、栈和队列区别、什么是内存泄漏
  • 【Larry】英语学习笔记语法篇——从句=连词+简单句
  • Linux——动静态库
  • Python操作MySQL基础
  • Qt知识点总结目录
  • 1523.在区间范围内统计奇数数目(Java)
  • Python爬虫——请求库安装
  • ubuntu20.04 安装mysql(8.x)
  • 13. 串口接收模块的项目应用案例
  • 华为数通方向HCIP-DataCom H12-821题库(单选题:441-460)
  • MacOS - 时间如何显示读秒?
  • 单片机的认识
  • 使用Qt创建项目 Qt中输出内容到控制台 设置窗口大小和窗口标题 Qt查看说明文档