linux 之 使用RAID 和LVM 磁盘阵列技术

本章将深入讲解各个常用 RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)技术方案的特性,并通过实际部署 RAID 10、RAID 5+备份盘等方案来更直观地查看 RAID 的强大效果,以便进一步满足生产环境对硬盘设备的 IO 读写速度和数据冗余备份机制的需求。同时,考虑到用户可能会动态调整存储资源,本章还将介绍 LVM(Logical Volume Manager,逻辑卷管理器)的部署、扩容、缩小、快照以及卸载删除的相关知识。相信读者在学完本章内容后,便可以在企业级生产环境中灵活运用 RAID 和 LVM 来满足对存储资源的高级管理需求了。

1. RAID(独立冗余磁盘阵列)

近年来, CPU 的处理性能保持着高速增长,Intel 公司在 2017 年最新发布的 i9-7980XE处理器芯片更是达到了 18 核心 36 线程。但与此同时,硬盘设备的性能提升却不是很大,因此逐渐成为当代计算机整体性能的瓶颈。而且,由于硬盘设备需要进行持续、频繁、大量的IO 操作,相较于其他设备,其损坏几率也大幅增加,导致重要数据丢失的几率也随之增加。


1988 年,加利福尼亚大学伯克利分校首次提出并定义了 RAID 技术的概念。RAID 技术通过把多个硬盘设备组合成一个容量更大、安全性更好的磁盘阵列,并把数据切割成多个区段后分别存放在各个不同的物理硬盘设备上,然后利用分散读写技术来提升磁盘阵列整体的性能,同时把多个重要数据的副本同步到不同的物理硬盘设备上,从而起到了非常好的数据冗余备份效果。

任何事物都有它的两面性。RAID 技术确实具有非常好的数据冗余备份功能,但是它也相应地提高了成本支出。就像原本我们只有一个电话本,但是为了避免遗失,我们将联系人号码信息写成了两份,自然要为此多买一个电话本,这也就相应地提升了成本支出。RAID 技术的设计初衷是减少因为采购硬盘设备带来的费用支出,但是与数据本身的价值相比较,现代企业更看重的则是 RAID 技术所具备的冗余备份机制以及带来的硬盘吞吐量的提升。也就是说,RAID 不仅降低了硬盘设备损坏后丢失数据的几率,还提升了硬盘设备的读写速度,所以它在绝大多数运营商或大中型企业中得以广泛部署和应用。

出于成本和技术方面的考虑,需要针对不同的需求在数据可靠性及读写性能上作出权衡,制定出满足各自需求的不同方案。目前已有的 RAID 磁盘阵列的方案至少有十几种,接下来会详细讲解 RAID 0、RAID 1、RAID 5 与 RAID 10 这 4 种最常见的方案

1.1 RAID 0

RAID 0 技术把多块物理硬盘设备(至少两块)通过硬件或软件的方式串联在一起,组成一个大的卷组,并将数据依次写入到各个物理硬盘中。这样一来,在最理想的状态下,硬盘设备的读写性能会提升数倍,但是若任意一块硬盘发生故障将导致整个系统的数据都受到破坏。通俗来说,RAID 0 技术能够有效地提升硬盘数据的吞吐速度,但是不具备数据备份和错误修复能力。如图 7-1 所示,数据被分别写入到不同的硬盘设备中,即 disk1 和 disk2 硬盘设备会分别保存数据资料,最终实现分开写入、读取的效果。

1.2 RAID 1

尽管 RAID 0 技术提升了硬盘设备的读写速度,但是它是将数据依次写入到各个物理硬

盘中,也就是说,它的数据是分开存放的,其中任何一块硬盘发生故障都会损坏整个系统的
数据。因此,如果生产环境对硬盘设备的读写速度没有要求,而是希望增加数据的安全性时,
就需要用到 RAID 1 技术了。

在图 7-2 所示的 RAID 1 技术示意图中可以看到,它是把两块以上的硬盘设备进行绑

定,在写入数据时,是将数据同时写入到多块硬盘设备上(可以将其视为数据的镜像或备
份)。当其中某一块硬盘发生故障后,一般会立即自动以热交换的方式来恢复数据的正常
使用。

