Linux磁盘分区、逻辑卷、交换分区管理

一.分区

1.MBR分区

2.GPT分区

二.磁盘分区管理

1.查看磁盘信息

2.添加磁盘

 3.管理分区

(1)fdisk,默认划分为MBR的格式

(2)gdisk,默认默认划分为GPT的格式

(3)parted,用于GPT分区

三.逻辑卷管理

1.LVM各个概念

(1)物理存储设备

(2)物理卷

(3)卷组

(4)PE物理区域

(5)逻辑卷

(6)LE逻辑区域

(7)VGDA卷组描述符区域

2.逻辑卷创建部署

(1)pvcreate创建物理卷

(2)更改分区类型为逻辑卷

(3)vgcreate创建卷组

(4)lvcreate创建逻辑卷

(5)mkfs文件系统格式化,挂载

3.逻辑卷大小调整

(1)vgextend卷组扩展

(2)逻辑卷扩大/缩小

四.交换分区管理

1.格式化并激活交换空间并查看是否激活

2.新建/swap文件扩展交换空间 ,格式化并激活

3.实现开机自动挂载 


一.分区

1.MBR分区

(1)是传统的分区机制,使用BIOS引导PC设备,寻址空间只32bit,分区空间最大支持2.2TB

支持的分区数量:  4个主分区或者3个主分区1个扩展分区(分区表占据64个字节,其中每个分区的信息占用16个字节,分区表里面可以记录四个分区信 息描述)

(2)MBR分区类型:

 主分区(primary partition)(系统分区)

        用来启动操作系统,必须是主分区

        一块硬盘最多4个主分区或3主分区+1扩展分区(含多个逻辑分区),主分区不可以再进行二次分区。

        主分区可以直接建立文件系统,存放数据

        可以用来引导、启动操作系统

扩展分区(extended partition)(活动分区)

        一块硬盘最多一个扩展分区,加主分区最多4个

        不能创建文件系统

        可以划分多个逻辑分区

逻辑分区(logical partition)(启动分区)

        安装操作系统的分区,可以是主分区也可以是逻辑分区

        能创建文件系统,存放数据

        逻辑分区的数量没有限制

2.GPT分区

(1)全局唯一标识分区表)是一种比MBR分区更先进、更灵活的磁盘分区模式

(2)GPT分区优点:

在默情况下,GPT最多可支持128个分区

支持2.2TB的总容量及大于2.2TB的分区,最大支持

18EB(1EB=1024PB,1PB=1024TB,1TB=1024GB)

GPT区表自带备份

向后兼容MBR ,GPT分区表上包含保护性的MBR

二.磁盘分区管理

1.查看磁盘信息

[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom     #光盘
                                       /run/media/root/RHEL-9-1-0-BaseOS-x86_64
nvme0n1       259:0    0   50G  0 disk     #nvme类型硬盘
├─nvme0n1p1   259:1    0    1G  0 part /boot   #主分区1
└─nvme0n1p2   259:2    0   49G  0 part    #主分区2
  ├─rhel-root 253:0    0   44G  0 lvm  /   #主分区2的第一个逻辑分区
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]    #主分区2的第二个逻辑分区

2.添加磁盘

虚拟机关机状态,设置虚拟机,添加磁盘设备,设置大小,确定保存,开机查看

Linux磁盘分区、逻辑卷、交换分区管理_第1张图片

Linux磁盘分区、逻辑卷、交换分区管理_第2张图片

添加完20G之后必须要确定虚拟机主页出现新磁盘信息

 Linux磁盘分区、逻辑卷、交换分区管理_第3张图片

开机查看磁盘信息 

[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 

 3.管理分区

(1)fdisk,默认划分为MBR的格式

创建主分区

[root@SLB ~]# fdisk /dev/nvme0n2

Welcome to fdisk (util-linux 2.37.4).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x6ee58e65.


Command (m for help): n
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p    #创建主分区
Partition number (1-4, default 1): 1   #指定编号
First sector (2048-41943039, default 2048):     #指定起始大小
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-41943039, default 41943039): +5G      
#指定分配大小
Created a new partition 1 of type 'Linux' and of size 5 GiB.

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (10487808-41943039, default 10487808): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (10487808-41943039, default 41943039): +5G

