Liunx磁盘管理(下)

中篇:https://blog.csdn.net/Lzcsfg/article/details/138355036

一.逻辑卷

逻辑卷(Logical Volume)是逻辑卷管理 (LVM) 中的一个概念,它为 Linux 系统中的存储管理提供了更大的灵活性和可扩展性。LVM 允许你将物理存储设备(如硬盘、分区)组合成一个或多个卷组,然后在这些卷组上创建逻辑卷。逻辑卷的好处是,你可以灵活地调整其大小、进行快照、添加或删除存储设备,而无需重建文件系统或损坏数据。

以下是关于逻辑卷的一些关键概念和操作:

  • 物理卷 (PV, Physical Volume):

    这是 LVM 中的最小存储单位。物理卷可以是整个硬盘、硬盘分区、RAID 设备等。

  • 卷组 (VG, Volume Group):

    这是由一个或多个物理卷组成的集合。一个卷组可以包含多个逻辑卷。

  • 逻辑卷 (LV, Logical Volume):
    这是在卷组上创建的抽象存储单元,可以看作是一个虚拟分区。逻辑卷可以用于创建文件系统,格式化为 ext4、XFS 等,甚至可以用于交换空间。

二.使用LVM 管理存储

#使用LVM相关命令前需下载对应的包管理工具(centos7)
yum install lvm2 -y

1.制作与查看物理卷

创建物理卷

#将物理设备 /dev/sdb 创建为一个物理卷(PV)
pvcreate /dev/sdb

查看物理卷命令pvs

#pvs 命令用于显示系统中物理卷的相关信息。
[root@localhost ~]# pvsPV         VG     Fmt  Attr PSize   PFree /dev/sda2  centos lvm2 a--  <19.00g     0 /dev/sdb          lvm2 ---   20.00g 20.00g输出解释:
PV (Physical Volume):
列出了物理卷的名称或路径。
VG (Volume Group):
显示物理卷所属的卷组。这里,/dev/sda2 属于卷组 centos,而 /dev/sdb 没有分配给任何卷组。
Fmt (Format):
指示物理卷的格式。在这里,都是 lvm2,表示使用了 LVM2 格式。
Attr (Attributes):
显示物理卷的属性。a-- 表示物理卷是活动状态,--- 表示该物理卷未被激活或未被分配给任何卷组。
PSize (Physical Size):
指示物理卷的总大小。<19.00g 意味着约 19 GB,20.00g 意味着整整 20 GB。
PFree (Physical Free):
指示物理卷中未分配的空间。在这个例子中,/dev/sda2 已全部分配,没有剩余空间,而 /dev/sdb 上还有 20 GB 的未分配空间。*如果 PFree 不为 0,表示卷组中还有未分配的空间,可以用来创建新的逻辑卷或扩展现有逻辑卷。

查看物理卷命令pvscan

#pvscan 是一个 LVM 命令,用于扫描系统中的物理卷,列出所有已识别的物理卷及其相关信息。
[root@localhost ~]# pvscanPV /dev/sda2   VG centos          lvm2 [<19.00 GiB / 0    free]PV /dev/sdb                       lvm2 [20.00 GiB]Total: 2 [<39.00 GiB] / in use: 1 [<19.00 GiB] / in no VG: 1 [20.00 GiB]输出解释:
Total:
表示物理卷的总数和总容量。这里是两个物理卷,合计约 39 GB。
in use:
显示已分配给卷组的物理卷数量和容量。这里显示一个物理卷 (19 GB)。
in no VG:
显示没有分配给任何卷组的物理卷及其容量。这里是 1 个物理卷 (20 GB)。

查看物理卷命令pvdisplay

#pvdisplay 命令显示了物理卷的详细信息,包括它们的卷组、大小、可分配状态和其他属性。
[root@localhost ~]# pvdisplay--- Physical volume ---PV Name               /dev/sda2VG Name               centosPV Size               <19.00 GiB / not usable 3.00 MiBAllocatable           yes (but full)PE Size               4.00 MiBTotal PE              4863Free PE               0Allocated PE          4863PV UUID               4wm0hN-R1oK-oZMf-yqui-clNU-9CFn-2bRWFs"/dev/sdb" is a new physical volume of "20.00 GiB"--- NEW Physical volume ---PV Name               /dev/sdbVG Name               PV Size               20.00 GiBAllocatable           NOPE Size               0   Total PE              0Free PE               0Allocated PE          0PV UUID               lKsemI-Q8mV-lgQb-1eqI-45D0-tqAF-g9Ds7z输出解释:
第一部分(/dev/sda2)
PV Name:物理卷的名称,显示为 /dev/sda2。
VG Name:卷组的名称,显示为 centos。
PV Size:物理卷的总大小,约 19 GB。
Not usable:不可用空间,约 3.00 MiB。这可能是由于系统中的元数据等原因。
Allocatable:显示该物理卷是否可以分配,这里是 yes,但已全部分配完毕。
PE Size:物理扩展(Physical Extent)的大小,4.00 MiB。
Total PE:总的物理扩展数量,4863。
Free PE:可用的物理扩展,0。
Allocated PE:已分配的物理扩展,4863。
PV UUID:物理卷的唯一标识符。
第二部分(/dev/sdb)
PV Name:物理卷的名称,显示为 /dev/sdb。
VG Name:卷组的名称,这里为空,表明该物理卷没有分配给任何卷组。
PV Size:物理卷的总大小,20.00 GiB。
Allocatable:显示该物理卷是否可分配,这里是 NO。可能是因为它还没有加入任何卷组。
PE Size:这里是 0,说明没有被配置。
Total PE、Free PE、Allocated PE:都为 0,表明物理卷没有加入卷组。
PV UUID:物理卷的唯一标识符。