RAID 1 技术虽然十分注重数据的安全性,但是因为是在多块硬盘设备中写入了相同的数据,因此硬盘设备的利用率得以下降,从理论上来说,图 7-2 所示的硬盘空间的真实可用率只有 50%,由三块硬盘设备组成的 RAID 1 磁盘阵列的可用率只有 33%左右,以此类推。而且,由于需要把数据同时写入到两块以上的硬盘设备,这无疑也在一定程度上增大了系统计算功能的负载。

那么,有没有一种 RAID 方案既考虑到了硬盘设备的读写速度和数据安全性,还兼顾了成本问题呢?实际上,单从数据安全和成本问题上来讲,就不可能在保持原有硬盘设备的利用率且还不增加新设备的情况下,能大幅提升数据的安全性。刘遄老师也没有必要忽悠各位读者,下面将要讲解的 RAID 5 技术虽然在理论上兼顾了三者(读写速度、数据安全性、成本),但实际上更像是对这三者的“相互妥协”。

1.3 RAID 5

如图 7-3 所示,RAID5 技术是把硬盘设备的数据奇偶校验信息保存到其他硬盘设备中。RAID 5 磁盘阵列组中数据的奇偶校验信息并不是单独保存到某一块硬盘设备中,而是存储到除自身以外的其他每一块硬盘设备上,这样的好处是其中任何一设备损坏后不至于出现致命缺陷;图 7-3 中 parity 部分存放的就是数据的奇偶校验信息,换句话说,就是 RAID 5 技术实际上没有备份硬盘中的真实数据信息,而是当硬盘设备出现问题后通过奇偶校验信息来尝试重建损坏的数据。RAID 这样的技术特性“妥协”地兼顾了硬盘设备的读写速度、数据安全性与存储成本问题。

1.4 RAID 10

鉴于 RAID 5 技术是因为硬盘设备的成本问题对读写速度和数据的安全性能而有了一定的妥协,但是大部分企业更在乎的是数据本身的价值而非硬盘价格,因此生产环境中主要使用 RAID 10 技术。

顾名思义,RAID 10 技术是 RAID 1+RAID 0 技术的一个“组合体”。如图 7-4 所示,RAID 10 技术需要至少 4 块硬盘来组建,其中先分别两两制作成 RAID 1 磁盘阵列,以保证数据的安全性;然后再对两个 RAID 1 磁盘阵列实施 RAID 0 技术,进一步提高硬盘设备的读写速度。这样从理论上来讲,只要坏的不是同一组中的所有硬盘,那么最多可以损坏 50%的硬盘设备而不丢失数据。由于 RAID 10 技术继承了 RAID 0 的高读写速度和 RAID 1 的数据安全性,在不考虑成本的情况下 RAID 10 的性能都超过了 RAID 5,因此当前成为广泛使用的一种存储技术

1.5 部署磁盘阵列

在具备了上一章的硬盘设备管理基础之后,再来部署 RAID 和 LVM 就变得十分轻松了。首先,需要在虚拟机中添加 4 块硬盘设备来制作一个 RAID 10 磁盘阵列

这几块硬盘设备是模拟出来的,不需要特意去买几块真实的物理硬盘插到电脑上。需要注意的是,一定要记得在关闭系统之后,再在虚拟机中添加硬盘设备,否则可能会因为计算机架构的不同而导致虚拟机系统无法识别添加的硬盘设备。mdadm 命令用于管理 Linux 系统中的软件 RAID 硬盘阵列,格式为“mdadm [模式] <RAID设备名称> [选项] [成员设备名称]”。当前,生产环境中用到的服务器一般都配备 RAID 阵列卡,尽管服务器的价格越来越便宜,但是我们没有必要为了做一个实验而去单独购买一台服务器,而是可以会用 mdadm 命令在 Linux 系统中创建和管理软件 RAID 磁盘阵列,而且它涉及的理论知识的操作过程与生产环境中的完全一致。mdadm 命令的常用参数以及作用如表 7-1 所示。
参数             作用
-a         检测设备名称
-n         指定设备数量
-l         指定 RAID 级别
-C         创建
-v         显示过程
-f         模拟设备损坏
-r         移除设备
-Q         查看摘要信息
-D         查看详细信息
-S         停止 RAID 磁盘阵列

