Linux 存储管理(磁盘管理、逻辑卷LVM、交换分区swap)

目录

1.磁盘管理

1.1 磁盘简介

1.2 管理磁盘

添加磁盘

管理磁盘流程三步曲

1.查看磁盘信息

2.创建分区

3.创建文件系统

4.挂载mount

5.查看挂载信息

6.MBR扩展分区 

7.重启后的影响

2.逻辑卷LVM

2.1 简介

 ​​​​​​2.2 创建LVM

2.3 VG管理

2.4 LV管理实战-在线扩容

3.交换分区管理swap

3.1 简介

3.2 查看当前的分区

3.3 增加交换分区


1.磁盘管理

1.1 磁盘简介

磁盘/硬盘/disk是同一个东西,不同于内存的是容量比较大。

1.1.1  存储设备类型

从工作原理区分

机械

机械硬盘即是传统普通硬盘,主要由盘头,磁头,盘头转轴及控制电机,磁头控制器,数据转移器,接口,缓存等几个部分组成。

固态 

固态驱动器(Solid State Disk或Solid State Drive,简称SSD ),俗称固态硬盘,固态硬盘,固态硬盘是用固态电子存储芯片阵列而成的硬盘

1.1.2 接口类型

 

1.1.3 厂商

西部数据,希捷,三星,日立,金士顿 

1.1.4 术语

  • 盘片:一块硬盘有若干盘片,每个盘片又可以存储数据的上下盘面(Side)。
  • 磁道:每个盘面被划分成许多同心圆,这些同心圆轨迹叫做磁道;磁道从外向内从0开始开始编号。
  • 盘区:将一个盘面划分为若干内角相同的扇形,这样盘面上的每个磁道就被分为若干段圆弧,每段圆弧叫做扇区。
  • 所有盘面上的同一磁道构成一个圆柱,称为柱面。

1.1.5 命名

 kermel对不同接口硬盘命名方式(RHEL/CentOS)

1)IDE(并口)

/dev/hda

/dev/hdb

2)SATA(串口)

/dev/sda

/dev设备文件目录

sda是一个文件

s代表sata就是串口

d代表磁盘

a代表第一块

/dev/sdb

即sd后面加上字母abc表磁盘序号

1.1.6 磁盘分区类型

1)MBR

 概念:主引导记录(MBR,Master Boot Record)是位于磁盘最前面的一段引导

使用情况: 

MBR支持最大的磁盘容量是<2TB。设计时分配4个分区

如果希望超过4个分区,需要放弃主分区,改为拓展分区和逻辑分区

fdisk命令        磁盘分区命令

2)GPT 

概念:全局唯一标识分区表(GUIDPartion Table,缩写:GPT)是一个实体硬盘的分区表的结构布局的标准。

使用情况:

GPT支持大于大于2T的硬盘,支持128个分区 

1.2 管理磁盘

添加磁盘

 点击“编辑虚拟机设置”按钮

点击“添加”按钮 

 点击硬盘,再点击下一步。

点击“下一步” 

 

选择“创建新虚拟磁盘”,再点击“下一步” 。

 

填写“最大磁盘大小”为5,选择选项“将虚拟磁盘拆分成多个文件” ,再点击“下一步”。

 

 点击“完成”。

 点击“确定”按钮。

管理磁盘流程三步曲

 1)分区(MBR或者GPT)

  2)格式化/文件系统 Filesystem

  3)挂载mount

磁盘可以看作一个毛坯房,

                1)分区就是把一个房子分成一个个房间

                 2)格式化/文件系统 就是把房间装修一下,要能用

                  3)挂载mount 就是 给密封房间弄个可以进入的门

1.查看磁盘信息

方法1:ll  /dev/sd*

ll 等同于  ls -l --color=tty

ls加参数的一个别名

其中/dev/sdb,/dev/sdc,/dev/sdd,这些相等于购买的新磁盘

方法2(了解): lsblk

 

2.创建分区

创建分区相当于把房子(磁盘)分成一个个空间(分区)

启动分区工具:fdisk        /dev/sdb

输入“m”可获取操作提示 

进入会话模式:

根据上述提示,可知创建磁盘分区的步骤为:

1)输入“n”开始创建新的分区

2)输入“p”选择分区类型为主分区

3)输入“1”,选择使用1号分区

4)直接回车,使用起始扇区的默认值。

5)输入“+1G”,即设置新创建的分区大小为1G。