Created a new partition 2 of type 'Linux' and of size 5 GiB.

Command (m for help): p
Disk /dev/nvme0n2: 20 GiB, 21474836480 bytes, 41943040 sectors
Disk model: VMware Virtual NVMe Disk
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: 0x6ee58e65

Device         Boot    Start      End  Sectors Size Id Type
/dev/nvme0n2p1          2048 10487807 10485760   5G 83 Linux
/dev/nvme0n2p2      10487808 20973567 10485760   5G 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): p
Partition number (3,4, default 3): 3
First sector (20973568-41943039, default 20973568): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (20973568-41943039, default 41943039): +5G

Created a new partition 3 of type 'Linux' and of size 5 GiB.

Command (m for help): n
Partition type
   p   primary (3 primary, 0 extended, 1 free)
   e   extended (container for logical partitions)
Select (default e): e     #创建扩展分区

Selected partition 4
First sector (31459328-41943039, default 31459328): 
Last sector, +/-sectors or +/-size{K,M,G,T,P} (31459328-41943039, default 41943039): 
#不填写默认就将剩余空间都分配给它
Created a new partition 4 of type 'Extended' and of size 5 GiB.

Command (m for help): p
Disk /dev/nvme0n2: 20 GiB, 21474836480 bytes, 41943040 sectors
Disk model: VMware Virtual NVMe Disk
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: 0x6ee58e65

Device         Boot    Start      End  Sectors Size Id Type
/dev/nvme0n2p1          2048 10487807 10485760   5G 83 Linux
/dev/nvme0n2p2      10487808 20973567 10485760   5G 83 Linux
/dev/nvme0n2p3      20973568 31459327 10485760   5G 83 Linux
/dev/nvme0n2p4      31459328 41943039 10483712   5G  5 Extended

Command (m for help): w        #保存退出
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

[root@SLB ~]# 

部分参数

a

磁盘的启动分区

d

除磁盘分区

l

所有支持的分区类型

m

查看所有指令的帮助信

q

不保存更改,退出fdisk

g

建一个空的GPT分区表

p

当前磁盘的分区信息

t

改分区类型

u

切换所显示的分区大小单

n

建新分区

w

改写入磁盘分区表,然后退出fdisk命令

o

建一个空的DOS分区表

(2)gdisk,默认默认划分为GPT的格式

 在上面的基础上再加两块磁盘

Linux磁盘分区、逻辑卷、交换分区管理_第4张图片

 查看磁盘信息

[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:4    0    5G  0 part 
├─nvme0n2p2   259:5    0    5G  0 part 
├─nvme0n2p3   259:6    0    5G  0 part 
└─nvme0n2p4   259:7    0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
nvme0n4       259:9    0   10G  0 disk 

使用gdisk创建分区

[root@SLB ~]# gdisk /dev/nvme0n3
GPT fdisk (gdisk) version 1.0.7

Partition table scan:
  MBR: not present
  BSD: not present
  APM: not present
  GPT: not present

Creating new GPT entries in memory.

Command (? for help): ?
b	back up GPT data to a file   #备份GPT数据到文件中
c	change a partition's name    #更改分区的名称
d	delete a partition           #删除分区
i	show detailed information on a partition    #列出分区的详细信息
l	list known partition types                  #列出已知的分区类型
n	add a new partition   #新增分区
o	create a new empty GUID partition table (GPT)     #创建一个新的空GUID分区表
p	print the partition table                          #打印分区表
q	quit without saving changes             #退出并保存
r	recovery and transformation options (experts only)   #恢复和转型
s	sort partitions                             #排序分区
t	change a partition's type code           #更改分区的类型代码
v	verify disk                     #验证磁盘
w	write table to disk and exit        #将表写入磁盘并退出
x	extra functionality (experts only)   #额外功能
?	print this menu                #帮助信息

Command (? for help): n
Partition number (1-128, default 1): 1
First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: 
Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: +3G
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300): 
Changed type of partition to 'Linux filesystem'