使用 mdadm 命令创建 RAID 10,名称为“/dev/md0”。

udev 是 Linux 系统内核中用来给硬件命名的服务,其命名规则也非常简单。我们可以通过命名规则猜测到第二个 SCSI 存储设备的名称会是/dev/sdb,然后依此类推。使用硬盘设备来部署 RAID 磁盘阵列很像是将几位同学组成一个班级,但总不能将班级命名为/dev/sdbcde 吧。尽管这样可以一眼开出它是由哪些元素组成的,但是

并不利于我们的记忆和阅读。更何况如果我们是使用 10、50、100 个硬盘来部署 RAID磁盘阵列呢?

此时,就需要使用 mdadm 中的参数了。其中,-C 参数代表创建一个 RAID 阵列卡;-v参数显示创建的过程,同时在后面追加一个设备名称/dev/md0,这样/dev/md0 就是创建后的RAID 磁盘阵列的名称;-a yes 参数代表自动创建设备文件;-n 4 参数代表使用 4 块硬盘来部署这个 RAID 磁盘阵列;而-l 10 参数则代表 RAID 10 方案;最后再加上 4 块硬盘设备的名称就搞定了。
mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde

其次,把制作好的 RAID 磁盘阵列格式化为 ext4 格式

mkfs.ext4 /dev/md0

再次,创建挂载点然后把硬盘设备进行挂载操作。挂载成功后可看到可用空间为40GB。

mkdir /RAID
mount /dev/md0 /RAID
df -h

最后,查看/dev/md0 磁盘阵列的详细信息,并把挂载信息写入到配置文件中,使其永久生效。

mdadm -D /dev/md0
echo "/dev/md0 /RAID ext4 defaults 0 0" >> /etc/fstab

1.6 损坏磁盘阵列及恢复

之所以在生产环境中部署 RAID 10 磁盘阵列,是为了提高硬盘存储设备的读写速度及数据的安全性,但由于我们的硬盘设备是在虚拟机中模拟出来的,因此对读写速度的改善可能并不直观,因此刘遄老师决定给各位读者讲解一下 RAID 磁盘阵列损坏后的处理方法,这样大家在步入运维岗位后遇到类似问题时,也可以轻松解决。

在确认有一块物理硬盘设备出现损坏而不能继续正常使用后,应该使用 mdadm 命令将其移除,然后查看 RAID 磁盘阵列的状态,可以发现状态已经改变。
mdadm /dev/md0 -f /dev/sdb
mdadm -D /dev/md0
在 RAID 10 级别的磁盘阵列中,当 RAID 1 磁盘阵列中存在一个故障盘时并不影响 RAID 10 磁盘阵列的使用。当购买了新的硬盘设备后再使用 mdadm 命令来予以替换即可,在此期间我们可以在/RAID 目录中正常地创建或删除文件。由于我们是在虚拟机中模拟硬盘,所以先重启系统,然后再把新的硬盘添加到 RAID 磁盘阵列中
umount /RAID
mdadm /dev/md0 -a /dev/sdb
mdadm -D /dev/md0

1.7 磁盘阵列 + 备份盘

RAID 10 磁盘阵列中最多允许 50%的硬盘设备发生故障,但是存在这样一种极端情况,即同一 RAID 1 磁盘阵列中的硬盘设备若全部损坏,也会导致数据丢失。换句话说,在 RAID 10 磁盘阵列中,如果 RAID 1 中的某一块硬盘出现了故障,而我们正在前往修复的路上,恰巧该 RAID1 磁盘阵列中的另一块硬盘设备也出现故障,那么数据就被彻底丢失了。刘遄老师可真不是乌鸦嘴,这种 RAID 1 磁盘阵列中的硬盘设备同时损坏的情况还真被我的学生遇到过。

在这样的情况下,该怎么办呢?其实,我们完全可以使用 RAID 备份盘技术来预防这类事故。该技术的核心理念就是准备一块足够大的硬盘,这块硬盘平时处于闲置状态,一旦 RAID磁盘阵列中有硬盘出现故障后则会马上自动顶替上去。这样很棒吧!

为了避免多个实验之间相互发生冲突,我们需要保证每个实验的相对独立性,为此需要大家自行将虚拟机还原到初始状态。另外,由于刚才已经演示了 RAID 10 磁盘阵列的部署方法,我们现在来看一下 RAID 5 的部署效果。部署 RAID 5 磁盘阵列时,至少需要用到 3 块硬盘,还需要再加一块备份硬盘,所以总计需要在虚拟机中模拟 4 块硬盘设备

现在创建一个 RAID 5 磁盘阵列+备份盘。在下面的命令中,参数-n 3 代表创建这个RAID 5 磁盘阵列所需的硬盘数,参数-l 5 代表 RAID 的级别,而参数-x 1 则代表有一块备份盘。当查看/dev/md0(即 RAID 5 磁盘阵列的名称)磁盘阵列的时候就能看到有一块备份盘在等待中了。
mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde
现在创建一个 RAID 5 磁盘阵列+备份盘。在下面的命令中,参数-n 3 代表创建这个RAID 5 磁盘阵列所需的硬盘数,参数-l 5 代表 RAID 的级别,而参数-x 1 则代表有一块备份盘。当查看/dev/md0(即 RAID 5 磁盘阵列的名称)磁盘阵列的时候就能看到有一块备份盘在等待中了。
mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/ sdd /dev/sde

现在将部署好的 RAID 5 磁盘阵列格式化为 ext4 文件格式,然后挂载到目录上,之后就可以使用了。

mkfs.ext4 /dev/md0
最后是见证奇迹的时刻!我们再次把硬盘设备/dev/sdb 移出磁盘阵列,然后迅速查看/dev/md0 磁盘阵列的状态,就会发现备份盘已经被自动顶替上去并开始了数据同步。RAID 中的这种备份盘技术非常实用,可以在保证 RAID 磁盘阵列数据安全性的基础上进一步提高数据可靠性,所以,如果公司不差钱的话还是再买上一块备份盘以防万一。
mdadm /dev/md0 -f /dev/sdb

mdadm -D /dev/md0

2. LVM(逻辑卷管理器)

前面学习的硬盘设备管理技术虽然能够有效地提高硬盘设备的读写速度以及数据的安全性,但是在硬盘分好区或者部署为 RAID 磁盘阵列之后,再想修改硬盘分区大小就不容易了。换句话说,当用户想要随着实际需求的变化调整硬盘分区的大小时,会受到硬盘“灵活性”的限制。这时就需要用到另外一项非常普及的硬盘设备资源管理技术了—LVM(逻辑卷管理器)。LVM 可以允许用户对硬盘资源进行动态调整。

逻辑卷管理器是 Linux 系统用于对硬盘分区进行管理的一种机制,理论性较强,其创建初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷。尽管对传统的硬盘分区进行强制扩容或缩容从理论上来讲是可行的,但是却可能造成数据的丢失。而 LVM 技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组,可以把多块硬盘进行卷组合并。这样一来,用户不必关心物理硬盘设备的低层架构和布局,就可以实现对硬盘分区的动态调整。LVM 的技术架构

物理卷处于 LVM 中的最底层,可以将其理解为物理硬盘、硬盘分区或者 RAID 磁盘阵列,这都可以。卷组建立在物理卷之上,一个卷组可以包含多个物理卷,而且在卷组创建之后也可以继续向其中添加新的物理卷。逻辑卷是用卷组中空闲的资源建立的,并且逻辑卷在建立后可以动态地扩展或缩小空间。这就是 LVM 的核心理念。

2.1 部署逻辑卷

一般而言,在生产环境中无法精确地评估每个硬盘分区在日后的使用情况,因此会导致原先分配的硬盘分区不够用。比如,伴随着业务量的增加,用于存放交易记录的数据库目录的体积也随之增加;因为分析并记录用户的行为从而导致日志目录的体积不断变大,这些都会导致原有的硬盘分区在使用上捉襟见肘。而且,还存在对较大的硬盘分区进行精简缩容的情况。

