磁盘配置与管理
1.硬盘分区
(1)主分区:在划分硬盘的第1个分区时,会指定其为主分区,Linux最多可以让用户创建4个主分区,其主要用来存放操作系统的启动或引导程序,/boot分区最好放在主分区中。
(2)扩展分区:Linux 下的一个硬盘最多只允许有 4 个主分区,如果用户想要创建更多的分区,应该怎么办?这就有了扩展分区的概念。用户可以创建一个扩展分区,并在扩展分区中创建多个逻辑分区,从理论上来说,其逻辑分区没有数量限制。需要注意的是,创建扩展分区的时候,会占用一个主分区的位置,因此,如果创建了扩展分区,则一个硬盘中最多只能创建3个主分区和1个扩展分区。扩展分区不是用来存放数据的,它的主要功能是创建逻辑分区。
(3)逻辑分区:逻辑分区不能被直接创建,它必须依附在扩展分区下,容量受到扩展分区大小的限制,逻辑分区通常用于存放文件和数据。
大部分设备的前缀名后面跟有一个数字,它唯一指定了某一设备;硬盘驱动器的前缀名后面跟有一个字母和一个数字,字母用于指明设备,而数字用于指明分区。因此,/dev/sda2指定了硬盘上的一个分区,/dev/pts/10指定了一个网络终端会话。设备节点前缀及设备类型说明如下表
设备节点前缀 | 设备类型说明 | 设备节点前缀 | 设备类型说明 |
---|---|---|---|
fb | FRame缓冲 | ttyS | 串口 |
fd | 软盘 | scd | SCSI音频光驱 |
hd | IDE硬盘 | sd | SCSI硬盘 |
lp | 打印机 | sg | SCSI通用设备 |
par | 并口 | sr | SCSI数据光驱 |
pt | 伪终端 | st | SCSI磁带 |
tty | 终端 | md | 磁盘阵列 |
2.添加新磁盘
新购置的磁盘都需要进行如下操作
(1)分区:可以是一个分区或多个分区
(2)格式化:分区必须经过格式化才能创建文件
(3)挂载:被格式化的磁盘分区必须挂载到操作系统相应的文件目录下
将磁盘分区的原因如下
(1)方便管理和控制
(2)提高系统的效率
(3)使用磁盘配额的功能限制用户使用的磁总量
(4)便于备份和恢复
3.在虚拟机中添加硬盘
(1)打开虚拟机软件,点击"编辑虚拟机设置"
(2)点击"添加"
(3)选择需要的磁盘类型
(4)自定义命名,点击"完成",添加成功
(5)重新启动此虚拟机,打开WindTerm,远程连接虚拟机,输入以下命令,查看硬盘分区信息
[root@localhost ~]# fdisk -l //查看磁盘情况
Disk /dev/nvme0n1:300 GiB,322122547200 字节,629145600 个扇区
磁盘型号:VMware Virtual NVMe Disk
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
磁盘标识符:65DBE6A9-2977-4911-909C-B068FA02E8C9
设备 起点 末尾 扇区 大小 类型
/dev/nvme0n1p1 2048 1230847 1228800 600M EFI 系统
/dev/nvme0n1p2 1230848 3327999 2097152 1G Linux 文件系统
/dev/nvme0n1p3 3328000 629143551 625815552 298.4G Linux LVM
Disk /dev/mapper/rhel-root:70 GiB,75161927680 字节,146800640 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/rhel-swap:2 GiB,2151677952 字节,4202496 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/rhel-home:226.41 GiB,243101859840 字节,474808320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/sda:20 GiB,21474836480 字节,41943040 个扇区 //新建磁盘
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@localhost ~]#
4.磁盘分区
(1)fdisk命令-磁盘分区命令
命令格式如下
fdisk [选项] <磁盘> 更改分区表
fdisk [选项] -l <磁盘> 列出分区表
fdisk -s <分区> 给出分区大小(块数)
在对新添加的硬盘进行分区时,先使用m指令查看所有指令的信息,命令如下
[root@localhost ~]# fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.37.4)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
设备不包含可识别的分区表。
创建了一个磁盘标识符为 0x5e1f4568 的新 DOS 磁盘标签。
命令(输入 m 获取帮助):m
帮助:
DOS (MBR)
a 开关 可启动 标志
b 编辑嵌套的 BSD 磁盘标签
c 开关 dos 兼容性标志
常规
d 删除分区
F 列出未分区的空闲区
l 列出已知分区类型
n 添加新分区
p 打印分区表
t 更改分区类型
v 检查分区表
i 打印某个分区的相关信息
杂项
m 打印此菜单
u 更改 显示/记录 单位
x 更多功能(仅限专业人员)
脚本
I 从 sfdisk 脚本文件加载磁盘布局
O 将磁盘布局转储为 sfdisk 脚本文件
保存并退出
w 将分区表写入磁盘并退出
q 退出而不保存更改
新建空磁盘标签
g 新建一份 GPT 分区表
G 新建一份空 GPT (IRIX) 分区表
o 新建一份的空 DOS 分区表
s 新建一份空 Sun 分区表
命令(输入 m 获取帮助):
1)首先创建一个5G的主分区,命令如下
命令(输入 m 获取帮助):n
分区类型
p 主分区 (0 primary, 0 extended, 4 free)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认 1): 1
第一个扇区 (2048-41943039, 默认 2048):
最后一个扇区,+/-sectors 或 +size{
K,M,G,T,P} (2048-41943039, 默认 41943039): +5G
创建了一个新分区 1,类型为“Linux”,大小为 5 GiB。
命令(输入 m 获取帮助):p
Disk /dev/sda:20 GiB,21474836480 字节,41943040 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xffe6555b
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 2048 10487807 10485760 5G 83 Linux
命令(输入 m 获取帮助):
2)继续创建第2个容量为3G的主分区,并查看创建好的两个分区,命令如下
命令(输入 m 获取帮助):n
分区类型
p 主分区 (1 primary, 0 extended, 3 free)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (2-4, 默认 2): 2
第一个扇区 (10487808-41943039, 默认 10487808):
最后一个扇区,+/-sectors 或 +size{
K,M,G,T,P} (10487808-41943039, 默认 41943039): +3G
创建了一个新分区 2,类型为“Linux”,大小为 3 GiB。
命令(输入 m 获取帮助):p
Disk /dev/sda:20 GiB,21474836480 字节,41943040 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xffe6555b
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 2048 10487807 10485760 5G 83 Linux
/dev/sda2 10487808 16779263 6291456 3G 83 Linux
命令(输入 m 获取帮助):
3)继续创建扩展分区,命令如下
命令(输入 m 获取帮助):n
分区类型
p 主分区 (2 primary, 0 extended, 2 free)
e 扩展分区 (逻辑分区容器)
选择 (默认 p):e
分区号 (3,4, 默认 3):
第一个扇区 (16779264-41943039, 默认 16779264):
最后一个扇区,+/-sectors 或 +size{
K,M,G,T,P} (16779264-41943039, 默认 41943039):
创建了一个新分区 3,类型为“Extended”,大小为 12 GiB。
命令(输入 m 获取帮助):p
Disk /dev/sda:20 GiB,21474836480 字节,41943040 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xffe6555b
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 2048 10487807 10485760 5G 83 Linux
/dev/sda2 10487808 16779263 6291456 3G 83 Linux
/dev/sda3 16779264 41943039 25163776 12G 5 扩展
命令(输入 m 获取帮助):
4)在扩展分区中创建逻辑分区,磁盘容量分别为8G和4G,命令如下
命令(输入 m 获取帮助):n
所有主分区的空间都在使用中。
添加逻辑分区 5
第一个扇区 (16781312-41943039, 默认 16781312):
最后一个扇区,+/-sectors 或 +size{
K,M,G,T,P} (16781312-41943039, 默认 41943039): +8G
创建了一个新分区 5,类型为“Linux”,大小为 8 GiB。
命令(输入 m 获取帮助):n
所有主分区的空间都在使用中。
添加逻辑分区 6
第一个扇区 (33560576-41943039, 默认 33560576):
最后一个扇区,+/-sectors 或 +size{
K,M,G,T,P} (33560576-41943039, 默认 41943039):
创建了一个新分区 6,类型为“Linux”,大小为 4 GiB。
命令(输入 m 获取帮助):
5)输入"P",查看分区创建情况,命令如下
命令(输入 m 获取帮助):p
Disk /dev/sda:20 GiB,21474836480 字节,41943040 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xffe6555b
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 2048 10487807 10485760 5G 83 Linux
/dev/sda2 10487808 16779263 6291456 3G 83 Linux
/dev/sda3 16779264 41943039 25163776 12G 5 扩展
/dev/sda5 16781312 33558527 16777216 8G 83 Linux
/dev/sda6 33560576 41943039 8382464 4G 83 Linux
命令(输入 m 获取帮助):
6)输入"w"保存并退出,然后使用"partprobe"命令使系统获取新的分区表情况,命令如下
命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
[root@localhost ~]# partprobe /dev/sda
[root@localhost ~]# fdisk -l
Disk /dev/nvme0n1:300 GiB,322122547200 字节,629145600 个扇区
磁盘型号:VMware Virtual NVMe Disk
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
磁盘标识符:65DBE6A9-2977-4911-909C-B068FA02E8C9
设备 起点 末尾 扇区 大小 类型
/dev/nvme0n1p1 2048 1230847 1228800 600M EFI 系统
/dev/nvme0n1p2 1230848 3327999 2097152 1G Linux 文件系统
/dev/nvme0n1p3 3328000 629143551 625815552 298.4G Linux LVM
Disk /dev/mapper/rhel-root:70 GiB,75161927680 字节,146800640 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/rhel-swap:2 GiB,2151677952 字节,4202496 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/rhel-home:226.41 GiB,243101859840 字节,474808320 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/sda:20 GiB,21474836480 字节,41943040 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xffe6555b
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 2048 10487807 10485760 5G 83 Linux
/dev/sda2 10487808 16779263 6291456 3G 83 Linux
/dev/sda3 16779264 41943039 25163776 12G 5 扩展
/dev/sda5 16781312 33558527 16777216 8G 83 Linux
/dev/sda6 33560576 41943039 8382464 4G 83 Linux
[root@localhost ~]#
5.创建逻辑卷
(1)将/dev/sda2和/dev/sda6分区类型更改为Linux LVM,即将分区ID更改为8e,并保存操作,刷新分区表,命令如下
[root@localhost ~]# fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.37.4)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):l //查看个分区类型对应的ID
00 空 24 NEC DOS 81 Minix / 旧 Linu bf Solaris
01 FAT12 27 隐藏的 NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
02 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
03 XENIX usr 3c PartitionMagic 84 OS/2 隐藏 或 In c6 DRDOS/sec (FAT-
04 FAT16 <32M 40 Venix 80286 85 Linux 扩展 c7 Syrinx
05 扩展 41 PPC PReP Boot 86 NTFS 卷集 da 非文件系统数据
06 FAT16 42 SFS 87 NTFS 卷集 db CP/M / CTOS / .
07 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux 纯文本 de Dell 工具
08 AIX 4e QNX4.x 第2部分 8e Linux LVM df BootIt
09 AIX 可启动 4f QNX4.x 第3部分 93 Amoeba e1 DOS 访问
0a OS/2 启动管理器 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
0b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
0c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad 休 ea Linux 扩展启动
0e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb