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

Linux-交换空间(Swap)管理

引入概念

在计算机中,硬盘的容量一般比内存大,内存(4GB 8GB 16GB 32GB 64GB…),硬盘(512GB 1T 2T…)。

       冯诺依曼的现代计算机结构体系里面的存储器就是内存

       内存是一种易失性存储器,断电后内存上的数据将丢失;硬盘上的数据依然存在,所以硬盘需要更大的容量用来存储数据,而内存的空间相对小一点。

       运行一个计算机或者操作系统时,CPU里面的数据都是由内存提供的。内存的数据直接给CPU运算进行控制;硬盘上的数据先给内存,内存再提供给CPU。

       因为内存的空间小很容易被用完,如果内存被拉满,计算机将不能正常工作。这个时候计算机有可能出现“蓝屏”“死机”等,甚至可能会直接重启

       既然内存的空间小,也可能很快把它用完。那么可以把内存上面的数据分成两部分,一部分数据是暂时不用的(冷数据),另外一部分数据是当前需要用的(热数据)。冷数据放在内存里面有点浪费空间,可以把它放到硬盘上面去暂时寄存。热数据在使用过程中也会变得越来越多,再把这些数据重新分成热数据和冷数据;当放在磁盘里的冷数据被重新使用时,又会作为热数据。

这样一来,内存会有一个换入换出的过程,而内存在磁盘上换入换出所占据的空间称其为交换空间(Linux中的称呼),在Windows里的名字叫“虚拟内存”。

注:交换空间有多少都行,总之必须得有。

问:什么样的空间可以作为交换空间呢?

答:1.磁盘 2.分区

操作演示

准备磁盘

现有两块磁盘,它们都可以用来做成交换空间

[root@localhost jian]# ll /dev/sda*

[root@localhost jian]# ll /dev/nvme0n2

设置交换空间

sda磁盘(不分区)

[root@localhost jian]# mkswap /dev/sda

设置交换空间,版本为1,大小20GB

nvme0n2磁盘(分区)

[root@localhost jian]# fdisk /dev/nvme0n2

Command (m for help): n

Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-41943039, default 41943039): +10G

n   add a new partition  增加一个新的区域

+10G(大小为10GB

Command (m for help): p

将分区标记为swap类型(l,t)

Command (m for help): l

Command (m for help): t

Hex code or alias (type L to list all): 82

Command (m for help): p

Command (m for help): w

p   print the partition table 打印分区表

w   write table to disk and exit 将表写入磁盘并退出

查看分区:[root@localhost jian]# ll /dev/nvme0n2*

成功创建分区,分区也可以做成交换空间

[root@localhost jian]# mkswap /dev/nvme0n2p1

设置交换空间,版本为1,大小10GB

查看空间情况

[root@localhost jian]# free -m

1.此命令可以查看当前操作系统中内存的使用情况以及交换空间的使用情况,内存总共8203 MB,用了1526 MB,还剩6212 MB

2.因为现在物理内存够用而且使用起来更快,所以交换空间还没开始使用。但不是要等物理内存全部用光之后再去使用交换空间

交换空间的使用

[root@localhost jian]# swapon /dev/sda   启用

[root@localhost jian]# free -m

启用之后交换空间的内存已经明显变大

[root@localhost jian]# swapon /dev/nvme0n2p1

[root@localhost jian]# free -m

再启用一个,交换空间的内存比之前更大

查看空间所有信息

[root@localhost jian]# swapon -s

目前整个交换空间由这三部分空间组成

关闭交换空间

已经不想使用交换空间了,进行如下关闭操作

[root@localhost jian]# swapoff /dev/nvme0n2p1

[root@localhost jian]# swapon -s

在命令后面加上路径,就能关闭对应的交换空间

[root@localhost jian]# swapoff /dev/sda

[root@localhost jian]# swapon -s

当前把新开启的交换空间都已经关闭了,而且系统给出的交换空间也是可以关闭的。

http://www.lryc.cn/news/402887.html

相关文章:

  • 扫描某个网段下存活的IP:fping
  • 【深度学习】PyTorch框架(3):优化与初始化
  • Go-知识测试-子测试
  • .net core IConfiguration 读 appsettings.json 数据,举例
  • 全球Windows机器蓝屏,作为量化人,我的检讨来了
  • 部署和运维
  • 微信小程序基本语法
  • 测试用例的设计方法
  • Android10.0 锁屏分析-KeyguardPatternView图案锁分析
  • Python 装饰器:函数的函数,代码的艺术
  • 安全防御2
  • C语言 ——— 打印水仙花数
  • 「Conda」在Linux系统中安装Conda环境管理器
  • 9.11和9.9哪个大?GPT-4o也翻车了
  • [开源]语雀+Vercel:打造免费个人博客网站
  • 使用ElementUI和element-china-area-data库实现省市区三级联动组件封装
  • 0718,TCP协议,三次握手,四次挥手
  • 如何安装Visual Studio Code
  • vi 编辑器快捷生成 main 函数和基本框架
  • npm相关指令
  • 为什么不要碰自媒体
  • 酷炫末世意境背景404单页HTML源码
  • PHP 调用 1688 详情 API 接口的实战攻略
  • SAP ABAP性能优化
  • 【鸿蒙学习笔记】构建布局・选项卡 (Tabs)
  • 独立游戏《星尘异变》UE5 C++程序开发日志5——实现物流系统
  • Web开发:<br>标签的作用
  • DVC+Minio
  • C++内存管理(区别C语言)深度对比
  • 手把手带你写一个精简版 HashMap 的 put 方法