ubuntu内存不足,用Swap扩展增加虚拟内存

news2024/9/26 5:13:30

Linux增大Swap分区,可以增加虚拟内存,以解决电脑卡机,内存不足等问题

top可以查看cpu的使用情况

lscpu可以查看本机配置的cpu硬件情况

  • 查看内存使用情况 free -h
    (下面显示"交换"或者Swap等字样说明系统已经启动了Swap)
dx@dx-UX330:~$ free -h

               total        used        free      shared  buff/cache   available
内存:      7.6Gi       5.5Gi       222Mi       1.2Gi       1.9Gi       620Mi
交换:      2.0Gi       2.0Gi       0.0Ki


  • 查看内存剩余情况df -h
dx@dx-UX330:~$ df -h
文件系统        大小  已用  可用 已用% 挂载点
tmpfs           782M  1.9M  780M    1% /run
/dev/sda6        58G   41G   15G   74% /
tmpfs           3.9G  2.4M  3.9G    1% /dev/shm
tmpfs           5.0M  4.0K  5.0M    1% /run/lock
efivarfs        128K   52K   72K   42% /sys/firmware/efi/efivars
tmpfs           3.9G     0  3.9G    0% /run/qemu
/dev/sda1       256M   36M  221M   14% /boot/efi
tmpfs           782M  1.7M  781M    1% /run/user/1000
/dev/sda4       2.1G   13M  2.1G    1% /media/dx/D卷
/dev/sda3       177G  167G  9.8G   95% /media/dx/OS

由上面观察,/dev/sda6 还有一定空间可用,可作为扩展Swap的备选

  • 查看Swap空间大小
root@dx-UX330:/home/dx# sudo swapon --show
NAME      TYPE SIZE USED PRIO
/swapfile file   2G   2G   -2

观察上面可以知道,目前挂载的swap空间是在一个叫做/swapfile的文件上的,为2G

如果想对现有的Swap空间进行扩展,可以直接新建一个swap文件(当然,不能再叫做/swapfile了,可以换个名字,比如叫做/swap),这是为了为避免在设置时候发生名字冲突。
我们新起的这个文件就叫做/swap(再次提醒,之前设置swap空间的文件叫做/swapfile,新建的叫做/swap)

现在来修改这个新建的/swap的大小,进入系统根目录:


cd /

使用dd命令增加/swap文件的大小。例如,如果想将swap空间扩展到8G,可以执行:


sudo dd if=/dev/zero of=/swap bs=1M count=8192

这里的bs=1M count=8192表示每块大小为1M,共8192块,即总共8G。
当然你也可以让bs=1M count=16384表示每块大小为1M,共16384块,即总共16G。

现在来处理旧的/swapfile文件,查看他是否还在运行
sudo mkswap /swapfile
如果旧的文件正在被用作Swap空间,你需要首先使用swapoff命令来停用它:
sudo swapoff /swapfile

然后,你才可以使用mkswap命令来设置新的Swap空间:sudo mkswap /swap
最后使用swapon命令来启用Swap空间:sudo swapon /swap

注意:当你尝试使用下一步的 sudo swapon /swap 命令启用Swap文件时,系统可能会警告你关于不安全的权限设置。错误消息 swapon: /swap: insecure permissions 0644, 0600 suggested 指出Swap文件的当前权限是0644,这意味着文件所有者可以读写该文件,而其他用户只能读取它。出于安全考虑,Swap文件通常应该只有root用户才能读写,因此建议的权限是0600。要解决这个问题,你可以使用 chmod 命令将Swap文件的权限更改为0600:


sudo chmod 0600 /swap

激活新的Swap空间大小:


sudo mkswap /swap  

sudo swapon /swap

最后,使用free -m命令验证Swap空间是否已成功扩展。

  • 设置为永久Swap

如果你希望系统在每次启动时都自动加载新的Swap空间,需要将Swap文件添加到/etc/fstab文件中。可以使用文本编辑器打开该文件,并在文件末尾添加类似下面的行:


/swapfile swap swap defaults 0 0

保存并关闭fstab文件。

原本的文件
在这里插入图片描述

修改后的文件
在这里插入图片描述

电脑重启后,使用命令sudo swapon --show 观察新的Swap是否已经被挂载上

