1. 基本概念
1.1. 引导分区
系统的引导分为两种模式:MBR(主引导记录)和GPT(GUID Partition Table)。
MBR分区表存储在硬盘的第一个扇区上,兼容性较好,但不支持管理大容量硬盘结构。
GUID(全局唯一标识符)分区表,硬盘没有分区数量和分区大小的限制。
MBR和GPT两者的区别:
MBR分区表最多只能识别2TB左右的空间,大于限制的容量无法识别。
MBR分区表最多只能支持4个主分区,或3个主分区+1个扩展分区(逻辑分区不限制)。
在MBR中,分区表的大小是固定的,在GPT分区表头中可自定义分区数量的最大值。
1.2. 文件系统
在安装 Linux 的过程中,通常倾向于使用列出的默认文件系统而不探索其他可用选项。对于 Windows主要的文件系统是 NTFS。
最广泛使用的文件系统是 Ext4 和 XFS,后者是基于 RHEL 的发行版中的默认文件系统,而 Ext4 是 Debian 和 Ubuntu 发行版中的标准文件系统。在选择文件系统时,需要考虑的一些因素包括可扩展性、稳定性和数据完整性。
Ext4 完美地管理了许多小文件并确保元数据被正确写入,即使写入缓存断电。
XFS 以提供高 I/O 线程的可扩展性以及在处理大文件方面的出色性能而广为人知。
1.3. 卷管理
逻辑卷管理(LVM),是 Logical Volume Manager(逻辑卷管理)的简写,lvm是卷的一种管理方式,并不是分区工具,之前我们在 Centos8-Boot镜像安装 提到系统磁盘分区的模式,分别为标准分区和LVM分区。
LVM管理卷的思路是:将多个物理卷重新组合成逻辑卷组,通过逻辑卷组管理硬盘空间。
LVM扩容的思路是:新增加一个物理分区并创建物理卷,将物理卷添加到扩展的卷组中,逻辑卷组扩展的空间再次分配给逻辑卷(挂载目录的卷)。
以下查询的命令只能在LVM管理的硬盘才能使用,查看硬盘的物理分区可以使用 fdisk -l 命令查看。
#1、查看物理卷 [root@localhost ~]# pvdisplay #2、查看逻辑卷组 [root@localhost ~]# vgdisplay #3、查看逻辑卷 [root@localhost ~]# lvdisplay
2. 扩容分区
测试环境:虚拟机的硬盘动态拓展存储空间
虚拟机环境:Vmware Workstation
将Centos 8操作系统关闭后,在虚拟机设置中拓展硬盘容量至50G(+10G存储容量)。
首先我们先来看两种模式的分区有那些区别,命令df-Th查看文件系统磁盘使用情况统计。
# 1.在标准分区下,查看文件系统的情况,不会显示swap分区。 [root@localhost ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/sda4 xfs 32G 3.3G 29G 11% / /dev/sda2 xfs 507M 211M 296M 42% /boot /dev/sda1 vfat 256M 7.3M 249M 3% /boot/efi # 2.在LVM分区下,查看文件系统的情况,不会显示swap分区。 [root@localhost ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs #32G 3.1G 29G 8% / /dev/sda1 xfs 507M 220M 287M 44% /boot
命令lsblk查看列出所有可用块设备的信息以及它们的依赖关系,可以更加直观的发现两种分区模式的区别,LVM分区将块设备组成一个逻辑卷组,在逻辑卷组中划分 root 和 swap 分区。
# 1.在标准分区下,查看列出所有可用块设备的信息。 [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 259:0 0 50G 0 disk # 块设备sda已经扩容至50G ├─sda1 259:1 0 256M 0 part /boot/efi ├─sda2 259:2 0 512M 0 part /boot ├─sda3 259:3 0 8G 0 part [SWAP] └─sda4 259:4 0 31.3G 0 part # 2.在LVM分区下,查看列出所有可用块设备的信息。 [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 259:0 0 50G 0 disk # 块设备sda已经扩容至50G ├─sda1 259:1 0 512M 0 part /boot └─sda2 259:2 0 39.5G 0 part ├─centos-root 253:0 0 31.5G 0 lvm / └─centos-swap 253:1 0 8G 0 lvm [SWAP]
2.1. 扩容标准分区
需求:扩容 root 根分区的存储容量(+10G)。
思路:删除 root 根分区的扇区,创建相同节点的一个分区,设置扇区时将之前的扇区位置往后拓展到最大的位置,保存分区信息后相当于只是拓展了分区的扇区信息。
#1.命令fdisk进入硬盘分区操作 [root@localhost ~]# fdisk /dev/sda Welcome to fdisk (util-linux 2.32.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. GPT PMBR size mismatch (83886079 != 104857599) will be corrected by write. #2.查看分区表的信息,p命令查看 Command (m for help)#: p Device Start End Sectors Size Type /dev/sda1 2048 526335 524288 256M EFI System /dev/sda2 526336 1574911 1048576 512M Linux filesystem /dev/sda3 1574912 18352127 16777216 8G Linux swap /dev/sda4 18352128 83884031 65531904 31.3G Linux filesystem #3.删除分区4(根目录挂载的分区),d命令删除,切记不能保存!!! Command (m for help)#: d Partition number (1-4, default 4): 4 Partition 4 has been deleted. #4.再次查看分区信息,已删除(未保存) Command (m for help)#: p Device Start End Sectors Size Type /dev/sda1 2048 526335 524288 256M EFI System /dev/sda2 526336 1574911 1048576 512M Linux filesystem /dev/sda3 1574912 18352127 16777216 8G Linux swap #5.重新创建分区4(根目录挂载的分区),n命令新建 Command (m for help)#: n Partition number (4-128, default 4)#: 4 First sector (18352128-104857566, default 18352128): #设置扇区的起始位置,默认回车 Last sector, +sectors or +size{K,M,G,T,P} (18352128-104857566, default 104857566)#: 设置扇区的末尾位置,默认回车 Created a new partition 4 of type 'Linux filesystem' and of size 41.3 GiB. Partition #4 contains a xfs signature. Do you want to remove the signature? [Y]es/[N]o#: no # 是否移除签名 #6.保存所有的修改,W命令保存(此时分区的扇区范围往后拓展,此前数据不受影响) Command (m for help): # w The partition table has been altered. Syncing disks. #7.刷新硬盘分区信息 [root@localhost ~]# partprobe /dev/sda [root@localhost ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/sda4 xfs #32G 3.2G 29G 11% / #8.挂载目录在线扩容,命令resize2fs 或 xfs_growfs #resize2fs 针对文件系统ext2、3、4 #xfs_growfs 针对文件系统xfs [root@localhost ~]# xfs_growfs /dev/sda4 [root@localhost ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/sda4 xfs #42G 3.3G 38G 8% /
2.2. 扩容LVM分区
需求:扩容 root 根分区的存储容量(+10G)。
思路:创建一个新的物理分区并创建物理卷,再将物理卷添加到LVM逻辑卷组中;从LVM逻辑卷划分空闲的空间到 root 根分区。
#1.命令fdisk进入硬盘分区操作 [root@localhost ~]# fdisk /dev/sda Welcome to fdisk (util-linux 2.32.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. #2.查看分区表的信息,p命令查看 Command (m for help)#: p Device Boot Start End Sectors Size Id Type /dev/sda1* 2048 1050623 1048576 512M 83 Linux /dev/sda2 1050624 83886079 82835456 39.5G 8e Linux LVM #3.创建一个分区,n命令新建 Command (m for help)#: n Partition type p primary (2 primary, 0 extended, 2 free) e extended (container for logical partitions) #4.设置为主分区,P命令选择节点位置 Select (default p)#: p Partition number (3,4, default 3)#: 3 First sector (83886080-104857599, default 83886080): Last sector, +sectors or +size{K,M,G,T,P} (83886080-104857599, default 104857599): Created a new partition 3 of type 'Linux' and of size 10 GiB. #5.再次查看分区信息(未保存) Command (m for help)#: p Device Boot Start End Sectors Size Id Type /dev/sda1* 2048 1050623 1048576 512M 83 Linux /dev/sda2 1050624 83886079 82835456 39.5G 8e Linux LVM /dev/sda3 83886080 104857599 20971520 10G 83 Linux #6.保存所有的修改,W命令保存(新增加一个物理分区) Command (m for help): w The partition table has been altered. Syncing disks. #7.刷新硬盘的分区信息(扩容的这块硬盘) [root@localhost ~]# partprobe /dev/sda #8.为新分区创建物理卷 [root@localhost ~]# pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created. #9.查看现有的lvm卷组名称,以及卷组使用情况 [root@localhost ~]# vgdisplay --- Volume group --- VG Name centos VG Size <39.50 GiB #10.将/dev/sda3物理卷添加到逻辑卷组中 [root@localhost ~]# vgextend centos /dev/sda3 Physical volume "/dev/sda3" successfully created. Volume group "centos" successfully extended #11.查看当前逻辑卷的空间状态(这里为了方便理解,省略其他信息的输出) [root@localhost ~]# lvdisplay --- Logical volume --- LV Path /dev/centos/swap LV Name swap VG Name centos LV Size 8.00 GiB --- Logical volume --- LV Path /dev/centos/root LV Name root VG Name centos LV Size <31.50 GiB #12.将逻辑卷组中的空闲空间扩展到根分区逻辑卷 [root@localhost ~]# lvextend -l +100%FREE /dev/centos/root Size of logical volume centos/root changed from <31.50 GiB (8063 extents) to 41.49 GiB (10622 extents). Logical volume centos/root successfully resized. #13.刷新根分区 #resize2fs 针对文件系统ext2、3、4 #xfs_growfs 针对文件系统xfs [root@localhost ~]# xfs_growfs /dev/centos/root meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=2064128 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 bigtime=0 inobtcount=0 data = bsize=4096 blocks=8256512, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=4031, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 8256512 to 10876928 #14.查看系统各分区的大小 [root@localhost ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/centos-root xfs 42G 3.2G 39G 8% / /dev/sda1 xfs 507M 220M 287M 44% /boot
3. 挂载新磁盘
2.1. 创建分区
#1.命令fdisk进入硬盘分区操作(新添加的硬盘/dev/sdb) [root@localhost ~]# fdisk /dev/sdb #2.新建分区 Command (m for help):# n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) #3.选择节点并配置扇区位置信息 Select (default p):# p Partition number (1-4, default 1): First sector (2048-209715199, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-209715199, default 209715199): Created a new partition 1 of type 'Linux' and of size 100 GiB. #4.保存变更的设置(此时分区名应该为:/dev/sdb1) Command (m for help):# w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
2.2. 格式化分区
#1.将分区格式化为xfs文件系统 [root@localhost ~]# mkfs -t xfs /dev/sdb1 meta-data=/dev/sdb1 isize=512 agcount=4, agsize=6553536 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 bigtime=0 inobtcount=0 data = bsize=4096 blocks=26214144, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=12799, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0
2.3. 挂载目录
#1.创建data目录 [root@localhost ~]# mkdir /data #2.将分区挂载至data目录 [root@localhost ~]# mount /dev/sdb1 /data #3.查询新分区的uuid [root@localhost centos]# lsblk -f NAME FSTYPE LABEL UUID MOUNTPOINT sdb └─sdb1 xfs 516d20fa-0551-4348-a348-c81f4879b00e /data #4.配置centos自动挂载目录,添加一条挂载配置(否则重启会发现分区未挂载至目录) [root@localhost ~]# vim /etc/fstab UUID=516d20fa-0551-4348-a348-c81f4879b00e /data xfs defaults 0 0
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/8313.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~