2.制作与查看卷组

创建卷组

#创建了一个名为 xiyangyang 的卷组,并且物理卷 /dev/sdb 是这个卷组的成员。
vgcreate xiyangyang /dev/sdb

查看卷组命令vgs

#vgs 命令显示系统中的卷组信息,包括卷组中物理卷、逻辑卷、快照的数量,卷组的大小、可用空间等。
[root@localhost ~]# vgsVG         #PV #LV #SN Attr   VSize   VFree  centos       1   2   0 wz--n- <19.00g      0 xiyangyang   1   0   0 wz--n- <20.00g <20.00g输出解释
VG (Volume Group):
显示卷组的名称,输出中有 centos 和 xiyangyang 两个卷组。
#PV (Number of Physical Volumes):
这是卷组中物理卷的数量。centos 有 1 个物理卷,xiyangyang 也有 1 个。
#LV (Number of Logical Volumes):
表示卷组中逻辑卷的数量。centos 有 2 个逻辑卷,而 xiyangyang 还没有创建任何逻辑卷。
#SN (Number of Snapshots):
这是卷组中的快照数量。在这个输出中,两个卷组都没有快照。
Attr (Attributes):
这是卷组的属性。wz--n- 表示卷组是写入启用 (w)、已激活 (z)、没有快照 (-n-)。
VSize (Volume Size):
显示卷组的总大小。<19.00g 表示 centos 的大小约为 19 GB,而 xiyangyang 的大小是 20 GB。
VFree (Volume Free Space):
指示卷组中未分配的空间。centos 没有剩余空间,而 xiyangyang 有 20 GB 的可用空间。

查看卷组命令vgscan

#vgscan 命令用于扫描系统中的卷组,并找到所有可用的卷组。它通常用于初始化 LVM 配置或确保卷组已正确识别。
[root@localhost ~]# vgscanReading volume groups from cache.Found volume group "centos" using metadata type lvm2Found volume group "xiyangyang" using metadata type lvm2输出解释
Reading volume groups from cache:
这是指 LVM 正在从缓存中读取卷组信息,这有助于加快扫描速度。
Found volume group "centos" using metadata type lvm2:
表示找到了卷组 "centos",且它使用的是 LVM2 的元数据类型。
Found volume group "xiyangyang" using metadata type lvm2:
表示找到了卷组 "xiyangyang",它也使用了 LVM2 的元数据。

查看卷组命令vgdisplay

#vgdisplay 命令用于显示卷组的详细信息,包括卷组的大小、属性、物理卷、逻辑卷等。
[root@localhost ~]# vgdisplay--- Volume group ---VG Name               centosSystem ID             Format                lvm2Metadata Areas        1Metadata Sequence No  3VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                2Open LV               2Max PV                0Cur PV                1Act PV                1VG Size               <19.00 GiBPE Size               4.00 MiBTotal PE              4863Alloc PE / Size       4863 / <19.00 GiBFree  PE / Size       0 / 0   VG UUID               b9ctMD-kI3l-Azac-ofR2-ZNvO-Xu50-uct77x--- Volume group ---VG Name               xiyangyangSystem ID             Format                lvm2Metadata Areas        1Metadata Sequence No  1VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                0Open LV               0Max PV                0Cur PV                1Act PV                1VG Size               <20.00 GiBPE Size               4.00 MiBTotal PE              5119Alloc PE / Size       0 / 0   Free  PE / Size       5119 / <20.00 GiBVG UUID               nENBur-4t0X-OMp1-SAac-wxer-Qvdm-Ehn9Dw输出解释:
centos 卷组
VG Name:这是卷组的名称,显示为 centos。
VG Access:显示卷组的访问权限,这里是 read/write,表示卷组可以读写。
VG Status:显示卷组的状态,resizable 表示卷组可以调整大小。
Cur LV / Open LV:表示当前逻辑卷的数量和正在使用的逻辑卷数量。centos 有 2 个逻辑卷,并且都处于打开状态。
Cur PV / Act PV:显示当前物理卷的数量和活动的物理卷数量。centos 有 1 个物理卷。
VG Size:显示卷组的总大小,约 19 GB。
PE Size:物理扩展(Physical Extent)的大小,这里是 4.00 MiB。
Total PE:总的物理扩展数量,4863。
Alloc PE / Size:已分配的物理扩展数量和对应的大小。centos 的所有物理扩展都已分配。
Free PE / Size:未分配的物理扩展数量和对应的大小,centos 没有未分配的空间。
xiyangyang 卷组
VG Name:这是卷组的名称,显示为 xiyangyang。
VG Access:显示卷组的访问权限,也是 read/write。
VG Status:显示卷组的状态,resizable。
Cur LV / Open LV:xiyangyang 尚未创建逻辑卷。
Cur PV / Act PV:xiyangyang 只有 1 个物理卷。
VG Size:显示卷组的总大小,约 20 GB。
PE Size:物理扩展的大小,4.00 MiB。
Total PE:总的物理扩展数量,5119。
Alloc PE / Size:xiyangyang 尚未分配任何物理扩展。
Free PE / Size:显示未分配的物理扩展和对应的大小,整个卷组的 20 GB 都未分配。

3.制作与查看逻辑卷

创建逻辑卷

#创建逻辑卷lvcreate -L  <大小> -n <逻辑卷名称> <卷组>#在卷组 xiyangyang 中创建一个名为 xian 的逻辑卷,并指定该逻辑卷的大小为 10 GB。
lvcreate -L 10G -n xian  xiyangyang
#这个创建语法表示分配卷组中所有剩余的可用空间给新建的逻辑卷
lvcreate -l +100%FREE -n xian1 xiyangyang#这个表示命令用于在指定的卷组 xiyangyang 中创建一个名为 xian2 的逻辑卷,并且指定其大小为 2256 个物理扩展 (PE)。
#物理扩展(PE)✖ 4 就等于实际大小,这里默认1PE等于4,是个单位
lvcreate -l +2256 -n xian2 xiyangyang

查看逻辑卷命令lvs

#lvs 命令用于显示系统中的逻辑卷信息,包括逻辑卷的名称、所属卷组、属性、大小等。
[root@localhost ~]# lvsLV    VG         Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertroot  centos     -wi-ao---- <17.00g                                                    swap  centos     -wi-ao----   2.00g                                                    xian  xiyangyang -wi-a-----  10.00g                                                    xian1 xiyangyang -wi-a----- <10.00g    输出解释
LV (Logical Volume):
这是逻辑卷的名称。这里列出了四个逻辑卷:root、swap、xian 和 xian1。
VG (Volume Group):
显示逻辑卷所属的卷组。root 和 swap 属于 centos 卷组,而 xian 和 xian1 属于 xiyangyang 卷组。
Attr (Attributes):
这是逻辑卷的属性,解释如下:
-wi-a----- 表示逻辑卷处于写入/读取状态(w),独立的(-),没有镜像(-),被激活(a)。
其他属性位未使用(-----)。
LSize (Logical Size):
显示逻辑卷的大小。<17.00g 表示大小约为 17 GB,10.00g 表示 10 GB,<10.00g 表示接近 10 GB。
其他字段:
Pool、Origin、Data%、Meta%、Move、Log、Cpy%Sync、Convert 在这个输出中没有显式使用。这些字段用于高级 LVM 功能,如精简池、快照、数据同步等。

查看逻辑卷命令lvscan

#lvscan 命令用于扫描系统中的逻辑卷,显示所有逻辑卷的状态、大小、名称和其他信息。
[root@localhost ~]# lvscanACTIVE            '/dev/centos/swap' [2.00 GiB] inheritACTIVE            '/dev/centos/root' [<17.00 GiB] inheritACTIVE            '/dev/xiyangyang/xian' [10.00 GiB] inheritACTIVE            '/dev/xiyangyang/xian1' [<10.00 GiB] inherit输出解释
ACTIVE:
表示逻辑卷处于活动状态,已被激活。逻辑卷必须激活后才能使用。
逻辑卷路径:
显示逻辑卷的完整路径,包含卷组名称和逻辑卷名称。这里列出了四个逻辑卷:
/dev/centos/swap:这是 centos 卷组中的交换空间逻辑卷,大小为 2.00 GiB。
/dev/centos/root:这是 centos 卷组中的根文件系统逻辑卷,大小接近 17.00 GiB。
/dev/xiyangyang/xian:这是 xiyangyang 卷组中的逻辑卷,大小为 10.00 GiB。
/dev/xiyangyang/xian1:同样属于 xiyangyang 卷组,大小接近 10.00 GiB。
大小:
显示逻辑卷的大小。这里显示了每个逻辑卷的大小,如 2.00 GiB、10.00 GiB 等。
属性:
inherit 表示逻辑卷继承卷组的属性。

查看逻辑卷命令lvdisplay

#lvdisplay 命令用于显示逻辑卷的详细信息,包括逻辑卷的路径、卷组、UUID、大小、状态等。
[root@localhost ~]# lvdisplay--- Logical volume ---LV Path                /dev/centos/swapLV Name                swapVG Name                centosLV UUID                wZicUM-z8A4-INWI-OrW4-AzVT-HWgL-umIEhdLV Write Access        read/writeLV Creation host, time localhost, 2024-04-30 23:31:50 +0800LV Status              available# open                 2LV Size                2.00 GiBCurrent LE             512Segments               1Allocation             inheritRead ahead sectors     auto- currently set to     8192Block device           253:1--- Logical volume ---LV Path                /dev/centos/rootLV Name                rootVG Name                centosLV UUID                Z4fNXw-8BCq-GQ1q-HbcF-d7dQ-lSUZ-4TcBcKLV Write Access        read/writeLV Creation host, time localhost, 2024-04-30 23:31:50 +0800LV Status              available# open                 1LV Size                <17.00 GiBCurrent LE             4351Segments               1Allocation             inheritRead ahead sectors     auto- currently set to     8192Block device           253:0--- Logical volume ---LV Path                /dev/xiyangyang/xianLV Name                xianVG Name                xiyangyangLV UUID                oir4Ry-ktK1-Mrg1-6csm-dTwx-eWEI-AbLsKtLV Write Access        read/writeLV Creation host, time localhost.localdomain, 2024-05-06 11:44:19 +0800LV Status              available# open                 0LV Size                10.00 GiBCurrent LE             2560Segments               1Allocation             inheritRead ahead sectors     auto- currently set to     8192Block device           253:2--- Logical volume ---LV Path                /dev/xiyangyang/xian1LV Name                xian1VG Name                xiyangyangLV UUID                lYoR2I-RdI3-cBZ1-X4G1-mKh3-0UtA-icr0foLV Write Access        read/writeLV Creation host, time localhost.localdomain, 2024-05-06 11:46:39 +0800LV Status              available# open                 0LV Size                <10.00 GiBCurrent LE             2559Segments               1Allocation             inheritRead ahead sectors     auto- currently set to     8192Block device           253:3输出解释
LV Path:
这是逻辑卷的路径。这里显示了四个逻辑卷的路径,分别为 /dev/centos/swap、/dev/centos/root、/dev/xiyangyang/xian、/dev/xiyangyang/xian1。
LV Name:
显示逻辑卷的名称。这里对应的逻辑卷名称分别是 swap、root、xian 和 xian1。
VG Name:
显示逻辑卷所属的卷组。centos 是前两个逻辑卷的卷组,xiyangyang 是后两个逻辑卷的卷组。
LV UUID:
每个逻辑卷都有唯一的 UUID,用于在系统中唯一标识它。
LV Write Access:
显示逻辑卷的访问权限,read/write 表示可以读写。
LV Status:
表示逻辑卷的状态。available 表示逻辑卷可用。
LV Size:
显示逻辑卷的大小。例如,2.00 GiB 表示 2 GB,<17.00 GiB 表示接近 17 GB。
Current LE:
这是逻辑卷的物理扩展 (PE) 数量。
Segments:
显示逻辑卷的段数。这里所有逻辑卷都有一个段。
Read ahead sectors:
这是逻辑卷的读取提前量,在这个例子中是自动设置的 8192。
Block device:
这是逻辑卷的块设备号,253:3。

4.制作文件系统

在 Linux 系统中,当使用 LVM 时,逻辑卷相当于虚拟分区,因此无需进一步的分区步骤。逻辑卷创建后,可以立即在其上创建文件系统。这意味着不需要像传统硬盘分区那样使用 fdisk 或 parted 创建分区。

在创建逻辑卷那一步时,我实际创建拉两个逻辑卷xian 和xian1进行演示。

格式化逻辑卷

#xian逻辑卷创建文件系统为xfs
mkfs.xfs /dev/xiyangyang/xian
#xian1逻辑卷创建文件系统为ext4
mkfs.ext4 /dev/xiyangyang/xian1

5.挂载逻辑卷

挂载的方法有三种,具体可以看磁盘管理(中) ,这里我采用配置到/etc/fstab文件中。

创建挂载点的文件夹

#创建挂载点的文件夹,一个叫lv1  另一个叫lv2
mkdir /mnt/lv{1..2}

查看块设备信息

[root@localhost ~]# lsblk
NAME               MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                  8:0    0   20G  0 disk 
├─sda1               8:1    0    1G  0 part /boot
└─sda2               8:2    0   19G  0 part ├─centos-root    253:0    0   17G  0 lvm  /└─centos-swap    253:1    0    2G  0 lvm  [SWAP]
sdb                  8:16   0   20G  0 disk 
├─xiyangyang-xian  253:2    0   10G  0 lvm  
└─xiyangyang-xian1 253:3    0   10G  0 lvm  
sdc                  8:32   0   20G  0 disk 
├─sdc1               8:33   0    5G  0 part /mnt/dire1
└─sdc2               8:34   0   15G  0 part /mnt/dire2
sdd                  8:48   0   20G  0 disk 
sde                  8:64   0   20G  0 disk 
sr0                 11:0    1  973M  0 rom  #这里可以看到sdb硬盘的两个逻辑卷xian和xian1

挂载

#给/etc/fstab文件添加命令信息
echo "/dev/xiyangyang/xian /mnt/lv1 xfs defaults 0 0" >> /etc/fstab
echo "/dev/xiyangyang/xian1 /mnt/lv2 ext4 defaults 0 0" >> /etc/fstab#检查是否出错并使其生效,没有任何提示代表正确
mount -a