我们可以通过部署 LVM 来解决上述问题。部署 LVM 时,需要逐个配置物理卷、卷组和逻辑卷。常用的部署命令
功能/命令       物理卷管理           卷组管理           逻辑卷管理
扫描             pvscan               vgscan             lvscan 
建立             pvcreate             vgcreate           lvcreate 
显示             pvdisplay            vgdisplay          lvdisplay 
删除             pvremove             vgremove           lvremove 
扩展             vgextend             lvextend 
缩小             vgreduce             lvreduce
为了避免多个实验之间相互发生冲突,请大家自行将虚拟机还原到初始状态,并在虚拟机中添加两块新硬盘设备,然后开机,如图 7-8 所示。在虚拟机中添加两块新硬盘设备的目的,是为了更好地演示 LVM 理念中用户无需关心底层物理硬盘设备的特性。我们先对这两块新硬盘进行创建物理卷的操作,可以将该操作简单理解成让硬盘设备支持 LVM 技术,或者理解成是把硬盘设备加入到 LVM 技术可用的硬件资源池中,然后对这两块硬盘进行卷组合并,卷组的名称可以由用户来自定义。接下来,根据需求把合并后的卷组切割出一个约为 150MB 的逻辑卷设备,最后把这个逻辑卷设备格式化成 EXT4 文件系统后挂载使用。在下文中,刘遄老师将对每一个步骤再作一些简单的描述。

第1步:让新添加的两块硬盘设备支持 LVM 技术

pvcreate /dev/sdb /dev/sdc

第2步:把两块硬盘设备加入到 storage 卷组中,然后查看卷组的状态。

vgcreate storage /dev/sdb /dev/sdc

vgdisplay

第3步:切割出一个约为 150MB 的逻辑卷设备

这里需要注意切割单位的问题。在对逻辑卷进行切割时有两种计量单位。第一种是以容量为单位,所使用的参数为-L。例如,使用-L 150M 生成一个大小为 150MB 的逻辑卷。另外一种是以基本单元的个数为单位,所使用的参数为-l。每个基本单元的大小默认为 4MB。例如,使用-l 37 可以生成一个大小为 37×4MB=148MB 的逻辑卷。
lvcreate -n vo -l 37 storage

lvdisplay

第4步:把生成好的逻辑卷进行格式化,然后挂载使用。

Linux 系统会把 LVM 中的逻辑卷设备存放在/dev 设备目录中(实际上是做了一个符号链接),同时会以卷组的名称来建立一个目录,其中保存了逻辑卷的设备映射文件(即/dev/卷组名称/逻辑卷名称)。
mkfs.ext4 /dev/storage/vo

mkdir /linuxprobe

mount /dev/storage/vo /linuxprobe

第5步:查看挂载状态,并写入到配置文件,使其永久生效。

df -h

echo "/dev/storage/vo /linuxprobe ext4 defaults 0 0" >> /etc/fstab

2.2 扩容逻辑卷

在前面的实验中,卷组是由两块硬盘设备共同组成的。用户在使用存储设备时感知不到设备底层的架构和布局,更不用关心底层是由多少块硬盘组成的,只要卷组中有足够的资源,就可以一直为逻辑卷扩容。扩展前请一定要记得卸载设备和挂载点的关联。
umount /linuxprobe      # 卸载挂载信息

第1步:把上一个实验中的逻辑卷 vo 扩展至 290MB。

lvextend -L 290M /dev/storage/vo

第2步:检查硬盘完整性,并重置硬盘容量。

e2fsck -f /dev/storage/vo
resize2fs /dev/storage/vo

第3步:重新挂载硬盘设备并查看挂载状态。

mount /dev/storage/vo /linuxprobe/
df -h

2.3 缩小逻辑卷

相较于扩容逻辑卷,在对逻辑卷进行缩容操作时,其丢失数据的风险更大。所以在生产环境中执行相应操作时,一定要提前备份好数据。另外 Linux 系统规定,在对 LVM 逻辑卷进行缩容操作之前,要先检查文件系统的完整性(当然这也是为了保证我们的数据安全)。在执行缩容操作前记得先把文件系统卸载掉
umount /linuxprobe

第1步:检查文件系统的完整性。

e2fsck -f /dev/storage/vo

第2步:把逻辑卷 vo 的容量减小到 120MB

resize2fs /dev/storage/vo 120M

第3步:重新挂载文件系统并查看系统状态。

mount /dev/storage/vo /linuxprobe
df -h

2.4 逻辑卷快照