dx@dx-UX330:~$ sudo swapon --show
[sudo] dx 的密码: 
NAME      TYPE SIZE USED PRIO
/swapfile file   2G 1.8G   -2
/swap     file   8G   0B   -3
  • Q:如何查看Swap文件/swapfile的所有者是谁(应该为root用户)
    ls -l /swapfile
    输出应该是类似这样的
    -rw------- 1 root root <文件大小> <日期时间> /swapfile

  • Q:如何修改文件的所有者?
    你可以使用chown命令来更改文件/swapfile的所有者,如下所示:
    sudo chown root:root /swapfile

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1533611.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

EMC Unity存储系统(包含VNXe)常用检查命令

DELL EMC的Unity存储系统&#xff0c;包括VNXe存储系统的OS已经完全和Clariion 的VNX不同了&#xff0c;近期遇到很多关于EMC unity存储系统故障的一些初步检查需求&#xff0c;下面是一些对于DELL EMC Unity存储系统的最常用的底层检查命令&#xff0c;可以对系统故障有个初步…

深度学习——线性代数相关知识

线性代数基础知识 一、线性代数基础知识1、标量2、向量3、矩阵4、张量5、点积6、向量—矩阵积7、矩阵—矩阵乘法 二、小结 一、线性代数基础知识 本节将介绍简要地回顾一下部分基本线性代数内容&#xff0c;线性代数中的基本数学对象、算术和运算&#xff0c;并用数学符号和相…

Linux编程4.11 网络编程-广播

广播实现一对多的通讯 它通过向广播地址发送数据报文实现的 1、套接字选项 套接字选项用于修饰套接字以及其底层通讯协议的各种行为。函数setsockopt和getsockopt可以查看和设置套接字的各种选项。 #include <sys/types.h> #include <sys/socket.h>int getso…

申请免费IP地址证书

目录 IP申请SSL证书需要满足什么条件呢&#xff1f; 为什么需要申请IP地址证书&#xff1f; 支持IP地址SSL证书类型 DV级别IP SSL证书和OV级别IP SSL证书的区别 申请公网IP地址证书有免费的吗&#xff1f; 背景&#xff1a;当用户直接通过IP地址而非域名访问网站时&#xf…

后端如何返回404地址

当我们网站输入不存在的地址&#xff0c;经常会出现404的页面&#xff0c;这是如何做到的 1.添加配置 spring:mvc:view:prefix: /templates/suffix: .html 2.resources下添加templates目录&#xff0c;下面放404的网站 3.添加依赖&#xff0c;版本在主pom里面配置好了&#x…

霍格沃兹测试开发从人员外包到测试工具、测试平台,提供全方位的测试解决方案~

随着学社的学员越来越多&#xff0c;影响力越来越大&#xff0c;不停有学员和企业问我们&#xff1a;能否提供人员外包服务&#xff1f;与此同时&#xff0c;企业对于外包人员的业务技能要求也越来越高&#xff0c;寻找一个稳定靠谱的供应商也成了很多学员所在公司的需求。对此…

web前端常用标签(html)

1.定义 1.1标签 语法规范&#xff1a;<标签名 属性名"属性值">标签名</标签名> 标签之间可以嵌套 1.2属性 定制元素的行为的。属性是不通用的&#xff0c;每一个标签存在自身的属性。当属性名属性值时&#xff0c;可以只写属性值 2.HTML常用标签 2…

【人工智能Ⅱ】实验2:VGG图像分类

实验2&#xff1a;VGG图像分类 一&#xff1a;实验目的与要求 1&#xff1a;掌握VGG网络的原理与结构。 2&#xff1a;学会利用VGG网络建立训练模型&#xff0c;并对模型进行评估。 3&#xff1a;学会使用VGG网络进行分类。 二&#xff1a;实验内容 1&#xff1a;用VGG网络…

扩展欧拉定理

