磁盘管理
磁盘管理
[TOC]
01.磁盘初认知

硬盘种类


-
内存: 用于临时存放,断电后丢失数据
-
磁盘: 永久保存
-
机械磁盘转速: 5400 7200rpm(每分钟多少转)(家用)
- (企业)10k 15k rpm(转速越快读写速度越快、存储越小)
-
固态硬盘(SSD): 集成电路与芯片
-
对比

接口类型
IDE 已淘汰
**SCSI **
- **一些高端设备还在使用**
- 性能好,但接口不统一!SATA 速度慢,接口统一
- 短的一端传数据, 长的接电源
- **家用笔记本、台式机标配** **
- **SATA**接口,有机械,有固态!
-
上图接口是SATA,但是到底是但到底是机械硬盘,还是固态硬盘,我也不太清楚?*
- 我还特意从网上找了一张SATA接口的固态硬盘!

- 再来一张SATA接口的机械硬盘!

SAS ** 速度快,接口统一.
- 可以说是**SCSI**和**SATA**的结合体
- **企业标配 **
- **图片对比**
PCIe 速度最快!
**准确来说其实是,通用高速扩展总线接口!
- 经典接口形式:
- M.2(走 PCIe 通道)
- 适用笔记本,主流台式机.
- 长条形
- U.2
- 适用服务器、数据中心、高端工作站
- U.2 接口的 SSD 通常是基于 PCIe 总线 + NVMe 协议的.
- PCIe 插槽(加卡式 SSD)
接下来为大家详细介绍这款我曾经买过的SSD固态硬盘.
**品牌:** * **GW3500***存储容量:** ** 1TB**
PCIe 3.0 NVMe M.2它说明了以下几点:
| 项目 | 含义 |
|---|---|
| M.2 | 这是物理接口规格 |
| PCIe 3.0 | 表示它通过 |
| NVMe | 表示它使用 |
🔍* 它是不是 PCIe 接口?*
✅ 是的!它是 PCIe 接口的 SSD.
-
虽然我们常说“M.2 接口”,但这个 M.2 插槽内部其实可以走两种总线:
-
SATA总线接口:速度较慢(约 550 MB/s)
-
PCIe总线接口:速度快得多(PCIe 3.0 x4 可达 ~3500 MB/s)
-
而你的这块硬盘明确标注了 “PCIe 3.0 NVMe”,说明它是 基于 PCIe 总线接口 + NVMe 协议 的高性能 SSD.
FROM Qwen3(通义千问)
企业配置:
磁盘大小
SAS接口 300G 600G 900G X6 X8 X12块
SAS+SATA结合 # 热点存储 用户经常访问的放入SAS盘、不常访问放入SATA
服务器类别&高度&路数:
“U”,用于描述机架式设备的高度.
- 1U 的高度等于 1.75英寸(4.45厘米).
“路数” = 物理 CPU 插槽数量(Socket Count)
单路(1P / 1 Socket):主板上只有 1 个 CPU 插槽 → 装 1 颗物理 CPU
双路(2P / 2 Sockets):主板上有 2 个 CPU 插槽 → 可装 2 颗物理 CPU
四路(4P):高端服务器,支持 4 颗 CPU
✅ 行业通用缩写:
P = 1 Processor(单路) P = 2 Processors(双路)
服务器可以根据其外形尺寸分为以下几类:
- **第一种: 机架式服务器

- *根据服务器的高度**以**U**为单位来定义*.常见的有1U、2U、4U等规格,其中:
- 中间隔开,需要散热!
- **1U服务器**:最紧凑,适合空间有限的数据中心.
- **2U服务器**:比1U高,提供更多内部空间
- **4U及以上**:提供大量的扩展能力- **第二种: 刀片服务器

刀片服务器是一种专为节省空间而设计的服务器架构,多个“刀片”(即实际的服务器模块)可以插入到一个刀片机箱中.
- **第三种: 塔式服务器

类似于普通台式电脑的外形,但性能和扩展性更强.
- 不使用U高度来衡量,因为它们通常不安装在机架内.
内部结构