LVM 还具备有“快照卷”功能,该功能类似于虚拟机软件的还原时间点功能。例如,可以对某一个逻辑卷设备做一次快照,如果日后发现数据被改错了,就可以利用之前做好的快照卷进行覆盖还原。LVM 的快照卷功能有两个特点:
  1. 快照卷的容量必须等同于逻辑卷的容量;
  2. 快照卷仅一次有效,一旦执行还原操作后则会被立即自动删除。首先查看卷组的信息
vgdisplay

通过卷组的输出信息可以清晰看到,卷组中已经使用了 120MB 的容量,空闲容量还有39.88GB。接下来用重定向往逻辑卷设备所挂载的目录中写入一个文件。

echo "Welcome to Linuxprobe.com" > /linuxprobe/readme.txt
ls -l /linuxprobe

第1步:使用-s 参数生成一个快照卷,使用-L 参数指定切割的大小。另外,还需要在命令后面写上是针对哪个逻辑卷执行的快照操作。

lvcreate -L 120M -s -n SNAP /dev/storage/vo
lvdisplay

第2步:在逻辑卷所挂载的目录中创建一个 100MB 的垃圾文件,然后再查看快照卷的状态。可以发现存储空间占用量上升了。

dd if=/dev/zero of=/linuxprobe/files count=1 bs=100M

第3步:为了校验 SNAP 快照卷的效果,需要对逻辑卷进行快照还原操作。在此之前记得先卸载掉逻辑卷设备与目录的挂载。

umount /linuxprobe
lvconvert --merge /dev/storage/SNAP

第4步:快照卷会被自动删除掉,并且刚刚在逻辑卷设备被执行快照操作后再创建出来的 100MB 的垃圾文件也被清除了。

mount -a
ls /linuxprobe/

2.5 删除逻辑卷

当生产环境中想要重新部署 LVM 或者不再需要使用 LVM 时,则需要执行 LVM 的删除操作。为此,需要提前备份好重要的数据信息,然后依次删除逻辑卷、卷组、物理卷设备,这个顺序不可颠倒。

第1步:取消逻辑卷与目录的挂载关联,删除配置文件中永久生效的设备参数。

umount /linuxprobe
vim /etc/fstab

/dev/mapper/rhel-root / xfs defaults 1 1 
UUID=50591e35-d47a-4aeb-a0ca-1b4e8336d9b1 /boot xfs defaults 1 2 
/dev/mapper /rhel-swap swap swap defaults 0 0 
/dev/cdrom /media/cdrom iso9660 defaults 0 0

第2步:删除逻辑卷设备,需要输入 y 来确认操作。

lvremove /dev/storage/vo

第3步:删除卷组,此处只写卷组名称即可,不需要设备的绝对路径。

vgremove storage

第4步:删除物理卷设备。

pvremove /dev/sdb /dev/sdc

在上述操作执行完毕之后,再执行 lvdisplay、vgdisplay、pvdisplay 命令来查看 LVM 的信息时就不会再看到信息了(前提是上述步骤的操作是正确的)。

复习题

1. RAID 技术主要是为了解决什么问题呢?
答:RAID 技术可以解决存储设备的读写速度问题及数据的冗余备份问题。

2. RAID 0 和 RAID 5 哪个更安全?
答:RAID 0 没有数据冗余功能,因此 RAID 5 更安全。

3.假设使用 4 块硬盘来部署 RAID 10 方案,外加一块备份盘,最多可以允许几块硬盘同时损坏呢?
答:最多允许 5 块硬盘设备中的 3 块设备同时损坏。

4.位于 LVM 最底层的是物理卷还是卷组?
答:最底层的是物理卷,然后在通过物理卷组成卷组。

5. LVM 对逻辑卷的扩容和缩容操作有何异同点呢?
答:扩容和缩容操作都需要先取消逻辑卷与目录的挂载关联;扩容操作是先扩容后检查文件系统完整性,而缩容操作为了保证数据的安全,需要先检查文件系统完整性再缩容。

6. LVM 的快照卷能使用几次?
答:只可使用一次,而且使用后即自动删除。

7. LVM 的删除顺序是怎么样的?
答:依次移除逻辑卷、卷组和物理卷。
posted @ 2021-11-22 17:29  河图s  阅读(417)  评论(0)    收藏  举报