再次使用lsblk命令就可以看到挂载成功拉。
在这里插入图片描述

三.LVM逻辑卷扩容

LVM (逻辑卷管理) 提供了灵活的存储管理方式,允许动态扩展逻辑卷的大小,而无需重新分区或重建文件系统。要扩展 LVM 逻辑卷,通常需要几个步骤,包括扩展逻辑卷和调整文件系统大小。

扩展 LVM 逻辑卷

要扩展逻辑卷,需要确保卷组中有足够的可用空间。如果没有足够的空间,可以先将新的物理卷添加到卷组。

查看卷组的可用空间

在扩展逻辑卷之前,查看卷组中是否有可用空间。

vgdisplay <卷组名>#查看xiyangyang卷组是否有可用空间
[root@localhost ~]# vgdisplay xiyangyang--- Volume group ---VG Name               xiyangyangSystem ID             Format                lvm2Metadata Areas        1Metadata Sequence No  3VG Access             read/writeVG Status             resizableMAX LV                0Cur LV                2Open LV               2Max PV                0Cur PV                1Act PV                1VG Size               <20.00 GiBPE Size               4.00 MiBTotal PE              5119Alloc PE / Size       5119 / <20.00 GiBFree  PE / Size       0 / 0   VG UUID               nENBur-4t0X-OMp1-SAac-wxer-Qvdm-Ehn9Dw#在其中的信息可以看出剩余空间为0
#*注意:如果逻辑卷所在的卷组有空间直接扩容就ok了!*

新增硬盘创建成物理卷

#新加拉一块硬盘,将这块盘制作成物理卷,我新加的这块叫sdd,使用lsblk查看
pvcreate /dev/sdd

给卷组添加物理卷

在添加物理卷时使用 lvdisplay 查看逻辑卷的详细信息,确保逻辑卷的状态是 available。

#给xiyangyang卷组添加物理卷
vgextend xiyangyang /dev/sdd#使用vgs可以看到,vgextend 命令表明已将新的物理卷 /dev/sdd 添加
#到卷组 xiyangyang,这使得卷组的总大小变成了近 40 GB,并且
#有约 20 GB 的可用空间。
[root@localhost ~]# vgsVG         #PV #LV #SN Attr   VSize   VFree  centos       1   2   0 wz--n- <19.00g      0 xiyangyang   2   2   0 wz--n-  39.99g <20.00g

在成功扩展卷组后,下一步是扩展逻辑卷。

扩展逻辑卷

要扩展逻辑卷,使用 lvextend 命令。在扩展逻辑卷之前,请确保逻辑卷没有被挂载,或者如果挂载了,要注意在扩展后调整文件系统大小。这里上面的演示步骤已经挂载拉,接下来扩容要注意是调整文件系统的大小。

#如下是两个扩容方式的命令,上面的学习中我在xiyangyang卷组中有xian和xian1两个逻辑卷
#现在我要将xian逻辑卷扩容,我使用下述第一个命令来扩容10G大小。#扩展特定大小:如果要将逻辑卷扩展一定大小,例如增加 10 GB,您可以使用以下命令:
lvextend -L +10G /dev/xiyangyang/xian#扩展到所有可用空间:如果要将逻辑卷扩展到卷组中所有可用空间,可以使用以下命令:
lvextend -l +100%FREE /dev/xiyangyang/xian

调整文件系统

  • XFS 文件系统必须在挂载状态下扩展。因为 XFS
    依赖其内置机制来处理扩展操作,扩展时,系统会调整相关的元数据和内部结构请确保逻辑卷已经挂载,使用 xfs_growfs 命令调整文件系统。
  • ext4文件系统可以在挂载状态和卸载状态下扩展,但通常在未挂载状态下进行更安全。如果文件系统在挂载状态下扩展,可能需要重启相关服务以确保文件系统正常工作。ext4使用resize2fs命令。

xian逻辑卷我在上方步骤使用的是xfs文件系统,因此下方我使用xfs_growfs命令。

xfs_growfs /dev/xiyangyang/xian

这里使用lsblk和df -Th就可以查看其容量就已经扩容好拉。

四.LVM逻辑卷缩容

文件系统是否支持缩容(即缩小文件系统的大小)取决于文件系统的设计和内部结构。以下是一些常见文件系统及其是否支持缩容的说明:

  • 支持缩容的文件系统:

ext4:支持缩容。使用 resize2fs 可以缩小 ext4 文件系统。
ext3/ext2:与 ext4 类似,支持缩容。

  • 不支持缩容的文件系统:

XFS:不支持缩容。一旦创建了 XFS 文件系统,其大小无法缩小。
ZFS:ZFS 也不支持缩容。其设计是自适应扩展的。
btrfs:虽然 btrfs 在某些特定条件下可以缩容,但在生产环境中不建议尝试,因为这可能导致数据损坏。

重要提示:在进行任何磁盘操作前,请务必备份重要数据。操作错误可能导致数据丢失。

缩容步骤