如此反复再创建几个分区,再输入“p”查看新建分区

输入“w”,保存修改并退出

刚才划分的分区并没有同步到系统中,使用命令 partprobe /deb/sdb 刷新(重读)分区表

使用命令 fdisk -l /dev/sdb或者命令lsblk,查看分区结果,至此磁盘划分完毕。

 

3.创建文件系统

创建文件系统相当于在房子里放一些格子柜。

使用命令mkfs.ext4  /dev/sdb1,创建文件系统(对新建的分区进行格式化),sdb2,sdb3都要格式化。

mkfs.ext4 /dev/sdb1

 

4.挂载mount
mkdir /mnt/disk1   #创建挂载点,一个分区一个挂载点。mount -t  ext4 /dev/sdb1  /mnt/disk1    #挂载disk1盘

5.查看挂载信息

  方法1:

df        -hT-h, --human-readable  print sizes in human readable format (e.g., 1K 234M 2G)
-T, --print-type      print file system type

可查看到的信息:

分区        文件系统        大小        占用        空闲        占比        挂载点

方法2:

mount

6.MBR扩展分区 

当想要在一个磁盘下创建超过4个分区,需要用到扩展分区。

分区分为主分区和扩展分区(扩展分区里面可以设置多个逻辑分区)。但扩展分区并不能用来挂载,它只是一种规划思路。扩展分区中的逻辑分区和主分区的挂载方式一样。

主分区1主分区2主分区3扩展分区4
逻辑分区5
逻辑分区6
......

过程:

按照上文的步骤创建3个主分区后,创建第4个分区时选择扩展分区。

再次输入“n”时,会默认添加逻辑分区

记得要输入“w”,进行保存!!!

7.永久挂载

虽然现在已经挂载上了,但是重启之后就会失效。

方法一 

我们需要将其写入到自启动文件(当虚拟机启动时,就会自动执行该文件得命令)

vim  /root/.bashrcmount -t ext4 /dev/sdb1  /mnt/disk1

方法二(不建议,一但书写错误,系统无法正常启动 ,只能还原快照。)

vim /etc/fstab#在文件中加上该配置
/dev/sdb1 /mnt/disk1 ext4  defaults  0  0#修改完/etc/fstab后
#加载文件/etc/fstab中设置的所有设备。
mount -a

 

2.逻辑卷LVM

2.1 简介

管理磁盘的一种方式,性质与基本磁盘无异,其特点是可以随意扩张大小。

 相关术语 

PV:物理卷(Physical volume):一块硬盘,或多块硬盘

VG:卷组(Volume Group):一堆磁盘的统称

LV:逻辑卷(Logical Volume):一个逻辑分区,一个分区

 ​​​​​​2.2 创建LVM

1.添加物理磁盘        如/dev/sdc

2.将物理磁盘转换成物理卷(PV)

        转换:pvcreate  /dev/sdc

        查看:pvscan 或 pvs  或 pvdisplay

3.创建卷组(VG)并加入

        创建:vgcreate  vg1  /dev/sdc

        查看:vgs 或 vgscan  或  vgdispaly

4.在卷组中,创建逻辑卷(LV)

        创建:lvcreate  -L  200M  -n lv1  vg1

        其中,-L大小  -n 卷名  vg1为组名

        查看:lvscan

5.创建文件系统

        mkfs.ext4  /dev/vg1/lv1

        注意:/dev/卷组名/逻辑卷名

6.创建挂载点

        mkdir  /mnt/lv1

7.挂载

        mount  /dev/vg1/lv1  /mnt/lv1

创建LVM的不同在于多了第2、3、4步,少了分区 。

2.3 VG管理

示例:

将/dev/vg1容量由4G 扩容到 6G

步骤1:创建PV。而后使用第二步,将PV增加到VG中。

pvcreate  /dev/sdd

步骤2:扩展VG

vgextend vg1  /dev/sdd

2.4 LV管理实战-在线扩容

1)lv扩容 

        1.查看VG空间,观察VG是否有剩余空间。

                查看命令:vgs

        2.扩容LV,增加200M空间,给lv1

                lvextend  -L +200M  /dev/vg1/lv1

2)FS扩容

先观察文件系统当前容量。

df -Th  |  grep 'lv1'

重设LV分区的大小

resize2fs  /dev/vg1/lv1

再次观察df -Th的分区大小。和上一次的对比一下。大小已经发生改变。