为了求a^bmodm的余数,我们可以利用扩展欧拉定理给出的同余方程,转化成一个好求的式子,首先我们要能够解出欧拉函数.欧拉函数讲解可以看看这篇欧拉函数最全总结-CSDN博客(原理我不懂,只会用) 下面给出代码 using i64 long long; int phi(int n) {int res n;for (int i 2; i…

【C语言】内存管理内存管理函数文件管理文件管理函数

主页&#xff1a;醋溜马桶圈-CSDN博客 专栏&#xff1a;C语言_醋溜马桶圈的博客-CSDN博客 gitee&#xff1a;mnxcc (mnxcc) - Gitee.com 目录 1.C/C程序的内存开辟 2.内存相关的函数 2.1 memcpy 2.1.1 memcpy函数的使用 2.1.2 memcpy函数的模拟实现 2.2 memmove 2.2.2 me…

四阶Runge-Kutta方法求解高阶微分方程

一、经典的Runge-Kutta方法&#xff08;四级四阶RK方法&#xff09; Runge-Kutta法&#xff08;简写为RK方法&#xff09;既可达到较高精度&#xff0c;又可避免高阶导数计算。 对微分方程,在区间上的四阶Runge-Kutta方法的公式如下&#xff1a; 二、利用4阶Runge-Kutta方法计…

Elasticsearch - Docker安装Elasticsearch8.12.2

前言 最近在学习 ES&#xff0c;所以需要在服务器上装一个单节点的 ES 服务器环境&#xff1a;centos 7.9 安装 下载镜像 目前最新版本是 8.12.2 docker pull docker.elastic.co/elasticsearch/elasticsearch:8.12.2创建配置 新增配置文件 elasticsearch.yml http.host…

.locked勒索病毒是什么,企业数据被加密了如何恢复?

.locked勒索病毒介绍 .locked勒索病毒是一种恶意软件&#xff0c;它利用加密技术锁定用户的数据或系统&#xff0c;并以此进行勒索。用户一旦感染此病毒&#xff0c;将无法访问其重要文件&#xff0c;病毒会要求用户支付一笔赎金以获取解密密钥。这种病毒通常使用强大的加密算法…

为什么选VR全景技术进行乡村展示,VR全景技术助力乡村振兴

引言&#xff1a; 在科技飞速发展的当下&#xff0c;乡村振兴成为国家重要战略&#xff0c;如何创新性地展示乡村特色&#xff0c;提升乡村吸引力&#xff0c;成为当务之急。VR全景技术&#xff0c;作为一种新兴的展示手段&#xff0c;可以为乡村展示提供全新的视角&#xff0…

可观测性体系建设后,该如何挖掘数据及工具价值?

在现代企业的运维管理中&#xff0c;构建高效且可靠的可观测性体系是保障系统稳定性和业务连续性的关键。然而&#xff0c;运维团队成员的技术能力参差不齐往往成为实现这一目标的障碍。尤其在处理复杂系统故障时&#xff0c;高度依赖专业知识和经验的可观测性工具很难被全员有…

如何在Linux Ubuntu系统安装Nginx服务并实现无公网IP远程连接

文章目录 1. 安装Docker2. 使用Docker拉取Nginx镜像3. 创建并启动Nginx容器4. 本地连接测试5. 公网远程访问本地Nginx5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定公网地址远程访问 在开发人员的工作中&#xff0c;公网远程访问内网是其必备的技术需求之一。对于…

vue key的bug

今天遇到一个bug&#xff0c;列表删除元素时&#xff0c;明明在外层设置了key&#xff0c;但是列表元素的状态居然复用了&#xff0c;找了好久原因&#xff0c;最后是key的取值问题&#xff0c;记录一下。 首先key可以取undefine&#xff0c;这个是不会报错的 然后项目的代码结…

C#配置连接数据库字段

在Web.config文件中 添加如下配置 <!--连接数据库字段--><connectionStrings><add name"sql" connectionString"server.;uidsa;pwd8888;databaseArticleWebSite" /></connectionStrings>

element plus等框架中属性值是组件如何传入,替换分页图标

在 Vue 中替换element plus 分页图标 正常写法引入组件 import prevIcon from /components/xx.vue;<el-pagination layout"prev, pager, next" :prev-icon"prevIcon" :total"5" />利用 h 函数写法 const prevIcon h(div, [xr]);可以写…

发送邮件接口的工作原理?有哪些常用参数?

发送邮件接口的功能有哪些&#xff1f;如何选择发送邮件接口&#xff1f; 无论是商务沟通、信息传递还是个人交流&#xff0c;发送邮件都是一种高效且便捷的方式。而在这背后&#xff0c;发送邮件接口发挥着至关重要的作用。那么&#xff0c;发送邮件接口的工作原理究竟是怎样…