因此下述演示学习我依照上方的步骤去创建拉一个ext4文件系统的逻辑卷,该卷有20G容量,现将其缩小至10G。

1.备份数据:这是最重要的一步。请确保您已经备份了逻辑卷中的所有重要数据。

2.卸载逻辑卷:为了确保操作的安全性与可行性,先将逻辑卷卸载。
配置拉/etc/fstab和/etc/rc.d/rc.local文件的挂载需要先删除里面的挂载命令信息再执行一下这条卸载命令

umount /dev/xiyangyang/xian

3.检查文件系统:在缩小逻辑卷之前,先检查文件系统是否有错误。

e2fsck -f /dev/xiyangyang/xian

4.缩小文件系统:缩小文件系统时,确保缩小的尺寸不会小于文件系统当前实际占用的空间。

#将逻辑卷中的文件系统缩小到10GB。
resize2fs /dev/xiyangyang/xian 10G

5.缩小逻辑卷:现在可以缩小逻辑卷。确保您缩小的尺寸不小于上一步中的文件系统尺寸。

#将逻辑卷缩小到10GB
lvreduce -L 10G /dev/xiyangyang/xian
#然后有个提示让你是否确认,输入y回车即可

6.重挂载(/etc/fstab)

echo "/dev/xiyangyang/xian /mnt/lv1 ext4 defaults 0 0" >> /etc/fstab
mount -a

五.交换分区

交换分区管理 Swap—也叫虚拟内存,在Linux和其他类Unix操作系统中是用来作为内存的备用资源。当系统的物理内存不足时,操作系统会将不活跃的数据从内存移动到交换分区,从而释放内存用于更重要的任务。这种机制可以帮助系统在内存有限v的情况下继续运行,而不至于崩溃。

在Linux中,交换可以有两种形式:

  • 交换分区(Swap Partition):
    这是一种专用的磁盘分区,整个分区都用于交换用途。在系统安装时,通常会设置一个交换分区。
  • 交换文件(SwapFile):
    这是一个位于普通文件系统中的文件,但其用途与交换分区相同。交换文件通常用于已经没有多余分区但需要增加交换空间的情况。

swap分区大小设置规则
在Linux系统,我们可以参照Redhat公司为RHEL5、RHEL6推荐的SWAP空间的大小划分原则,在你没有其他特别需求时,可以作为很好的参考依据。
内存小于4GB时,推荐不少于2GB的swap空间;
内存4GB~16GB,推荐不少于4GB的swap空间;
内存16GB~64GB,推荐不少于8GB的swap空间;
内存64GB~256GB,推荐不少于16GB的swap空间。

查看当前交换分区

free -m[root@localhost ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           3770         230        3416          11         124        3355
Swap:          2047           0        2047[root@localhost ~]# swapon -s
文件名				类型		大小	已用	权限
/dev/dm-1                              	partition	2097148	0	-2

交换分区

[root@localhost ~]# fdisk /dev/sde       #将磁盘sde用来做交换分区
欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。Device does not contain a recognized partition table
使用磁盘标识符 0x10d45376 创建新的 DOS 磁盘标签。命令(输入 m 获取帮助):n          #创建分区
Partition type:p   primary (0 primary, 0 extended, 4 free)e   extended
Select (default p): p                   #扩展分区
分区号 (1-4,默认 1)#使用默认,直接回车
起始 扇区 (2048-41943039,默认为 2048)#使用默认,直接回车
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039)#使用默认,直接回车
将使用默认值 41943039
分区 1 已设置为 Linux 类型,大小设为 20 GiB#这里我用拉sde的全部,也就是20G当作一个区拉命令(输入 m 获取帮助):w         #保存并退出
The partition table has been altered!Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# lsblk        #查看磁盘信息
NAME               MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                  8:0    0   20G  0 disk 
├─sda1               8:1    0    1G  0 part /boot
└─sda2               8:2    0   19G  0 part ├─centos-root    253:0    0   17G  0 lvm  /└─centos-swap    253:1    0    2G  0 lvm  [SWAP]
sdb                  8:16   0   20G  0 disk 
├─xiyangyang-xian  253:2    0   20G  0 lvm  /mnt/lv1
└─xiyangyang-xian1 253:3    0   10G  0 lvm  /mnt/lv2
sdc                  8:32   0   20G  0 disk 
sdd                  8:48   0   20G  0 disk 
├─sdd1               8:49   0    5G  0 part 
└─xiyangyang-xian  253:2    0   20G  0 lvm  /mnt/lv1
sde                  8:64   0   20G  0 disk 
└─sde1               8:65   0   20G  0 part 
sr0                 11:0    1  973M  0 rom  
[root@localhost ~]# partprobe /dev/sdd   #刷新分区表
[root@localhost ~]# mkswap /dev/sde1     #格式化交换分区
正在设置交换空间版本 1,大小 = 20970492 KiB
无标签,UUID=df92a7a8-576f-46e1-8b8a-f840f97b0fdb
[root@localhost ~]# echo " UUID="df92a7a8-576f-46e1-8b8a-f840f97b0fdb" swap swap defaults  0 0" >> /etc/fstab #配置/etc/fstab文件 加入拉配置信息,这里用UUID值也可以配置[root@localhost ~]# swapon -a    #激活swap分区(读取/etc/fstab)
[root@localhost ~]# swapon -s    #查看当前系统上已激活的交换分区或交换文件文件名				类型		大小	已用	权限
/dev/dm-1                              	partition	2097148	0	-2
/dev/sde1                              	partition	20970492	0	-3#这里已经成功拉!
扩展:swapoff /dev/sde1  #关闭swap分区|  swapoff <分区名或路径>swapoff -a 是一个用于停用系统上所有已激活交换分区和交换文件的命令。