3.交换分区管理swap

3.1 简介

swap的作用是 ‘提升’内存的容量,防止OOM(Out Of Memory)即内存溢出。在Linux中叫SWAP,在windows中叫虚拟内存。

swap的大小一般设置为内存的2倍。

但在生产环境中,对于内存较小的系统设置为

系统的内存最小需要的交换空间
大于4GB而小于16GB4GB
大于16GB而小于64GB8GB
大于64GB而小于256GB16GB

3.2 查看当前的分区

free -m 

3.3 增加交换分区

1) 准备分区 

准备将/dev/sde磁盘,划分为1G分区为例 

划分分区后,按t,将类型设置为82,再按w进行保存

fdisk  /dev/sde
partprobe  /dev/sde
#验证分区结果
ll /dev/sde*

2)格式化        mkswap  /dev/sde1

3)挂载        swpon  /dev/sde1

4)验证        free -m

swapoff   /dev/sde1        取消挂载

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

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

相关文章

铱塔 (iita) 开源 IoT 物联网开发平台,基于 SpringBoot + TDEngine +Vue3

01 铱塔 (iita) 物联网平台 铱塔智联 (open-iita) 基于Java语言的开源物联网基础开发平台&#xff0c;提供了物联网及相关业务开发的常见基础功能, 能帮助你快速搭建自己的物联网相关业务平台。 铱塔智联平台包含了品类、物模型、消息转换、通讯组件&#xff08;mqtt/EMQX通讯组…

学习Android的第八天

目录 Android ImageView 图像视图 ImageView 的基本使用 src属性和background属性的区别 范例 解决 anndroid:blackground 属性拉伸导致图片变形的方法 设置透明度的问题 范例 android:src 和 android:background 结合 范例 Java 代码中设置 blackground 和 src 属性…

基于鲲鹏服务器的LNMP配置

基于鲲鹏服务器的LNMP配置 系统 Centos8 # cat /etc/redhat-release CentOS Linux release 8.0.1905 (Core) 卸载已经存在的旧版本的安装包 # rpm -qa | grep php #查看已经安装的PHP旧版本# rpm -qa | grep php | xargs rpm -e #卸载已经安装的旧版&#xff0c;如果提示有…

OpenCV 笔记(21):图像色彩空间

1. 图像色彩空间 图像色彩空间是用于定义颜色范围的数学模型。 它规定了图像中可以使用的颜色以及它们之间的关系。它决定了图像中可以显示的颜色范围。不同的色彩空间可以包含不同的颜色范围&#xff0c;因此选择合适的色彩空间对于确保图像在不同设备上看起来一致非常重要。…

跳跃表的底层实现

跳跃表的底层是由 C 语言实现的&#xff0c;它的实现源码如下&#xff1a; typedef struct zskiplistNode {// 成员对象robj *obj;double score; // 分值struct zskiplistNode *backward; // 回退指针//层struct zskiplistLevel {// 前进指针struct zskiplistNode *forward;//…

架构之模板方法等模式的使用

目录 一、程序编写背景 二、编程思路讲解 - 类图 - 实现逻辑 - 工厂模式 - 模板方法模式 接口类&#xff08;代码&#xff09;抽象类&#xff08;代码&#xff09;具体实现类&#xff08;代码&#xff09;工厂类&#xff08;代码&#xff09;注册类&#xff08;代码&…

Python爬虫实战:抓取猫眼电影排行榜top100#4

爬虫专栏系列&#xff1a;http://t.csdnimg.cn/Oiun0 抓取猫眼电影排行 本节中&#xff0c;我们利用 requests 库和正则表达式来抓取猫眼电影 TOP100 的相关内容。requests 比 urllib 使用更加方便&#xff0c;而且目前我们还没有系统学习 HTML 解析库&#xff0c;所以这里就…

LiteFlow规则引擎框架

LiteFlow规则引擎框架 Hi&#xff0c;我是阿昌&#xff0c;今天介绍一个规则引擎框架&#xff0c;LiteFlow&#xff1b; 一、前言 那首先得知道什么是规则引擎&#xff1f;规则引擎是 一种用于自动化处理业务规则的软件组件。 在软件行业中&#xff0c;规则引擎通常用于解决…

如何使用Docker本地部署一个开源网址导航页并分享好友公网使用