- 三个盘子六个面,六个面都能够写数据.六个磁头.
盘片: 实际存放数据的地方
磁头: 用来写入和读取数据的
- 盘面数量==磁头数量
磁道: 磁盘中的圆环行区域
- 从外面到里面 最外面是0磁道
扇区: 磁道上最小的存储单位
- 默认大小为512字节
柱面: 不同盘片上的相同的磁道组成的圆柱体
-
磁盘默认是按照柱面进行读写的
-
一个磁道读完了,切到另一个盘片的相同磁道!
-
从这个磁头切换到另一盘片的磁头
-
磁头切换速度快
-

扩展(了解即可)
**磁头臂:** 带动读/写磁头,将磁头移动到指定位置**主轴:** 转动盘片,将盘片上的指定位置移动到读/写磁头下**控制电路:** 控制硬盘的速度,磁头臂的移动,向磁头下发命令等.02.RAID技术
#独立磁盘冗余阵列**将同一阵列中的多个磁盘视为单一的虚拟磁盘**
**数据是以**分段的方式**顺序存放**于磁盘阵列中**举个通俗例子* 🌰*假设你有一个 120 MB 的视频文件,要存到一个由 3 块硬盘组成的 RAID 阵列中(比如 RAID 0).RAID 控制器会这样做:把 120 MB 文件切成 3 个 40 MB 的数据块**(这就是“分段”)**;也就是数据条带化**然后按顺序**:第 1 块(0–40 MB)→ 写入 硬盘1第 2 块(40–80 MB)→ 写入 硬盘2第 3 块(80–120 MB)→ 写入 硬盘3如果还有更多数据,就继续循环:第4块又回到硬盘1,依此类推.特点:
-
获得更大的容量
-
获得更高的性能
-
分段存储,分段读写
-
速度比整块的读写快!
-
-
获得**更好的安全性 **
上面三个特点根据所选的RAID级别不同, 有所区别, 一般无法同时满足这三个点
RAID0

数据条带化,可以将数据以分段的方式顺序存放于磁盘阵列中
-
至少两块盘.
-
1块盘也能做RAID0
-
如果只有1个盘,相当于没有将数据条带化.
-
所有的读取都在一块盘上进行!
-
-
-
全部用来读写,没有备份,没有校验.
- 适用于不要求安全,只要求速度的业务场景
-
使用率 n/n=1 100%
-
不允许坏盘
RAID1

可靠性最高.双写,读取的时候随机读取,看一下哪个空闲就读去哪个.互为镜像.
-
两块盘**(偶数盘)**
-
适用于只要求安全,不要求速度(系统、监控)
-
互为镜像,使用率50%
-
只允许坏一块盘
RAID3

当有数据出错时,校验盘会成为整个硬盘性能的瓶颈.奇偶校验
-
至少3块盘
-
专门拿一个盘做校验
-
使用率 n-1/n
-
只允许坏1块盘
RAID5

把校验值分散在各个盘的不同位置.奇偶校验
-
至少3块盘
-
分散了负载,有较好的性能!
-
适用于比较稳定的业务场景.
-
使用率 n-1/n
-
只允许坏1块盘
RAID3和RAID5比较像,5突破了校验的瓶颈,校验值分散开来.性能较好!
RAID6

RAID6和RAID5比较像,RAID6增加了1块校验盘,相当于两块校验盘.
-
至少4块盘
- 既然用RAID6了,那肯定要多加几块盘,组成磁盘阵列!
-
非常稳定
-
使用率 n-2/n
-
允许坏2块盘
RAID10

RAID1和RAID0结合体.先镜像,后条带化!
左边两块盘相同,他们是镜像出来的.
-
至少4块盘
-
高并发组合场景
-
使用率50%
-
组内最多允许坏一块,组间可以坏两块盘
- 不能是一个组中的两块!
RAID50