交换文件

[root@localhost ~]# dd if=/dev/zero of=/swap2.img bs=1M count=512    #这个命令会创建一个大小为 512 MB 的文件 swap2.img,其中全部内容为零。#这个文件可以用来作为交换文件记录了512+0 的读入
记录了512+0 的写出
536870912字节(537 MB)已复制,1.90825 秒,281 MB/秒
[root@localhost ~]# mkswap /swap2.img
正在设置交换空间版本 1,大小 = 524284 KiB
无标签,UUID=5a5fc05d-cac2-489e-bdcb-3fa6a85da4b1
[root@localhost ~]# chmod 600 /swap2.img#为了安全起见,交换文件应该只有 root 用户可读写[root@localhost ~]# blkid /swap2.img   #查看/swap2.img的UUID
/swap2.img: UUID="5a5fc05d-cac2-489e-bdcb-3fa6a85da4b1" TYPE="swap" 
[root@localhost ~]# echo "UUID="5a5fc05d-cac2-489e-bdcb-3fa6a85da4b1" swap swap defaults  0 0" >> /etc/fstab 
#配置/etc/fstab文件 加入拉配置信息,这里用/etc/fstab的UUID值也可以配置[root@localhost ~]# swapon -a    #激活swap分区(读取/etc/fstab)
[root@localhost ~]# swapon -s    # #查看当前系统上已激活的交换分区或交换文件
文件名				类型		大小	已用	权限
/dev/dm-1                              	partition	2097148	0	-2
/dev/sde1                              	partition	20970492	0	-3
/swap2.img                             	file	524284	0	-4#OK,到这就完成拉!

六.磁盘阵列

磁盘阵列(RAID,Redundant Array of Independent Disks)是一种将多个物理磁盘组合在一起形成一个逻辑单元的方法,以提高数据的冗余性、性能或两者兼而有之。RAID 的主要目的是提供数据冗余和容错能力,或者通过并行处理提高性能。下面是关于磁盘阵列的概述,包括不同级别的 RAID 和它们的特征:

常见的 RAID 级别(理论要记熟)

  • RAID 0(条带化,Striping):

将数据均匀分布在多个磁盘上,提供最高的读写性能,但没有冗余。如果一个磁盘损坏,整个阵列的数据都可能丢失。

  • RAID 1(镜像,Mirroring):

数据在两个磁盘上完全复制,提供了高冗余性和容错能力。如果一个磁盘损坏,数据仍然可以从另一个磁盘中恢复。但存储效率低,只能利用一半的总磁盘空间。

  • RAID 5:

使用奇偶校验技术,提供了较好的冗余性和存储效率。奇偶校验块分布在所有磁盘上。至少需要三个磁盘。如果一个磁盘损坏,数据仍然可以恢复;但是,如果同时损坏两个磁盘,则数据会丢失。

  • RAID 6:

类似于 RAID 5,但使用两个奇偶校验块,因此可以容忍两个磁盘的故障。适用于需要更高冗余性的环境,但写入性能可能略低于 RAID 5。

  • RAID 10(RAID 1+0):

将 RAID 0 的性能和 RAID 1 的冗余性结合在一起。需要至少四个磁盘。数据在一组磁盘上进行镜像,然后再在镜像组间进行条带化。提供高性能和高冗余性,但存储效率较低。

  • 其他 RAID 级别

RAID 2、3、4:这些较少使用的 RAID 级别有其特定的奇偶校验和数据分布方式。
RAID 50、60:这些是 RAID 5 和 RAID 6 的组合形式,适用于更大规模的存储环境。

RAID 的应用

  • 数据冗余:RAID 在服务器和存储系统中广泛应用,用于确保数据的高可用性和容错能力。 性能优化:RAID 0 和 RAID 10
  • 提供了高性能,适合需要快速读写的环境,如数据库或高性能计算。 数据恢复:RAID
  • 允许在磁盘故障后恢复数据,但不应被视为数据备份的替代品。RAID 提供冗余,但仍然需要定期备份。

注意事项

  • 备份:即使使用 RAID,也要定期备份数据,因为 RAID 无法防止数据被意外删除或损坏。
  • RAID 控制器:硬件 RAID 和软件 RAID 的选择会影响性能和灵活性。硬件 RAID 通常具有更好的性能,但可能需要特定的 RAID 控制器;软件 RAID 更灵活,使用系统内置的功能实现 RAID。
  • 故障恢复:RAID 的容错能力不同,数据恢复的过程和时间也不同。在选择 RAID 级别时,请考虑您的业务需求和数据恢复策略。

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

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