&#x1f525;博客主页&#xff1a; 小羊失眠啦. &#x1f3a5;系列专栏&#xff1a;《C语言》 《数据结构》 《Linux》《Cpolar》 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;…

备战蓝桥杯---动态规划(基础3)

本专题主要介绍在求序列的经典问题上dp的应用。 我们上次用前缀和来解决&#xff0c;这次让我们用dp解决把 我们参考不下降子序列的思路&#xff0c;可以令f[i]为以i结尾的最大字段和&#xff0c;易得&#xff1a; f[i]max(a[i],a[i]f[i-1]); 下面是AC代码&#xff1a; #in…

有哪些方法可以配置并发服务器?

通过合理配置并发服务器&#xff0c;可以提高服务器的处理能力和响应速度&#xff0c;从而更好地满足用户需求。本文将介绍一些常见的并发服务器配置方法&#xff0c;以帮助您更好地实现服务器的高效运行。 一、选择合适的操作系统 操作系统的选择是并发服务器配置的重要环节…

【数据结构与算法-初学者指南】【附带力扣原题】队列

&#x1f389;&#x1f389;欢迎光临&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;特别推荐给大家我的最新专栏《数据结构与算法&#xff1a;初学者入门指南》&#x1f4d8;&am…

面向数据报编程-UDP协议

目录 前言&#xff1a; 1.UDP协议API 1.1UDP编程原理 1.2DatagramSocket类 &#xff08;1&#xff09;DatagramSocket构造方法 &#xff08;2&#xff09;DatagramSocket普通方法 1.3DatagramPacket类 &#xff08;1&#xff09;DatagramPacket构造方法 &#xff08;2…

2.6日学习打卡----初学RabbitMQ(一)

2.6日学习打卡 初识RabbitMQ、 一. MQ 消息队列 MQ全称Message Queue&#xff08;消息队列&#xff09;&#xff0c;是在消息的传输过程中保 存消息的容器。多用于系统之间的异步通信。 同步通信相当于两个人当面对话&#xff0c;你一言我一语。必须及时回复 异步通信相当于通…

vs用msys2编译安装 gmp

1 下载 1.1下载MSYS2工具 MSYS2 1.2 下载gmp The GNU MP Bignum Library 2 使用windows的msys2命令窗口,有三个msys2命名窗口 mingw64 3 4 命令 pacman -Syu 重启&#xff1a; pacman -Su 安装&#xff1a; pacman -S mingw-w64-x86_64-gcc pacman -S mingw-w64-x86_64-make…

C语言函数的栈帧与销毁(面试亮点)

目录 如果你能熟练的掌握函数的栈帧与销毁在面试中是及其亮眼的加分项&#xff0c;所以我们来以实例来将解函数是如何实现栈帧与销毁的。 一. 函数栈帧 二.寄存器 三. 用例题讲解创建栈帧的过程 3.1 main 函数的反汇编代码。 第一步&#xff1a;给调用main函数的函数分配…

[职场] 如何通过运营面试_1 #笔记#媒体#经验分享

如何通过运营面试 盈利是公司的事情&#xff0c;而用户就是你运营的事情。你需要彻底建立一个庞大而有效的用户群&#xff0c;这样才能让你们的公司想盈利就盈利&#xff0c;想战略就战略&#xff0c;想融资就融资。 一般从事运营的人有着强大的自信心&#xff0c;后台数据分析…

JVM-虚拟机栈

虚拟机栈 Java虚拟机栈&#xff08;Java Virtual Machine Stack&#xff09;采用栈的数据结构来管理方法调用中的基本数据&#xff0c;先进后出&#xff08;First In Last Out&#xff09;,每一个方法的调用使用一个栈帧&#xff08;Stack Frame&#xff09;来保存。 接下来以…

vue3 之 通用组件统一注册全局

components/index.js // 把components中的所组件都进行全局化注册 // 通过插件的方式 import ImageView from ./ImageView/index.vue import Sku from ./XtxSku/index.vue export const componentPlugin {install (app) {// app.component(组件名字&#xff0c;组件配置对象)…

D7 Elasticsearch-Mongodb(搜索记录)

我是南城余&#xff01;阿里云开发者平台专家博士证书获得者&#xff01; 欢迎关注我的博客&#xff01;一同成长&#xff01; 一名从事运维开发的worker&#xff0c;记录分享学习。 专注于AI&#xff0c;运维开发&#xff0c;windows Linux 系统领域的分享&#xff01; 知…