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

【Linux】swap交换分区管理

目录

一、Swap 交换分区的功能

二、swap 交换分区的典型大小的设置

2.1 查看交换分区的大小

2.1.1 free

2.1.2 cat /proc/swaps 或 swapon -s

2.1.3 top

三、使用交换分区的整体流程

3.1 案例一

 3.2 案例二


一、Swap 交换分区的功能

计算机运行一个程序首先会将外存(硬盘)中的数据读取到内存中,而 CPU 则从内存中读取数据并根据指令运行相应的程序。其中读写速度(速度不匹配):CPU > 内存 > 硬盘。我们通过引入 swap 交换分区可以缓解 内存与外存之间的读取数据的速度问题。swap 交换分区的物理实体是通过占用一部分外存的存储空间实现的。通过 swap 交换分区技术实现内存从外存的读取速度接近于内存的读取速度(远高于外存)。我们可以将 swap 交换分区理解为缓冲的桥梁,从而缓解了速度不匹配的矛盾。

二、swap 交换分区的典型大小的设置

1. 如果物理内存 <= 2G,swap 设置为 内存的 2 倍

2. 如果物理内存介于 2G~8G 之间,swap 设置为同等内存大小

3. 如果物理内存介于 8G~64G 之间,swap 设置为至少 4 G

4. 如果物理内存 >= 64G,swap 设置为至少 4 G

2.1 查看交换分区的大小

2.1.1 free

free:查看内存的详细信息,其中包括交换分区的大小,单位为 K

free -m:查看内存的详细信息,其中包括交换分区的大小,大小为 M

free -h :查看内存的详细信息,其中包括交换分区的大小,大小为 G

2.1.2 cat /proc/swaps 或 swapon -s

cat /proc/swaps 或 swapon -s:查看即时内存中的交换分区信息。其中 proc 为根路径下的即时内存目录

2.1.3 top

top(实时刷新):显示系统中运行的进程信息,包含swap分区信息 (q退出)

三、使用交换分区的整体流程

  • 第一步:分区
  • 第二步:更新磁盘分区表
  • 第三步:格式化
  • 第四步:挂载
  • 第五步:使用(系统会自动使用)

3.1 案例一

要求:添加一个 1G 的 swap 分区并且重启系统依然有效,不能改变原来的 swap 分区

1. 寻找空闲的磁盘:选择 5G 空闲的 vdb

fdisk -l

2. 分区

fdisk /dev/vdb

3. 更新磁盘分区表

4. 格式化

mkswap /dev/vdc1

blkid

5. 手动挂载:将 1G 的 vdb1 填充到交换分区中(重启后会失效)

验证swap交换分区挂载成功与否的方法:

swapon /dev/vdb1

5. 永久挂载(开机自动挂载)

写入开机自启文件:

vim /etc/fstab/dev/vdb1          swap          swap         defaults 0 0swapon -a   //不同于挂载普通分区时执行的mount -a
free
reboot   //重启验证效果

验证永久挂载的效果前:卸载手动挂载

swapoff /dev/vdb1

 3.2 案例二

要求:将系统的 swap 分区增加到 1500000K,并且重启系统依然有效,不能改变原来的 swap 分区

1. 查看swap分区的大小

2. 计算swap的差值(要求将swap分区调整到1500000K)

3. 创建一个大小为451428大小的物理分区/dev/vdb2

4. 更新磁盘分区表

5. 格式化

6. 挂载

vim /etc/fstab
/dev/vdb2    swap  swap    defaults     0 0

7. 模拟交换分区重启

8. 查看底层分区支持

http://www.xdnf.cn/news/4857.html

相关文章:

  • 特殊版本,官宣永久免费
  • 从入门到深入:Vue.js 学习全攻略
  • C++ 模板方法模式详解与实例
  • 基于多模态大模型的十二指肠穿孔诊疗技术方案
  • NeurIPS 2024 | 工业质检缺陷检测相关论文梳理
  • el-table中合并表格后横向变高样式无效
  • 找不到自定义包出现报错ModuleNotFoundError: No module named
  • 基础编程题目集 6-9 统计个位数字
  • GAMES202-高质量实时渲染(Assignment 3)
  • Python 爬虫之 XPath 元素定位
  • 熔断机制的实战:高并发下怎么优雅“断电”保命?
  • MAE自监督大模型在医学报告生成中的应用
  • windows的rancherDesktop修改镜像源
  • 【kubernetes】通过Sealos 命令行工具一键部署k8s集群
  • 《盟重冰雪传奇》:战士玩法攻略!
  • day010
  • DJ舞曲音乐系统VIP会员等级在线支付音乐试听音乐下载酒吧电音CMS模块DJ资讯源码
  • 医疗问答检索任务的完整 Pipeline 示例
  • 又双叒叕想盘一下systemd
  • 中小企业设备预测性维护三步构建法:从零到精的技术跃迁与中讯烛龙实践
  • BUUCTF——杂项渗透之1和0的故事
  • 6. 进程控制
  • 基于51单片机的自动洗衣机衣料材质proteus仿真
  • 冯诺依曼体系结构与操作系统
  • 2.6 点云数据存储格式——小结
  • 1128. 等价多米诺骨牌对的数量
  • Python Cookbook-7.7 通过 shelve 修改对象
  • HPLC+HRF双模载波组网过程简析
  • 【嵌入式开发-SDIO】
  • 前端获取流式数据并输出