RAID5和RAID0结合体.先做RAID5,后加在一起
-
其实这个RAID0,可以忽略,相当于就是两个RAID5
-
至少6块盘
- 因为做一个RAID5至少3块盘.
-
使用率 n-2/n
- 可以理解为两个校验盘
-
组内最多允许坏一块,组间可以坏两块盘
- 不能是一个组中的两块!
RAID级别对比:**
面试题:
| RAID 级别 | 数据保护方式 | 硬盘数量 | 容量使用率 | 可坏几块盘 |
|---|---|---|---|---|
| RAID0 | 不安全 | 2(1块也行) | 1 | 0 |
| RAID1 | 镜像 | 2(偶数即可) | 1/2 | 1 |
| RAID3 | 校验 | 至少3块 | (n-1)/n | 1 |
| RAID5 | 校验 | 至少3块 | (n-1)/n | 1 |
| RAID6 | 校验 | 至少4块 | (n-2)/n | 2 |
| RAID10 | 镜像 | 至少4块 | 1/2 | 2( |
| RAID50 | 校验 | 至少6块 | (n-2)/n | 2( |
对于服务器如果不做RAID,不能安装操作系统. 在主板上有个RAID卡(阵列卡)
企业需求:
-
正常组RAID
-
没有RAID需求 (安装系统)
-
拿一块盘直接做个RAID0即可.
如何做RAID?
针对不同的服务器型号搜索即可
RAID2.0
相比传统的RAID
- 虚拟化
运用虚拟化的技术,把物理磁盘虚拟化出来,能够实现所有的数据,都能均匀分散的存储在各个磁盘里面,而我们传统的磁盘是做不到的(通常是磁盘组的形式来存放的).
- 快速重构
重构的时候是所有的硬盘,所有的磁盘都会参与这个重构.
- 自动负载均衡
**可以很好地实现负载均衡.**当你有大量的数据要去读取,恢复等…是所有的磁盘都会参与这个工作的.更够提高更高的性能.
-
系统性能提升
-
自愈合(恢复)
自愈合,如果有错误的话,就会自动的去校验,重构,从而进行相应的恢复.

重构速度大大提升,并且所有的盘都会参与当中.
03.磁盘分区
磁盘及分区命名
磁盘文件放在/dev/下面
磁盘接口:
**SAS/SATA/SCSI 命名:sd开头
一个虚拟机完全可以挂载多个硬盘**设备命名规则:**在 Linux 系统中,第一块硬盘通常命名为** /dev/sda**,第二块为 **/dev/sdb**,依此类推 /dev/sd[a-z] 最多到 /dev/sdz,之后会变成 /dev/sdaa, /dev/sdab...;**这些设备名由检测到的磁盘顺序自动分配.****数量限制:**理论上可以挂载多块,但受限于,内存和I/O性能开销.
-
主分区(primary)
-
一定要有,最少3个,最多4个
-
用于存放数据
-
-
扩展分区(extend)
-
最多1个
-
**可以没有,硬盘都做成主分区
-
无法直接使用,依托于逻辑分区
-
-
逻辑分区(logical)
-
用于存放具体的数据
-
从5开始
-
需要先寻扩展分区,最后才找到逻辑分区
- 速度会慢一点
-
*添加的这块硬盘为**sda**
不做扩展分区,/dev/sda4就是第④个主分区有了扩展分区,就有了对应的逻辑分区、**这个扩展分区,就是之前的第④个主分区**只不过把这个主分区,拆成了许多逻辑分区而已!**逻辑分区从5开始**最大支持4个主分区
最大支持3个主分区+1个扩展分区+n个逻辑分区
**磁盘的名称:**第一块磁盘: sda 第2个主分区: sda2第二块磁盘: sdb 第1个主分区: sdb1 第1个逻辑分区: sdb5案例第二块硬盘的第1个主分区: /dev/sdb1第三块硬盘的第2个逻辑分区: /dev/sdc6
mbr VS gpt(分区表)
mbr:我们上面讲的各种分区(主分区,逻辑分区等等),这些概念都存在于mbr分区表中,但是随着大容量(超过2T的来说)硬盘出现,这个mbr它就用不了了.
- 笔记本,磁盘,硬盘默认都是这种**MBR格式**
- 支持小于2TB的硬盘分区、使用**fdisk**进行分区
- fdisk只支持mbr分区表**gpt:支持更大容量的硬盘,它基本上不用再来区分那些主分区的事情,绝对够用了.
- **GPT格式最大支持128个主分区**
- GPT格式支持大于2TB硬盘分区、使用**parted**进行分区磁盘分区
①插入磁盘
第一步: 插入一个小于2T的磁盘
-
虚拟机vmware
-
添加磁盘需要重启

- 如何查看我们刚才插入的硬盘呢???
**lsblk**推荐这个命令下面有详细的介绍
**fdisk -l****这个也能查看**别忘了-l选项下面也有详细的介绍-
云服务器增加一块磁盘
-
后面讲云服务器会讲云如何增加磁盘
-
物理服务器增加磁盘
-
支持热插拔
-
插入服务器,使用fdisk命令可以直接看到新的磁盘
-
不需要重启
②🧣fdisk分区
别忘记重启系统 reboot
-
适用于小于2TB磁盘
-
只支持mbr分区表
fdisk -l
查看当前的系统分区情况:

fdisk /dev/sdb
[root@oldboyedu ~]#fdisk /dev/sdbCommand (m for help): m # 帮助显示菜单 d delete a partition # 删除分区 l list known partition types # 显示分区类型 n add a new partition # 创建分区 p print the partition table # 输出分区表 Save & Exit w write table to disk and exit # 保存分区并退出 q quit without saving changes # 退出不保存![]()
- 这样就能够进行删除了!


- 第一块主分区sdb1

- 第二块和第三块主分区sdb2,sdb3

-
再通过p查看一下
-
也可以通过d进行删除
-
或者q退出不保存重新来一次
-

[root@oldboyedu ~]#fdisk /dev/sdb
Command (m for help):** n ** # 添加分区
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): #默认主分区
Using default response p.
Partition number (1-4, default 1): # 输入分区编号 默认1
First sector (2048-2097151999, default 2048): # 开始的大小 默认即可
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-2097151999, default 2097151999): +10G # 给10G空间
Command (m for help): p # 输出分区表信息
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux # 第一个分区
#继续划分第二个分区
Command (m for help): n
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (2-4, default 2):
First sector (20973568-2097151999, default 20973568):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (20973568-2097151999, default 2097151999): +100G
Created a new partition 2 of type ‘Linux’ and of size 100 GiB.
Command (m for help): p
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux
/dev/sdb2 20973568 230688767 209715200 100G 83 Linux
#划分第三个分区
Command (m for help): n
Partition type
p primary (2 primary, 0 extended, 2 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (3,4, default 3):
First sector (230688768-2097151999, default 230688768):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (230688768-2097151999, default 2097151999): +100G
Created a new partition 3 of type ‘Linux’ and of size 100 GiB.
Command (m for help): p
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux
/dev/sdb2 20973568 230688767 209715200 100G 83 Linux
/dev/sdb3 230688768 440403967 209715200 100G 83 Linux
#继续划分第4个主分区
Command (m for help): n
Partition type
p primary (3 primary, 0 extended, 1 free)
e extended (container for logical partitions)
Select (default e): p
这里来到了第四块盘,默认是扩展分区,但是我们这里划分的是p(主分区)
Selected partition 4
First sector (440403968-2097151999, default 440403968):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (440403968-2097151999, default 2097151999): +100G
Created a new partition 4 of type ‘Linux’ and of size 100 GiB.
Command (m for help): p
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux
/dev/sdb2 20973568 230688767 209715200 100G 83 Linux
/dev/sdb3 230688768 440403967 209715200 100G 83 Linux
/dev/sdb4 440403968 650119167 209715200 100G 83 Linux
#无法继续分区
- 最多四块主分区
#删除分区
Command (m for help): d
Partition number (1-4, default 4): # 默认删除第4个分区
Partition 4 has been deleted.
Command (m for help): p
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux
/dev/sdb2 20973568 230688767 209715200 100G 83 Linux
/dev/sdb3 230688768 440403967 209715200 100G 83 Linux
划分扩展分区
Command (m for help): n #将所有剩余的空给给扩展分区
Partition type
p primary (3 primary, 0 extended, 1 free)
e extended (container for logical partitions)
Select (default e):
这次选择的是扩展空间
Using default response e.
Selected partition 4
First sector (440403968-2097151999, default 440403968):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (440403968-2097151999, default 2097151999):
Created a new partition 4 of type ‘Extended’ and of size 790 GiB.
#基于扩展分区划分逻辑分区
Command (m for help): n
All primary partitions are in use.
所有的主分区,都被使用!
Adding logical partition 5
First sector (440406016-2097151999, default 440406016):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (440406016-2097151999, default 2097151999): +100G
Created a new partition 5 of type ‘Linux’ and of size 100 GiB.
Command (m for help): p
Disk /dev/sdb: 1000 GiB, 1073741824000 bytes, 2097152000 sectors
总共1000G
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x2538df24
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux
/dev/sdb2 20973568 230688767 209715200 100G 83 Linux
/dev/sdb3 230688768 440403967 209715200 100G 83 Linux
/dev/sdb4 440403968 2097151999 1656748032 790G 5 Extended
扩展分区,实际不存放数据
/dev/sdb5 440406016 650121215 209715200 100G 83 Linux
在逻辑卷中存放数据!
#继续划分逻辑卷
Command (m for help): n
All primary partitions are in use.
Adding logical partition 6
First sector (650123264-2097151999, default 650123264):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (650123264-2097151999, default 2097151999):
起始和结束都是默认的回车
- 说明他扩展分区的剩余的空间都分配给了第二个逻辑分区6
Created a new partition 6 of type ‘Linux’ and of size 690 GiB.
Command (m for help): p
Disk /dev/sdb: 1000 GiB, 1073741824000 bytes, 2097152000 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x2538df24
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 20973567 20971520 10G 83 Linux
/dev/sdb2 20973568 230688767 209715200 100G 83 Linux
/dev/sdb3 230688768 440403967 209715200 100G 83 Linux
/dev/sdb4 440403968 2097151999 1656748032 790G 5 Extended
/dev/sdb5 440406016 650121215 209715200 100G 83 Linux
/dev/sdb6 650123264 2097151999 1447028736 690G 83 Linux
这两个都是逻辑卷
- 两个逻辑卷容量的总和等于sdb4扩展分区
#保存并退出
Command (m for help): w
⭐partprobe /dev/sdb
通知系统磁盘的分区信息变化,将分区信息同步到内核.
修改了磁盘分区(如新建、删除、调整分区),但内核仍缓存旧的分区信息时,使用 partprobe 可以让内核立即感知到新的分区结构,而无需重启.

lsblk查看我们刚分完区,后的磁盘结构
👑udevadm
# 查看设备信息:'配置info'[root@R11 ~]# udevadm info /dev/nvme0n1p1 | headM: nvme0n1p1R: 1J: b259:1U: blockT: partition.......👑lsscsi
# 显示scsi/sata设备信息:[root@R11 ~]# lsscsi'ls查看 scsi'[3:0:0:0] cd/dvd NECVMWar VMware SATA CD01 1.00 /dev/sr0lsblk
用于列出系统中所有块设备(如硬盘、分区、LVM等)的信息.
它默认以树状结构展示设备之间的层级关系,清晰直观.
各列含义
| 列名 | 说明 |
|---|---|
| NAME | 设备名称(如 sda1, sdb3) |
| MAJ | 主设备号:次设备号(内核识别用) |
| RM | 是否为可移动设备( |
| SIZE | 设备容量 |
| RO | 是否只读(1=只读, |
| TYPE | 类型: |
| MOUNTPOINTS | 挂载点(多个挂载点会全部列出,如 bind mount) |
lsblk -f
查看文件系统类型和 UUID
UUID #系统给每个硬件信息分配了一个唯一的ID号码

blkid

②🧣parted分区
不管是哪个分区表mbr还是gpt都能用.
- 但是这个命令用起来比较危险**,它是实时生效的,立马生效.说删直接走.都不用等,**





parted 工具本身不会创建(格式化)文件系统'它只是用来 划分分区'parted 创建分区 ≠ 创建文件系统你需要额外运行 mkfs.xfs /dev/sda1 才能真正拥有一个 XFS 文件系统
Centos7
**疑问??**为什么fdisk可以直接创建出来,而不需要提前创建分区表.
**答:**因为fdisk命令只适用于mbr分区,而parted命令既适用于mbr分区,也适用于gpt分区
- 所以对于一个新的硬盘,使用前,要进行创建分区.

(1)如果它是一块全新的空盘(比如 /dev/sdb)→ 可以安全使用 mktabel gpt
(2)只要它执行过mktable,说明他已经指定过分区表!而你只是想加一个新分区---》不需要重新执行mktable直接mkpart,创建分区就行!
(3)快速删除 GPT 分区表中的某个分区#(比如你刚创建的 /dev/sda1),可以使用 parted 的 rm# 查看当前分区[root@R11 ~]# parted /dev/sda print...Number Start End Size File system Name Flags 1 1049kB 1000MB 999MB oldboy
# 删除分区 1[root@R11 ~]# parted /dev/sda rm 1
# 再次查看,确认已删除[root@R11 ~]# parted /dev/sda print
(4)清空 /dev/sda 重做(如重装系统)# 使用 -s(script mode) 跳过交互确认parted -s /dev/sda mklabel gpt# 重新指定分区表创建mbr分区
-
如果我们要用parted命令创建mbr分区的话,
-
类型名是msdos

进行非交互式(non-interactive)分区时'start 和 end 的写法非常灵活,支持多种单位'
s 扇区(sector),每个扇区通常是 512 字节kB/MB/GB 千字节、兆字节、吉字节(注意是 1000 进制)KiB/MiB/GiB 二进制单位(1024 进制,更推荐用于对齐)💡 强烈建议使用 MiB/GiB 或 s(扇区),避免因 1000/1024 混淆导致对齐问题
❌ 从 0 开始分区是错误的做法,会导致分区未对齐✅ 正确做法:从 1MiB(即 2048 扇区)开始 ✅ 永远不要从 0 开始分区! ✅ 始终从 1MiB(2048s)开始第一个分区!
✅ 实用示例1.从头开始,到 10GiB 结束---> 1MiB 10GiB2.创建一个从 10GiB 到磁盘末尾的分区--->10GiB 100%# 100% 表示“到磁盘末尾”创建gpt分区



最后别忘了格式化mkfs.ext4
挂载
🧣非交互式
(1)它是一个新的磁盘/dev/sda# 添加磁盘(STAT、SCSI),重启识别![root@R11 ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTSsda 8:0 0 1000G 0 disk[root@R11 ~]# parted /dev/sda printError: /dev/sda: unrecognised disk labelModel: VMware, VMware Virtual S (scsi)Disk /dev/sda: 1074GBSector size (logical/physical): 512B/512BPartition Table: unknown'它是一个新的磁盘,所以系统也不知道要分哪个分区!!!'# 所以刚开始一定要显示指定mbr(类型名是msdos)或者gptDisk Flags:'具体操作命令如下!刚开始可以不需要加-s'[root@R11 ~]# parted /dev/sda mktable gpt mkpart oldboy 1MiB 10GiBInformation: You may need to update /etc/fstab.
(2)已经操作过了-->分过区(mbr OR gpt)[root@R11 ~]# parted /dev/sda printModel: ATA VMware Virtual S (scsi)Disk /dev/sda: 1074GBSector size (logical/physical): 512B/512BPartition Table: gpt'gpt!!!'Disk Flags:
Number Start End Size File system Name Flags
[root@R11 ~]# parted -s /dev/sda mktable gpt mkpart oldboy 1MiB 10GiB# -s:跳过交互确认[root@R11 ~]# parted /dev/sda printModel: ATA VMware Virtual S (scsi)Disk /dev/sda: 1074GBSector size (logical/physical): 512B/512BPartition Table: gptDisk Flags:
Number Start End Size File system Name Flags 1 1049kB 10.7GB 10.7GB oldboy'name是随便起的!'
[root@R11 ~]# parted /dev/sda mkpart heima 10GiB 40%Information: You may need to update /etc/fstab.# 从10GiB到百分之40%[root@R11 ~]# parted /dev/sda printModel: VMware, VMware Virtual S (scsi)Disk /dev/sda: 1074GBSector size (logical/physical): 512B/512BPartition Table: gptDisk Flags:
Number Start End Size File system Name Flags 1 1049kB 10.7GB 10.7GB oldboy 2 10.7GB 429GB 419GB heima
验证是否真的是 10 GiB?你可以让 parted 用 二进制单位 显示,结果就和你输入的一致了: [root@R11 ~]# parted /dev/sda unit MiB printModel: VMware, VMware Virtual S (scsi)Disk /dev/sda: 1024000MiBSector size (logical/physical): 512B/512BPartition Table: gptDisk Flags:
Number Start End Size File system Name Flags 1 1.00MiB 10240MiB 10239MiB oldboy 2 10240MiB 409600MiB 399360MiB heima04.格式化
分完区的磁盘,必须先进行格式化才能挂载使用!
- 相当于房间做隔断

-
这个新添加进来的磁盘,就相当于一个大的房子
-
①先进行分区,做隔断
-
②格式化,清理打扫卫生
- 如果硬件存储设备没有进行格式化,则Linux系统无法得知怎么在其上写入数据.
-
③挂载使用
文件系统类型
常见的就是ext4和XFS
ext4
目前最广泛使用的 Linux 默认文件系统.
-
向后兼容 ext2/ext3.
-
缺点:某些极端高并发写入场景下不如 XFS.
-
适用场景:通用桌面、服务器、大多数 Linux 发行版默认选项.
XFS
-
高吞吐量,适合大文件和大容量存储;
-
缺点:对小文件处理不如 ext4;不能缩小分区.
-
适用场景:视频编辑、数据库、大型服务器存储.




-f
-
强制重复格式化 ** -f
-
-f /dev/sdb
-
跟的是一块磁盘
-
重新格式化后,里面的分区也没有了.
-
-
-f /dev/sdb1
-
跟的是某一块具体的分区
-
只是重复格式化这个分区而已
-
-t
mount -t 是 Linux 系统中用于指定文件系统类型的挂载命令选项.-t 后面需跟具体的文件系统类型(如 ext4、ntfs、vfat 等),用于明确告知系统要挂载的设备使用何种文件系统格式.例如:
mount -t ext4 /dev/sda1 /mnt表示将 /dev/sda1 设备以 ext4 文件系统类型挂载到 /mnt 目录.
**注意:**若未指定 -t 选项,系统通常会尝试自动检测文件系统类型.
一般让他自动识别就可以了!!

05.挂载
如果不进行挂载,则无法访问设备里面,使用不了
临时挂载
**mount 设备名 挂载点
前提是有这个挂载点 可以通过mkdir新建个空目录就行!

-
尽量是一个空的目录
-
如果这个目录下面原本有文件,挂载后,就会被隐藏掉.
df -h
查看磁盘挂载信息

umount
取消挂载
- 不能在挂载目录里面,否则无法取消挂载!


-lf
这个选项可以强制卸载
甚至可以把根目录卸载了,不过重新启动一下就好了(人家毕竟是根目录嘛)
(和rm -rf / 删除根目录同理,最后重启后,都能够进行恢复)

小故障

-
/proc/mounts当前系统 挂载情况的一个映射
-
grep ‘/mnt’ /proc/mounts
我们这里只是过滤了一下/mnt
**一个小故障:**如果想要挂载一个目录,当你df -h看,并没有,但是呢,你mount挂载还挂不上从而出现 **灵异事件?**/proc/mounts 这个目录的挂载信息更加权威一点,可以过滤一下,是否挂载成功!又或者你删除的时候,来一波强制删除,unmount -lf删除了之后再挂载试试永久挂载
把信息写进**/etc/fstab**中,永久挂载

UUID or 设备名1.在非克隆场景,一般持久挂载时,使用UUID,因为磁盘的命名可能会变2.克隆场景,使用设备名而不用UUID
如果/etc/fstab写错了,可能会导致无法开机:root@A:~# vim /etc/fstabroot@A:~# tail -1 /etc/fstab/dev/sr0 /mnt666 iso9660 defaults,abcd,1234 0 0# 挂载点不存在且选项错误root@A:~# reboot# 此时重启报错,进入emergency mode(紧急模式)此时可以输入root密码,在字符界面修正问题:在/etc/fstab/中注释新添加的行# 然后重启root@A:~# tail -1 /etc/fstab#/dev/sr0 /mnt666 iso9660 defaults,abcd,1234 0 0root@A:~# reboot-
第六列检查老慢了**
-
查看UUID
-
blkid
-
lsblk -f
-
这两个命令上面有详细的介绍
-
**企业使用磁盘挂载方式****注意企业中**已经有数据的磁盘直接挂载**、**不能格式化**插入新磁盘不进行分区,空间容量有那么大!格式化新磁盘挂载使用新磁盘/etc/rc.local

echo 'mount /dev/sdb1 /mnt/data1' >> /etc/rc.localreboot #重启
/etc/fstab

mount -a
-
根据 /etc/fstab 文件中的配置,挂载所有尚未挂载的文件系统.
-
相当于执行挂载操作.
使用场景:
- 手动修改 /etc/fstab 后,想立即应用新配置(而不重启);
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!