Command (? for help): p
Disk /dev/nvme0n3: 20971520 sectors, 10.0 GiB
Model: VMware Virtual NVMe Disk
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 25FB5AC0-32CF-46C3-B496-292B1FABDFA3
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 20971486
Partitions will be aligned on 2048-sector boundaries
Total free space is 14679997 sectors (7.0 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         6293503   3.0 GiB     8300  Linux filesystem

Command (? for help): n
Partition number (2-128, default 2): 2
First sector (34-20971486, default = 6293504) or {+-}size{KMGTP}: 
Last sector (6293504-20971486, default = 20971486) or {+-}size{KMGTP}: +5G
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300): 
Changed type of partition to 'Linux filesystem'

Command (? for help): p
Disk /dev/nvme0n3: 20971520 sectors, 10.0 GiB
Model: VMware Virtual NVMe Disk
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 25FB5AC0-32CF-46C3-B496-292B1FABDFA3
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 20971486
Partitions will be aligned on 2048-sector boundaries
Total free space is 4194237 sectors (2.0 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         6293503   3.0 GiB     8300  Linux filesystem
   2         6293504        16779263   5.0 GiB     8300  Linux filesystem

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/nvme0n3.
The operation has completed successfully.
[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:4    0    5G  0 part 
├─nvme0n2p2   259:5    0    5G  0 part 
├─nvme0n2p3   259:6    0    5G  0 part 
└─nvme0n2p4   259:7    0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
├─nvme0n3p1   259:12   0    3G  0 part 
└─nvme0n3p2   259:13   0    5G  0 part 
nvme0n4       259:9    0   10G  0 disk 

(3)parted,用于GPT分区

 交互模式下

[root@SLB ~]# parted /dev/nvme0n4
GNU Parted 3.5
Using /dev/nvme0n4
Welcome to GNU Parted! Type 'help' to view a list of commands.

(parted) help                                                             
  align-check TYPE N                       检查分区 N 的类型(最小|选择)对齐方式
  help [COMMAND]                           打印常规帮助,或命令上的帮助
  mklabel,mktable LABEL-TYPE               创建新的磁盘标签(分区表)
  mkpart PART-TYPE [FS-TYPE] START END     添加新分区
  name NUMBER NAME                         将分区编号命名为名称
  print [devices|free|list,all]            显示分区表、可用设备、可用空间或所有找到的分区
  quit                                     退出
  rescue START END                         拯救在开始和结束附近丢失的分区
  resizepart NUMBER END                    调整分区编号的大小
  rm NUMBER                                删除分区号
  select DEVICE                            选择要编辑的设备
  disk_set FLAG STATE                      更改所选设备上的标志
  disk_toggle [FLAG]                       切换所选设备上的标志状态
  set NUMBER FLAG STATE                    更改分区号上的标志
  toggle [NUMBER [FLAG]]                   切换分区号上的标志状态
  type NUMBER TYPE-ID or TYPE-UUID         分区号的类型集 TYPE-ID 或 TYPE-UUID
  unit UNIT                                将默认单位设置为单位
  version                                  显示 GNU Parted 的版本号和版权信息

(parted) mklabel
New disk label type? gpt         #指定分区表类型
Warning: The existing disk label on /dev/nvme0n4 will be destroyed
and all data on this disk will be lost. Do you want to continue?
                                                                                                                                    Yes/No? yes
(parted) mkpart
Partition name?  []? dpart1
File system type?  [ext2]? ext4         #指定分区文件系统
Start? 0%
End? 20%
(parted) p
Model: VMware Virtual NVMe Disk (nvme)
Disk /dev/nvme0n4: 10.7GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name    Flags
 1      1049kB  2147MB  2146MB  ext4         dpart1

(parted) q
Information: You may need to update /etc/fstab.

[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:4    0    5G  0 part 
├─nvme0n2p2   259:5    0    5G  0 part 
├─nvme0n2p3   259:6    0    5G  0 part 
└─nvme0n2p4   259:7    0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
├─nvme0n3p1   259:12   0    3G  0 part 
└─nvme0n3p2   259:13   0    5G  0 part 
nvme0n4       259:9    0   10G  0 disk 
└─nvme0n4p1   259:11   0    2G  0 part 

命令行模式下

这里的分区类型可以写primary、logical、extended

[root@SLB ~]# parted /dev/nvme0n4 mklabel gpt
Warning: The existing disk label on /dev/nvme0n4 will be destroyed
and all data on this disk will be lost. Do you want to continue?
                                                                                                                                    Yes/No? yes
Information: You may need to update /etc/fstab.

[root@SLB ~]# parted /dev/nvme0n4 mkpart primary 0% 5G
Information: You may need to update /etc/fstab.

[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:4    0    5G  0 part 
├─nvme0n2p2   259:5    0    5G  0 part 
├─nvme0n2p3   259:6    0    5G  0 part 
└─nvme0n2p4   259:7    0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
├─nvme0n3p1   259:12   0    3G  0 part 
└─nvme0n3p2   259:13   0    5G  0 part 
nvme0n4       259:9    0   10G  0 disk 
└─nvme0n4p1   259:11   0  4.7G  0 part 

[root@SLB ~]# parted /dev/nvme0n4 rm 1           #命令行通过编号删除分区
Information: You may need to update /etc/fstab.

[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:4    0    5G  0 part 
├─nvme0n2p2   259:5    0    5G  0 part 
├─nvme0n2p3   259:6    0    5G  0 part 
└─nvme0n2p4   259:7    0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
├─nvme0n3p1   259:12   0    3G  0 part 
└─nvme0n3p2   259:13   0    5G  0 part 
nvme0n4       259:9    0   10G  0 disk 

三.逻辑卷管理

主要用到 LVM,将若干个磁盘或者磁盘分区连接为一个整块组,形成一个存储池,管理员可以在卷组上任意创建逻辑卷,并进一步在逻辑卷上创建文件系统。  管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和配。

1.LVM各个概念

(1)物理存储设备

指系统的存储设备文件,如:  /dev/hda1/dev/sda,磁盘

(2)物理卷

PV,物理卷可以是整个硬盘、硬盘分区或从逻辑上与磁盘分区有同样功能的设备,LVM的基本存储逻辑块,但包含有与LVM相关的管理参数。

(3)卷组

VG,可以看成单独的逻辑磁盘,建立在PV之上,一个卷组中至少要包括一个PV在卷组建立之后可以自定义名称,动态地添加PV到卷组中。

(4)PE物理区域

物理区域是物理卷中可用于分配的最小存储单元,物理区域的大小默认为4MB。物理区域大小一旦确定将不能更改,同一卷组中的所有物理卷的物理区域大小需要

(5)逻辑卷

LV,相当于物理分区。逻辑卷建立在卷组之上,卷组中的未分配 间可以用于建立新的逻辑卷,逻辑卷建立后可以动态的扩展或缩小空间。系统中的多个逻辑卷,可以于同一个卷组,也可以属于不同的多个卷组。

(6)LE逻辑区域

逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域大小,LE的大小和PE的大小相同。

(7)VGDA卷组描述符区域

逻辑卷以及卷组相关的元数据也是保存在位于物理卷起始处的卷组描述符区域中, 包括PV描述符、VG描述符、LV描述符和PE描述符等

2.逻辑卷创建部署

(1)pvcreate创建物理卷

[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:4    0    5G  0 part 
├─nvme0n2p2   259:5    0    5G  0 part 
├─nvme0n2p3   259:6    0    5G  0 part 
└─nvme0n2p4   259:7    0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
├─nvme0n3p1   259:12   0    3G  0 part 
└─nvme0n3p2   259:13   0    5G  0 part 
nvme0n4       259:9    0   10G  0 disk 
[root@SLB ~]# pvcreate /dev/nvme0n3p2 
  Physical volume "/dev/nvme0n3p2" successfully created.
[root@SLB ~]# pvs   #查看pv,详细查看使用pcdisplay
  PV             VG   Fmt  Attr PSize   PFree
  /dev/nvme0n1p2 rhel lvm2 a--  <49.00g    0 
  /dev/nvme0n3p2      lvm2 ---    5.00g 5.00g

(2)更改分区类型为逻辑卷

[root@SLB ~]# parted /dev/nvme0n3 set 2 lvm on
Information: You may need to update /etc/fstab.

(3)vgcreate创建卷组

vgcreate -s 卷组大小 卷组名称

[root@SLB ~]# vgcreate -s 4M SLB /dev/nvme0n3p2
  Volume group "SLB" successfully created
[root@SLB ~]# vgs
  VG   #PV #LV #SN Attr   VSize   VFree 
  SLB    1   0   0 wz--n-  <5.00g <5.00g
  rhel   1   2   0 wz--n- <49.00g     0 

(4)lvcreate创建逻辑卷

lvcreate -n 逻辑卷名称 -L 指定逻辑卷大小 位于哪个卷组,-l指的是指定逻辑区域数量,一个区域4M,以此来计算

[root@SLB ~]# lvcreate -n LSLB -L 500M SLB
  Logical volume "LSLB" created.                                  
[root@SLB ~]# lvs
  LV   VG   Attr       LSize   Pool Origin Data%  Meta%  Move Log C
  LSLB SLB  -wi-a----- 500.00m                                     
  root rhel -wi-ao---- <44.00g                                     
  swap rhel -wi-ao----   5.00g                                     
[root@SLB ~]# lvcreate -n LSLB1 -l 20 SLB
  Logical volume "LSLB1" created.
[root@SLB ~]# lvs
  LV    VG   Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  LSLB  SLB  -wi-a----- 500.00m                                                    
  LSLB1 SLB  -wi-a-----  80.00m                                                    
  root  rhel -wi-ao---- <44.00g                                                    
  swap  rhel -wi-ao----   5.00g                                                    
[root@SLB ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:4    0    5G  0 part 
├─nvme0n2p2   259:5    0    5G  0 part 
├─nvme0n2p3   259:6    0    5G  0 part 
└─nvme0n2p4   259:7    0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
├─nvme0n3p1   259:12   0    3G  0 part 
└─nvme0n3p2   259:13   0    5G  0 part 
  ├─SLB-LSLB  253:2    0  500M  0 lvm  
  └─SLB-LSLB1 253:3    0   80M  0 lvm  
nvme0n4       259:9    0   10G  0 disk 

(5)mkfs文件系统格式化,挂载

[root@SLB ~]# mkfs.xfs /dev/SLB/LSLB    #格式化的是你的卷组下的逻辑卷,LSLB格式化后挂载后就能使用了,而LSLB1并没有执行则不能使用
meta-data=/dev/SLB/LSLB          isize=512    agcount=4, agsize=32000 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=1 inobtcount=1
data     =                       bsize=4096   blocks=128000, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=1368, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@SLB ~]# mkfs.        #有以下类型
mkfs.cramfs  mkfs.ext2    mkfs.ext3    mkfs.ext4    mkfs.fat     mkfs.minix   mkfs.msdos   mkfs.vfat    mkfs.xfs     
[root@SLB ~]# mkdir /mnt/SLB
[root@SLB ~]# mount /dev/SLB/LSLB /mnt/SLB/
[root@SLB ~]# df -h
Filesystem             Size  Used Avail Use% Mounted on
devtmpfs               4.0M     0  4.0M   0% /dev
tmpfs                  5.0G     0  5.0G   0% /dev/shm
tmpfs                  2.0G  9.7M  2.0G   1% /run
/dev/mapper/rhel-root   44G  4.6G   40G  11% /
/dev/nvme0n1p1        1014M  286M  729M  29% /boot
/dev/sr0               8.5G  8.5G     0 100% /cdrom
tmpfs                 1022M   56K 1022M   1% /run/user/42
tmpfs                 1022M   40K 1022M   1% /run/user/0
/dev/mapper/SLB-LSLB   495M   29M  466M   6% /mnt/SLB
#验证可以正常使用
[root@SLB SLB]# rz

[root@SLB SLB]# ll
total 15508
-rw-r--r-- 1 root root 15878040 Jul 22 09:36 percona-xtrabackup-80-8.0.27-19.1.el8.x86_64.rpm
[root@SLB SLB]# df -h
Filesystem             Size  Used Avail Use% Mounted on
devtmpfs               4.0M     0  4.0M   0% /dev
tmpfs                  5.0G     0  5.0G   0% /dev/shm
tmpfs                  2.0G  9.7M  2.0G   1% /run
/dev/mapper/rhel-root   44G  4.6G   40G  11% /
/dev/nvme0n1p1        1014M  286M  729M  29% /boot
/dev/sr0               8.5G  8.5G     0 100% /cdrom
tmpfs                 1022M   56K 1022M   1% /run/user/42
tmpfs                 1022M   40K 1022M   1% /run/user/0
/dev/mapper/SLB-LSLB   495M   44M  451M   9% /mnt/SLB

3.逻辑卷大小调整

(1)vgextend卷组扩展

[root@SLB SLB]# pvcreate /dev/nvme0n3p1 
  Physical volume "/dev/nvme0n3p1" successfully created.
[root@SLB SLB]# parted /dev/nvme0n3 set 1 lvm on
Information: You may need to update /etc/fstab.

                                                                  [root@SLB SLB]# vgextend SLB /dev/nvme0n2p1 
  Volume group "SLB" successfully extended
[root@SLB SLB]# vgs SLB
  VG  #PV #LV #SN Attr   VSize VFree 
  SLB   2   2   0 wz--n- 9.99g <9.43g

(2)逻辑卷扩大/缩小

不同文件系统类型的扩/减容方式不同

[root@SLB SLB]# lsblk -f |grep SLB
  ├─SLB-LSLB  xfs                                                   9491d05a-8b9d-4b11-a49a-2c88716c9805    450.8M     9% /mnt/SLB
  └─SLB-LSLB1 ext4        1.0                                       38cef6a3-5bf5-4f1f-8ae4-a5f80e851f2d                  

#查看文件系统类型

对于xfs类型,不支持减容

[root@SLB SLB]# lvs /dev/SLB/LSLB
  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  LSLB SLB -wi-ao---- 500.00m                                                    
[root@SLB SLB]# lvextend -L +100M /dev/SLB/LSLB   #也可以使用lvresize
  Size of logical volume SLB/LSLB changed from 500.00 MiB (125 extents) to 600.00 MiB (150 extents).
  Logical volume SLB/LSLB successfully resized.
[root@SLB SLB]# lvs /dev/SLB/LSLB
  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  LSLB SLB -wi-ao---- 600.00m                                                    
[root@SLB SLB]# lsblk | grep LSLB
  ├─SLB-LSLB  253:2    0  600M  0 lvm  /mnt/SLB
  └─SLB-LSLB1 253:3    0  580M  0 lvm  


#-L +100M表示在原有基础上增加100M,-L 100M表示增加到100M

[root@SLB SLB]# df -h | grep /mnt/SLB      
#挂载的目录显示并没有扩容,使用xfs_growfs命令后再查看已经扩容成功
/dev/mapper/SLB-LSLB   495M   44M  451M   9% /mnt/SLB
[root@SLB SLB]# xfs_growfs /mnt/SLB
meta-data=/dev/mapper/SLB-LSLB   isize=512    agcount=4, agsize=32000 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=1 inobtcount=1
data     =                       bsize=4096   blocks=128000, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=1368, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 128000 to 153600
[root@SLB SLB]# df -h | grep /mnt/SLB
/dev/mapper/SLB-LSLB   595M   45M  551M   8% /mnt/SLB

对于ext类型,支持扩容和减容

Please run 'e2fsck -f /dev/SLB/LSLB1' first.
[root@SLB SLB]# e2fsck -f /dev/SLB/LSLB1  #进行系统检查
e2fsck 1.46.5 (30-Dec-2021)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/SLB/LSLB1: 11/37120 files (0.0% non-contiguous), 6654/148480 b
[root@SLB SLB]# lsblk | grep SLB1
  └─SLB-LSLB1 253:3    0  580M  0 lvm  

[root@SLB SLB]# lvresize -L +200M /dev/SLB/LSLB1      #增加200M
  Size of logical volume SLB/LSLB1 changed from 580.00 MiB (145 extents) to 780.00 MiB (195 extents).
  Logical volume SLB/LSLB1 successfully resized.
[root@SLB SLB]# lsblk | grep SLB1
  └─SLB-LSLB1 253:3    0  780M  0 lvm  

[root@SLB SLB]# lvreduce -L 100M /dev/SLB/LSLB1   #减少到100M
  WARNING: Reducing active logical volume to 100.00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce SLB/LSLB1? [y/n]: y
  Size of logical volume SLB/LSLB1 changed from 780.00 MiB (195 extents) to 100.00 MiB (25 extents).
  Logical volume SLB/LSLB1 successfully resized.
[root@SLB SLB]# lsblk | grep SLB1
  └─SLB-LSLB1 253:3    0  100M  0 lvm  


resize2fs命令可以重置文件系统大小

四.交换分区管理

Linux系统中,  swap交换分区的作用类似Windows系统中虚拟内存。当有程序被调入内存后,但 是该程序不是常被CPU所取用时,那么这些不常被使用的程序将会被放到硬盘的swap交换分区当中, 将速度较快的内存空间释放给真正需要的程序使用,以避免由于物理内存不足而造成的系统效能低的 问题。如果系统没有swap交换分区,或者现有交换分区的容量不够用时,可扩展swap交换分

Linux必须创建/和swap分区,一般需要创建/、/boot、swap分区,又分以磁盘分区的方式扩展swap交换分区和以镜像文件的方式扩展swap交换分区

1.格式化并激活交换空间并查看是否激活

[root@SLB SLB]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  8.4G  0 rom  /cdrom
nvme0n1       259:0    0   50G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   49G  0 part 
  ├─rhel-root 253:0    0   44G  0 lvm  /
  └─rhel-swap 253:1    0    5G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
├─nvme0n2p1   259:10   0    5G  0 part 
├─nvme0n2p2   259:11   0    5G  0 part 
├─nvme0n2p3   259:14   0    5G  0 part 
└─nvme0n2p4   259:15   0    1K  0 part 
nvme0n3       259:8    0   10G  0 disk 
├─nvme0n3p1   259:12   0    3G  0 part 
└─nvme0n3p2   259:13   0    5G  0 part 
  ├─SLB-LSLB  253:2    0  600M  0 lvm  /mnt/SLB
  └─SLB-LSLB1 253:3    0  100M  0 lvm  
nvme0n4       259:9    0   10G  0 disk 
[root@SLB SLB]# mkswap /dev/nvme0n4 
mkswap: /dev/nvme0n4: warning: don't erase bootbits sectors
        (gpt partition table detected). Use -f to force.
Setting up swapspace version 1, size = 10 GiB (10737414144 bytes)
no label, UUID=b95da1f0-eb78-4cce-82ec-eaf12c96d851
[root@SLB SLB]# swapon /dev/nvme0n4     #激活使用swapon,禁用使用swapoff

[root@SLB SLB]# swapon -s        #查看激活,两种方式
Filename				Type		Size	 Used		Priority
/dev/dm-1                               partition	5242876	 -2
/dev/nvme0n4                            partition	10485756 -3
[root@SLB SLB]# cat /proc/swaps 
Filename				Type		Size	 Used		Priority
/dev/dm-1                               partition	5242876	 -2
/dev/nvme0n4                            partition	10485756 -3

2.新建/swap文件扩展交换空间 ,格式化并激活

[root@SLB SLB]# dd if=/dev/zero of=/swap bs=1M count=1024
#从无限零资源去读,每块大小为1M,共1024块 这个文件不建议使用cat去查看
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 4.6908 s, 229 MB/s

[root@SLB SLB]# mkswap /swap 
mkswap: /swap: insecure permissions 0644, fix with: chmod 0600 /swap
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=2627f925-1694-42aa-a7ab-3d23ef569371
[root@SLB SLB]# swapon /swap
swapon: /swap: insecure permissions 0644, 0600 suggested.
[root@SLB SLB]# chmod 0600 /swap
[root@SLB SLB]# swapon -s
Filename				Type		Size	 Used		Priority
/dev/dm-1                               partition	5242876	 -2
/dev/nvme0n4                            partition	10485756 -3
/swap                                   file		1048572	 -4
[root@SLB SLB]# swapon -s
Filename				Type		Size		Used		Priority
/dev/dm-1                               partition	5242876		0		-2
/dev/nvme0n4                            partition	10485756	0		-3
/swap                                   file		1048572		0		-4
[root@SLB SLB]# 

3.实现开机自动挂载 

你可能感兴趣的:(Linux,#,网卡,yum配置,磁盘,linux,运维,逻辑卷,磁盘分区,交换分区)