相关文章

vue2 webpack-dev-server Unknown promise rejection reason

在vue.config.js中添加如下配置&#xff0c;重启项目即可 module.exports defineConfig({devServer: {client: {overlay: false,},} })参考

Ranni: Taming Text-to-Image Diffusion for Accurate Instruction Following

Ranni: Taming Text-to-Image Diffusion for Accurate Instruction Following abstract 我们引入了一个语义面板作为解码文本到图像的中间件&#xff0c;支持生成器更好地遵循指令 Related work 最近的工作还通过包含额外的条件&#xff08;如补全掩码[15&#xff0c;45]、…

社区养老服务|基于Springboot+vue的社区养老服务平台设计与实现(源码+数据库+文档)

社区养老服务平台 目录 基于Java的社区养老服务平台设计与实现 一、前言 二、系统设计 三、系统功能设计 1用户信息管理 2 服务信息管理 3服务申请管理 4公告信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#…

Vue进阶之Vue项目实战(二)

Vue项目实战 构建基础框架路由 项目&#xff08; v1.0,base-app-layer&#xff09;导航 router物料编排选型 插件化插件化平时写代码场景 配置器开发 构建基础框架 路由 路由分类&#xff1a; memoryHistory&#xff1a;内存路由&#xff0c;路由信息记录在内存中&#xff0…

【NodeMCU实时天气时钟温湿度项目 2】WIFI模式设置及连接

第一专题内容&#xff0c;请参考&#xff1a; 【NodeMCU实时天气时钟温湿度项目 1】连接点亮SPI-TFT屏幕和UI布局设计-CSDN博客 NodeMCU是一个基于乐鑫ESP8266的开源IoT物联网硬件开发平台&#xff0c;支持WIFI功能&#xff0c;使用方法简单&#xff0c;受到越来越多来…

VMware虚拟网卡网络适配器出现黄色感叹号

问题发生&#xff1a;VMware在使用Ubuntu的过程中突然卡死&#xff0c;强制关闭开启后就发生了网络无法连接 找到电脑的设备管理发现VMware的适配器出现黄色感叹号 解决方法&#xff1a; 下载软件ccleaner 扫描问题&#xff0c;懒得去找就修复了所有的问题 最后发现适配器…

WouoUIPagePC端实现

WouoUIPagePC端实现 WouoUIPage是一个与硬件平台无关&#xff0c;纯C语言的UI库&#xff08;目前只能应用于128*64的单色OLED屏幕上&#xff0c;后期会改进&#xff0c;支持更多尺寸&#xff09;。因此&#xff0c;我们可以在PC上实现它&#xff0c;本文就以在PC上使用 VScode…

Vitis HLS 学习笔记--AXI_STREAM_TO_MASTER

目录 1. 简介 2. 示例 2.1 示例功能介绍 2.2 示例代码 2.3 顶层函数解释 2.4 综合报告&#xff08;HW Interfaces&#xff09; 2.5 关于TKEEP和TSTRB 2.6 综合报告&#xff08;SW I/O Information&#xff09; 3. 总结 1. 简介 本文通过“<Examples>/Interface…

KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记13 - STM32的SDIO学习5 - 卡的轮询读写擦

KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记13 - STM32的SDIO学习5 - 卡的轮询读写擦 一、前情提要二、目标三、技术方案3.1 读写擦的操作3.1.1 读卡操作3.1.2 写卡操作3.1.3 擦除操作 3.2 一些技术点3.2.1 轮询标志位的选择不唯一3.2.2 写和擦的卡状态查询3.2.3 写的速度 四、代…

ChatGPT4 Turbo 如何升级体验?官网如何使用最新版GPT-4 Turbo?

本文会教大家如何教大家升级自己的GPT4到GPT4 Turbo&#xff0c;同时检验自己的GPT4 Turbo是否是最新版本的GPT-4-Turbo-2024-04-09 说明 新版GPT-4 Turbo再次重夺大模型排行榜王座&#xff0c;超越了Claude 3 Opus。 最新版本的GPT-4 Turbo被命名为GPT-4-Turbo-2024-04-09。…

PopChar for Mac v10.1激活版:特殊字符输入工具

PopChar for Mac是一款专为Mac用户设计的字符输入工具&#xff0c;其简单直观的功能使得查找和插入特殊字符变得轻而易举。 PopChar for Mac v10.1激活版下载 首先&#xff0c;PopChar为Mac提供了访问所有字体字符的能力&#xff0c;包括那些难以通过键盘直接输入的字符。用户只…

Open CASCADE学习|BRepFill_Edge3DLaw

BRepFill_Edge3DLaw类继承自BRepFill_LocationLaw&#xff0c;用于在3D空间中定义边缘的几何法则。 下面是对代码中关键部分的解释&#xff1a; 文件头部&#xff1a;包含了版权信息&#xff0c;指出这个文件是OCCT软件库的一部分&#xff0c;并且根据GNU Lesser General Publi…