RAID存储

RAID 概念

RAID,即廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks)。

大容量磁盘价格高昂,RAID的核心思路是将多块容量小、成本低的磁盘组合成大容量、高性能和可靠性的大容量磁盘。

随着磁盘成本大幅下降,“廉价”概念失去意义,RAID咨询委员会(RAID Advisory Board, RAB)将“廉价(Inexpensive)”替换为“独立(Independent)”,RAID自此定义为独立磁盘冗余阵列(Redundant Array of Independent Disks)。

RAID 实现方式

从技术实现维度,RAID主要分为三类,核心差异在于是否依赖专用硬件芯片:

软 RAID:无独立的RAID控制/处理芯片和I/O处理芯片,所有RAID功能由操作系统和CPU完成,实现成本低但效率最差。
硬 RAID:配备专用RAID控制/处理芯片、I/O处理芯片及阵列缓冲,不占用主机CPU资源,性能优异但硬件成本高。
软硬混合 RAID:具备RAID控制/处理芯片,但无独立I/O处理芯片,需CPU和驱动程序辅助完成功能,性能与成本介于软RAID和硬RAID之间。
操作系统识别到的设备是raid卡提供的设备,而不是直接管理底层硬盘。

RAID 级别

RAID通过数据条带、镜像、数据校验三类核心技术实现高性能、高可靠性、容错能力和扩展性。不同技术的组合策略形成不同RAID级别,以适配不同数据应用场景。

D. A. Patterson等的论文最初定义了RAID1RAID5,1988年后扩展出RAID0和RAID6;后续厂商推出的RAID7、RAID10/01、RAID50等无统一标准,业界公认的核心级别为RAID0RAID5,实际应用中以RAID0、RAID1、RAID4、RAID5、RAID6、RAID10为主。

各RAID级别无高低之分,需结合业务对可用性、性能、成本的需求选择适配的级别和实现方式。
在这里插入图片描述

RAID 实践

实验环境需在虚拟机中添加6块20G硬盘,设备名分别为sdb、sdc、sdd、sde、sdf、sdg,用于后续各类RAID阵列的创建与测试。
Linux系统中通过mdadm工具实现软RAID的创建、配置、监控与维护,以下为核心RAID级别的实操流程

虚拟机关机状态,编辑虚拟机设置添加硬盘
在这里插入图片描述

管理RAID0
1、创建RAID0
##安装软件
[root@contenOS7 ~ 09:54:32]# yum install -y mdadm
##创建RAID 0阵列:设备名/dev/md0,级别0,成员盘2块(sdb、sdc)
[root@contenOS7 ~ 10:26:02]# mdadm --create --level=0 --raid-devices=2 /dev/md0 /dev/sd{b,c}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
查看 RAID 0 状态
##查看RAID概要信息(内核态RAID状态)
[root@contenOS7 ~ 10:28:24]# cat /proc/mdstat 
Personalities : [raid0] 
md0 : active raid0 sdc[1] sdb[0]
      41908224 blocks super 1.2 512k chunks
      
unused devices: <none>
##查看RAID设备详细信息
[root@contenOS7 ~ 10:28:45]# mdadm --detail /dev/md0
/dev/md0:
           Version : 1.2
     Creation Time : Thu Apr  9 10:28:24 2026
        Raid Level : raid0
        Array Size : 41908224 (39.97 GiB 42.91 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Thu Apr  9 10:28:24 2026
             State : clean 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

        Chunk Size : 512K

Consistency Policy : none

              Name : contenOS7:0  (local to host contenOS7)
              UUID : 6136ca17:b8e32a7c:227abc3e:f722a725
            Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc

注释:核心关注Raid Level(级别)、State(状态,clean为正常)、Chunk Size(条带块大小)、成员盘状态。

##查看RAID设备与物理盘的映射关系
[root@contenOS7 ~ 10:29:16]# lsblk /dev/md0
NAME MAJ:MIN RM SIZE RO TYPE  MOUNTPOINT
md0    9:0    0  40G  0 raid0 
[root@contenOS7 ~ 10:29:59]# lsblk /dev/sdb /dev/sdc
NAME  MAJ:MIN RM SIZE RO TYPE  MOUNTPOINT
sdb     8:16   0  20G  0 disk  
└─md0   9:0    0  40G  0 raid0 
sdc     8:32   0  20G  0 disk  
└─md0   9:0    0  40G  0 raid0 
格式化与挂载 RAID 0
##格式化RAID0
[root@contenOS7 ~ 10:30:19]# mkfs.xfs /dev/md0
meta-data=/dev/md0               isize=512    agcount=16, agsize=654720 blk
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=10475520, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=5120, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
##创建挂载点
[root@contenOS7 ~ 10:30:42]# mkdir -p /raid/raid0
##挂载RAID设备到挂载点
[root@contenOS7 ~ 10:31:15]# mount /dev/md0 /raid/raid0
##挂载RAID设备到挂载点
[root@contenOS7 ~ 10:31:35]# df -h /raid/raid0
Filesystem      Size  Used Avail Use% Mounted on
/dev/md0         40G   33M   40G   1% /raid/raid0
##测试数据写入
[root@contenOS7 ~ 10:31:48]# cp /etc/ho* /raid/raid0
[root@contenOS7 ~ 10:32:15]# ls /raid/raid0/
host.conf  hostname  hosts  hosts.allow  hosts.deny
删除 RAID 0
##取消挂载
[root@contenOS7 ~ 10:32:28]# umount /dev/md0
##停止RAID阵列(销毁阵列)
[root@contenOS7 ~ 10:32:51]# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
##清除物理盘上的RAID超级块(恢复为普通磁盘)
[root@contenOS7 ~ 10:33:07]# mdadm --zero-superblock /dev/sd{b,c}
管理RAID1
创建 RAID 1
[root@contenOS7 ~ 10:57:27]# mdadm --create --level=1 --raid-devices=2 /dev/dev/sd{b,c}
查看 RAID 1 状态
[root@contenOS7 ~ 11:03:12]# mdadm --detail /dev/md1 
/dev/md1:
           Version : 1.2
     Creation Time : Thu Apr  9 10:58:01 2026
        Raid Level : raid1
        Array Size : 20954112 (19.98 GiB 21.46 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 2
     Total Devices : 3
       Persistence : Superblock is persistent

       Update Time : Thu Apr  9 11:03:21 2026
             State : clean 
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 1

Consistency Policy : resync

              Name : contenOS7:1  (local to host contenOS7)
              UUID : 252fa37d:96a247da:0906109a:ffd74a3f
            Events : 18

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc

       2       8       48        -      spare   /dev/sdd

注释:resyncing表示镜像数据正在同步,需等待同步完成(100%)后再进行格式化操作。

##查看RAID与物理盘映射
[root@contenOS7 ~ 10:59:48]# lsblk /dev/md1
NAME MAJ:MIN RM SIZE RO TYPE  MOUNTPOINT
md1    9:1    0  20G  0 raid1 
[root@contenOS7 ~ 10:59:58]# lsblk /dev/sdb /dev/sdc
NAME  MAJ:MIN RM SIZE RO TYPE  MOUNTPOINT
sdb     8:16   0  20G  0 disk  
└─md1   9:1    0  20G  0 raid1 
sdc     8:32   0  20G  0 disk  
└─md1   9:1    0  20G  0 raid1 
格式化与挂载
##等待镜像同步之后,进行格式化
[root@contenOS7 ~ 11:00:33]# mkfs.xfs -f /dev/md1
meta-data=/dev/md1               isize=512    agcount=4, agsize=1309632 blk
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5238528, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
##创建挂载点
[root@contenOS7 ~ 11:00:53]# mkdir /raid/raid1
##挂载设备
[root@contenOS7 ~ 11:01:35]# mount /dev/md1 /raid/raid1
##验证挂载
[root@contenOS7 ~ 11:01:51]# df -h /raid/raid1
Filesystem      Size  Used Avail Use% Mounted on
/dev/md1         20G   33M   20G   1% /raid/raid1
##测试写入
[root@contenOS7 ~ 11:02:02]# cp /etc/ho* /raid/raid1
[root@contenOS7 ~ 11:02:29]# ls /raid/raid1
host.conf  hostname  hosts  hosts.allow  hosts.deny
增加热备盘
##为RAID 1添加热备盘sdd
[root@contenOS7 ~ 11:02:39]# mdadm --add /dev/md1 /dev/sdd
mdadm: added /dev/sdd
##查看热备盘状态(spare为备用)
[root@contenOS7 ~ 11:03:12]# mdadm --detail /dev/md1 
/dev/md1:
           Version : 1.2
     Creation Time : Thu Apr  9 10:58:01 2026
        Raid Level : raid1
        Array Size : 20954112 (19.98 GiB 21.46 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 2
     Total Devices : 3
       Persistence : Superblock is persistent

       Update Time : Thu Apr  9 11:03:21 2026
             State : clean 
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 1

Consistency Policy : resync

              Name : contenOS7:1  (local to host contenOS7)
              UUID : 252fa37d:96a247da:0906109a:ffd74a3f
            Events : 18

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc

       2       8       48        -      spare   /dev/sdd
模拟磁盘故障
##手动标记sdc为故障
[root@contenOS7 ~ 11:03:43]# mdadm --fail /dev/md1 /dev/sdc
mdadm: set /dev/sdc faulty in /dev/md1
##查看故障后状态(sdd自动顶替并同步)
[root@contenOS7 ~ 11:04:38]# mdadm --detail /dev/md1 |tail -5
    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       2       8       48        1      spare rebuilding   /dev/sdd

       1       8       32        -      faulty   /dev/sdc
##验证数据可正常访问
[root@contenOS7 ~ 11:05:09]# ls /dev/md1
/dev/md1
[root@contenOS7 ~ 11:05:35]# ls /raid/raid1
host.conf  hostname  hosts  hosts.allow  hosts.deny
[root@contenOS7 ~ 11:05:45]# cat /raid/raid1/hostname
contenOS7
删除故障磁盘
##移除故障盘sdc
[root@contenOS7 ~ 11:06:26]# mdadm --remove /dev/md1 /dev/sdc
mdadm: hot removed /dev/sdc from /dev/md1
##验证结果
[root@contenOS7 ~ 11:07:31]# mdadm --detail /dev/md1 | tail -5
            Events : 41

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       2       8       48        1      active sync   /dev/sdd
再次模拟故障
[root@contenOS7 ~ 11:07:37]# mdadm --fail /dev/md1 /dev/sdd
mdadm: set /dev/sdd faulty in /dev/md1
[root@contenOS7 ~ 11:08:44]# mdadm -D /dev/md1 | tail -5
    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       -       0        0        1      removed

       2       8       48        -      faulty   /dev/sdd
[root@contenOS7 ~ 11:09:04]# ls /raid/raid1
host.conf  hostname  hosts  hosts.allow  hosts.deny
[root@contenOS7 ~ 11:09:21]# echo hello world > /raid/raid1/test.txt
[root@contenOS7 ~ 11:09:45]# umount /raid/raid1 
[root@contenOS7 ~ 11:10:16]# ls /raid/raid1
[root@contenOS7 ~ 11:10:32]# mount /dev/md1 /dev/raid/raid1
mount: mount point /dev/raid/raid1 does not exist
[root@contenOS7 ~ 11:11:30]# mount /dev/md1 /raid/raid1
[root@contenOS7 ~ 11:11:46]# ls /raid/raid1
host.conf  hostname  hosts  hosts.allow  hosts.deny  test.txt

总结:raid1阵列中任一成员故障,不影响数据的完整性

删除 RAID 1
##卸载挂载
[root@contenOS7 ~ 11:11:55]# umount /dev/md1
##停止RAID阵列
[root@contenOS7 ~ 11:12:29]# mdadm --stop /dev/md1
mdadm: stopped /dev/md1
##清除物理盘超级块
[root@contenOS7 ~ 11:13:09]# mdadm --zero-superblock /dev/sd{b..d}

使用dd工具填充更彻底。

[root@contenOS7 ~ 11:39:03]# dd if=/dev/zero of=/dev/sdd bs=1M count=1024

作用:使用0填充/dev/sdb硬盘。

if:Input File,/dev/zero 全为0
of:Output File
bs:Block Size,每次添加多大数据流
count:一共填充多少个Block

补充说明

RAID 1核心价值是数据冗余,而非扩容:即使新增磁盘,阵列总容量仍等于单盘容量(镜像机制),无法通过加盘提升可用空间。

管理RAID5
创建 RAID 5
[root@contenOS7 dev 11:53:38]# mdadm --create --level=5 --raid-devices=4 /dev/md5 /dev/sd{b..e}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.

注释:RAID 5最少需3块盘,此处用4块盘(1块用于分布式校验)。

查看 RAID 5 状态
[root@contenOS7 dev 11:55:52]# mdadm --detail /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Thu Apr  9 11:54:19 2026
        Raid Level : raid5
        Array Size : 62862336 (59.95 GiB 64.37 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 4
     Total Devices : 4
       Persistence : Superblock is persistent

       Update Time : Thu Apr  9 11:55:57 2026
             State : clean, degraded, recovering 
    Active Devices : 3
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

    Rebuild Status : 99% complete

              Name : contenOS7:5  (local to host contenOS7)
              UUID : 95815761:6d548e2e:716ad5eb:018f082b
            Events : 16

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      spare rebuilding   /dev/sde

注释:recovering表示阵列正在构建/同步,需等待同步完成后再格式化

##查看RAID与物理盘映射
[root@contenOS7 dev 11:57:01]# lsblk /dev/sd{b..e}
NAME  MAJ:MIN RM SIZE RO TYPE  MOUNTPOINT
sdb     8:16   0  20G  0 disk  
└─md5   9:5    0  60G  0 raid5 
sdc     8:32   0  20G  0 disk  
└─md5   9:5    0  60G  0 raid5 
sdd     8:48   0  20G  0 disk  
└─md5   9:5    0  60G  0 raid5 
sde     8:64   0  20G  0 disk  
└─md5   9:5    0  60G  0 raid5 
[root@contenOS7 dev 11:57:13]# lsblk /dev/md5
NAME MAJ:MIN RM SIZE RO TYPE  MOUNTPOINT
md5    9:5    0  60G  0 raid5 

格式化与挂载
##格式化
[root@contenOS7 dev 11:57:23]# mkfs.xfs /dev/md5
meta-data=/dev/md5               isize=512    agcount=16, agsize=982144 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=15714304, imaxpct=25
         =                       sunit=128    swidth=384 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=7680, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
##创建挂载点
[root@contenOS7 dev 11:58:54]# mkdir /raid/raid5
##设备挂载
[root@contenOS7 dev 11:59:10]# mount /dev/md5 /raid/raid5
##验证挂载
[root@contenOS7 dev 11:59:28]# df -h /raid/raid5
Filesystem      Size  Used Avail Use% Mounted on
/dev/md5         60G   33M   60G   1% /raid/raid5
##测试写入
[root@contenOS7 dev 11:59:52]# cp /etc/ho* /raid/raid5
[root@contenOS7 dev 12:00:11]# ls /raid/raid5
host.conf  hostname  hosts  hosts.allow  hosts.deny
增加热备盘
##增加热备盘
[root@contenOS7 dev 12:00:20]# mdadm --add /dev/md5 /dev/sdf
mdadm: added /dev/sdf
##查看热备盘状态
[root@contenOS7 dev 12:00:38]# mdadm --detail /dev/md5 | tail -7
    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde

       5       8       80        -      spare   /dev/sdf
模拟磁盘故障
##标记sdb为故障盘
[root@contenOS7 dev 12:01:00]# mdadm --fail /dev/md5 /dev/sdb
mdadm: set /dev/sdb faulty in /dev/md5
##查看故障后状态(sdf自动顶替并同步)
[root@contenOS7 dev 12:01:40]# mdadm --detail /dev/md5 | tail -7
    Number   Major   Minor   RaidDevice State
       5       8       80        0      spare rebuilding   /dev/sdf
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde

       0       8       16        -      faulty   /dev/sdb
##验证数据均可访问
[root@contenOS7 dev 12:01:46]# ls /raid/raid5/
host.conf  hostname  hosts  hosts.allow  hosts.deny
删除故障磁盘
##移除故障盘sdb
[root@contenOS7 dev 12:01:58]# mdadm --remove /dev/md5 /dev/sdb
mdadm: hot removed /dev/sdb from /dev/md5
##查看移除结果
[root@contenOS7 dev 12:03:22]# mdadm --detail /dev/md5 | tail -5
    Number   Major   Minor   RaidDevice State
       5       8       80        0      active sync   /dev/sdf
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde
扩容 RAID 5
##新增2块盘(sdb、sdg)到RAID5
[root@contenOS7 dev 12:03:34]# mdadm --add /dev/md5 /dev/sdb /dev/sdg
mdadm: added /dev/sdb
mdadm: added /dev/sdg
##查看新增盘状态(spare为备用)
[root@contenOS7 dev 12:04:11]# mdadm --detail /dev/md5 | tail -8
    Number   Major   Minor   RaidDevice State
       5       8       80        0      active sync   /dev/sdf
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde

       6       8       16        -      spare   /dev/sdb
       7       8       96        -      spare   /dev/sdg
 ##扩展阵列成员数为5(--grow为扩容参数)
[root@contenOS7 dev 12:04:57]# mdadm --grow /dev/md5 --raid-devices 5
##查看扩容结果 等待阵列重构完成(查看进度)
[root@contenOS7 dev 12:05:24]# mdadm --detail /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Thu Apr  9 11:54:19 2026
        Raid Level : raid5
        Array Size : 62862336 (59.95 GiB 64.37 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 5
     Total Devices : 6
       Persistence : Superblock is persistent

       Update Time : Thu Apr  9 12:06:15 2026
             State : clean, reshaping 
    Active Devices : 5
   Working Devices : 6
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

    Reshape Status : 72% complete  #####进度
     Delta Devices : 1, (4->5)

              Name : contenOS7:5  (local to host contenOS7)
              UUID : 95815761:6d548e2e:716ad5eb:018f082b
            Events : 82

    Number   Major   Minor   RaidDevice State
       5       8       80        0      active sync   /dev/sdf
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde
       7       8       96        4      active sync   /dev/sdg

       6       8       16        -      spare   /dev/sdb
 ##扩容完成如下
[root@contenOS7 dev 12:06:22]# mdadm --detail /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Thu Apr  9 11:54:19 2026
        Raid Level : raid5
        Array Size : 62862336 (59.95 GiB 64.37 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 5
     Total Devices : 6
       Persistence : Superblock is persistent

       Update Time : Thu Apr  9 12:06:26 2026
             State : clean, reshaping 
    Active Devices : 5
   Working Devices : 6
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

    Reshape Status : 85% complete
     Delta Devices : 1, (4->5)

              Name : contenOS7:5  (local to host contenOS7)
              UUID : 95815761:6d548e2e:716ad5eb:018f082b
            Events : 83

    Number   Major   Minor   RaidDevice State
       5       8       80        0      active sync   /dev/sdf
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde
       7       8       96        4      active sync   /dev/sdg

       6       8       16        -      spare   /dev/sdb
[root@contenOS7 dev 12:06:35]# mdadm --detail /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Thu Apr  9 11:54:19 2026
        Raid Level : raid5
        Array Size : 83816448 (79.93 GiB 85.83 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 5
     Total Devices : 6
       Persistence : Superblock is persistent

       Update Time : Thu Apr  9 12:06:51 2026
             State : clean 
    Active Devices : 5
   Working Devices : 6
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

              Name : contenOS7:5  (local to host contenOS7)
              UUID : 95815761:6d548e2e:716ad5eb:018f082b
            Events : 87
    Number   Major   Minor   RaidDevice State
       5       8       80        0      active sync   /dev/sdf
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde
       7       8       96        4      active sync   /dev/sdg

       6       8       16        -      spare   /dev/sdb
##验证RAID容量(从60G扩容至80G)
[root@contenOS7 dev 12:07:40]# lsblk /dev/md5
NAME MAJ:MIN RM SIZE RO TYPE  MOUNTPOINT
md5    9:5    0  80G  0 raid5 /raid/raid5
再次模拟磁盘故障
##移走一个硬盘
[root@contenOS7 dev 12:07:59]# mdadm --remove /dev/md5 /dev/sdb
mdadm: hot removed /dev/sdb from /dev/md5
##手动标记故障
[root@contenOS7 dev 13:44:29]# mdadm --fail /dev/md5 /dev/sdg
mdadm: set /dev/sdg faulty in /dev/md5
##查看
[root@contenOS7 dev 13:45:19]# mdadm -D /dev/md5 | tail
            Events : 90

    Number   Major   Minor   RaidDevice State
       5       8       80        0      active sync   /dev/sdf
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
       4       8       64        3      active sync   /dev/sde
       -       0        0        4      removed

       7       8       96        -      faulty   /dev/sdg
[root@contenOS7 dev 13:45:39]# ls /raid/raid5
host.conf  hostname  hosts  hosts.allow  hosts.deny
[root@contenOS7 dev 13:46:12]# echo hello world > /raid/raid5/test.txt
[root@contenOS7 dev 13:46:45]# umount /raid/raid5 
[root@contenOS7 dev 13:46:59]# mount /dev/md5 /raid/raid5
[root@contenOS7 dev 13:47:17]# ls /raid/raid5
host.conf  hostname  hosts  hosts.allow  hosts.deny  test.txt
##出现故障之后,文件的读写没有问题,挂载卸载没有问题
删除 RAID 5
##卸载挂载点
[root@contenOS7 dev 13:47:26]# umount /dev/md5 
##停止矩阵运行
[root@contenOS7 dev 13:47:43]# mdadm --stop /dev/md5 
mdadm: stopped /dev/md5
##清除物理盘超级块
[root@contenOS7 dev 13:47:57]# mdadm --zero-superblock /dev/sd{b..g}
##通过for循环 彻底擦除
[root@contenOS7 dev 13:48:27]# for device in /dev/sd{b..g}
> do
> dd if=/dev/zero of=$device bs=1M count=1024
> done
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.936211 s, 1.1 GB/s
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.371545 s, 2.9 GB/s
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.355365 s, 3.0 GB/s
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.367573 s, 2.9 GB/s
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.37165 s, 2.9 GB/s
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.369839 s, 2.9 GB/s
重构 RAID 5

注释:若停止阵列后未清除超级块,可通过以下命令重构阵列,数据不丢失:

[root@contenOS7 dev 13:50:44]# mdadm --assemble /dev/md5 /dev/sd{b..g}

LVM存储

创建物理卷
##1. 创建单个物理卷
[root@contenOS7 dev 14:22:13]# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created.
##2. 批量创建多个物理卷(sdc、sdd)
[root@contenOS7 dev 14:22:22]# pvcreate /dev/sd{c,d}
  Physical volume "/dev/sdc" successfully created.
  Physical volume "/dev/sdd" successfully created.
##3. 查看所有 PV 列表(简洁版)
[root@contenOS7 dev 14:22:44]# pvs
  PV         VG               Fmt  Attr PSize    PFree 
  /dev/sda2  centos_contenos7 lvm2 a--  <199.00g  4.00m
  /dev/sdb                    lvm2 ---    20.00g 20.00g
  /dev/sdc                    lvm2 ---    20.00g 20.00g
  /dev/sdd                    lvm2 ---    20.00g 20.00g
##4. 查看单个 PV 的详细信息(以 /dev/sdb 为例)
[root@contenOS7 dev 14:23:22]# pvdisplay /dev/sdb
  "/dev/sdb" is a new physical volume of "20.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb
  VG Name               
  PV Size               20.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               nZaARc-ZsVc-9HjE-zoeJ-Irls-7bCG-qgpM9C
创建卷组
##1. 创建包含单个 PV 的卷组(卷组名:webapp,关联 PV:/dev/sdb)
[root@contenOS7 dev 14:23:47]# vgcreate webapp /dev/sdb
  Volume group "webapp" successfully created
##2. 创建包含多个 PV 的卷组(卷组名:dbapp,关联 PV:/dev/sdc、/dev/sdd)
[root@contenOS7 dev 14:24:38]# vgcreate dbapp /dev/sd{c,d}
  Volume group "dbapp" successfully created
##3. 查看 PV 归属(验证 PV 已加入对应 VG)
[root@contenOS7 dev 14:25:01]# pvs
  PV         VG               Fmt  Attr PSize    PFree  
  /dev/sda2  centos_contenos7 lvm2 a--  <199.00g   4.00m
  /dev/sdb   webapp           lvm2 a--   <20.00g <20.00g
  /dev/sdc   dbapp            lvm2 a--   <20.00g <20.00g
  /dev/sdd   dbapp            lvm2 a--   <20.00g <20.00g
##4. 查看所有 VG 列表(简洁版)
[root@contenOS7 dev 14:25:29]# vgs
  VG               #PV #LV #SN Attr   VSize    VFree  
  centos_contenos7   1   3   0 wz--n- <199.00g   4.00m
  dbapp              2   0   0 wz--n-   39.99g  39.99g
  webapp             1   0   0 wz--n-  <20.00g <20.00g
##5. 查看单个 VG 的详细信息(以 dbapp 为例)
[root@contenOS7 dev 14:25:52]# vgdisplay dbapp
  --- Volume group ---
  VG Name               dbapp
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               39.99 GiB
  PE Size               4.00 MiB
  Total PE              10238
  Alloc PE / Size       0 / 0   
  Free  PE / Size       10238 / 39.99 GiB
  VG UUID               Pl3yMK-Ev8P-qCax-4hx2-aodB-I4d4-QLeMic
创建逻辑卷(LV)
##1. 创建单 PV 逻辑卷(卷组:webapp,LV名:webapp01,大小:5G)
[root@contenOS7 dev 14:26:11]# lvcreate -n data01 -L 25G dbapp
  Logical volume "data01" created.
##2. 创建跨 PV 逻辑卷(卷组:dbapp,LV名:data01,大小:25G,跨sdc、sdd)
[root@contenOS7 dev 14:27:03]# lvcreate -n webapp01 -L 5G webapp
  Logical volume "webapp01" created.
##3. 查看所有 LV 列表(简洁版)
[root@contenOS7 dev 14:27:43]# lvs
  LV       VG               Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home     centos_contenos7 -wi-ao---- <145.12g                                                    
  root     centos_contenos7 -wi-ao----   50.00g                                                    
  swap     centos_contenos7 -wi-ao----   <3.88g                                                    
  data01   dbapp            -wi-a-----   25.00g                                                    
  webapp01 webapp           -wi-a-----    5.00g                                                    
逻辑卷设备名格式说明
[root@contenOS7 dev 14:29:01]# ls -l /dev/dbapp/data01 /dev/mapper/dbapp-data01
lrwxrwxrwx 1 root root 7 Apr  9 14:27 /dev/dbapp/data01 -> ../dm-3
lrwxrwxrwx 1 root root 7 Apr  9 14:27 /dev/mapper/dbapp-data01 -> ../dm-3
查看逻辑卷详细信息
[root@contenOS7 dev 14:29:27]# lvdisplay /dev/dbapp/data01 
  --- Logical volume ---
  LV Path                /dev/dbapp/data01
  LV Name                data01
  VG Name                dbapp
  LV UUID                9dKHyc-AfK6-RskF-ao3D-gPK6-5NJ2-Sbad89
  LV Write Access        read/write
  LV Creation host, time contenOS7, 2026-04-09 14:27:03 +0800
  LV Status              available
  # open                 0
  LV Size                25.00 GiB
  Current LE             6400
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:3
   
##验证 PV 空间使用(sdc 已用完,sdd 用了5G)
[root@contenOS7 dev 14:29:53]# pvs
  PV         VG               Fmt  Attr PSize    PFree  
  /dev/sda2  centos_contenos7 lvm2 a--  <199.00g   4.00m
  /dev/sdb   webapp           lvm2 a--   <20.00g <15.00g
  /dev/sdc   dbapp            lvm2 a--   <20.00g      0 
  /dev/sdd   dbapp            lvm2 a--   <20.00g  14.99g
##验证 LV 跨盘(data01 同时占用 sdc、sdd)
[root@contenOS7 dev 14:29:54]# lsblk /dev/sd{b..d}
NAME              MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb                 8:16   0  20G  0 disk 
└─webapp-webapp01 253:4    0   5G  0 lvm  
sdc                 8:32   0  20G  0 disk 
└─dbapp-data01    253:3    0  25G  0 lvm  
sdd                 8:48   0  20G  0 disk 
└─dbapp-data01    253:3    0  25G  0 lvm  
在逻辑卷上创建文件系统

逻辑卷创建后需格式化文件系统并挂载,才能供业务使用:

[root@contenOS7 dev 14:30:52]# mkfs.xfs /dev/webapp/webapp01 
meta-data=/dev/webapp/webapp01   isize=512    agcount=4, agsize=327680 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=1310720, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@contenOS7 dev 14:31:59]# mount /dev/webapp/webapp01 /usr/share/nginx/html
mount: mount point /usr/share/nginx/html does not exist
[root@contenOS7 dev 14:32:43]# vim /etc/fstab
##需在 /etc/fstab 中添加如下行:
/dev/webapp/webapp01  /usr/share/nginx/html  xfs  defaults  0 0
LVM 清理(删除 PV/VG/LV)

如需清理 LVM 配置,需按“卸载文件系统 → 删除 LV → 删除 VG → 删除 PV”的顺序操作:

##1. 卸载已挂载的逻辑卷
[root@contenOS7 ~ 14:45:30]# umount /dev/webapp/webapp01
##2.卸载永久挂载,进入文件删除
[root@contenOS7 ~ 14:56:26]# vim /etc/fstab 
##3. 删除逻辑卷(需确认,输入y)
[root@contenOS7 ~ 14:57:00]# lvremove /dev/webapp/webapp01 /dev/dbapp/data01 
Do you really want to remove active logical volume webapp/webapp01? [y/n]: y
  Logical volume "webapp01" successfully removed
Do you really want to remove active logical volume dbapp/data01? [y/n]: y
  Logical volume "data01" successfully removed
##4. 删除卷组
[root@contenOS7 ~ 14:57:26]# vgremove webapp dbapp 
  Volume group "webapp" successfully removed
  Volume group "dbapp" successfully removed
##5. 删除物理卷(清除 LVM 元数据)
[root@contenOS7 ~ 14:57:40]# pvremove /dev/sd{b..d}
  Labels on physical volume "/dev/sdb" successfully wiped.
  Labels on physical volume "/dev/sdc" successfully wiped.
  Labels on physical volume "/dev/sdd" successfully wiped.
卷组的扩展与缩减

卷组的容量可通过添加/移除 PV 灵活调整,满足业务存储需求变化。

环境准备

先创建基础卷组和逻辑卷,用于后续扩展/缩减测试:

##1. 创建卷组 webapp(关联 PV /dev/sdb,自动初始化 PV)
[root@contenOS7 ~ 14:57:58]# vgcreate webapp /dev/sdb
  Physical volume "/dev/sdb" successfully created.
  Volume group "webapp" successfully created
##2. 在 webapp 中创建 10G 逻辑卷 webapp01
[root@contenOS7 ~ 15:10:01]# lvcreate -n webapp01 -L 10G webapp
WARNING: xfs signature detected on /dev/webapp/webapp01 at offset 0. Wipe it? [y/n]: y
  Wiping xfs signature on /dev/webapp/webapp01.
  Logical volume "webapp01" created.
扩展卷组(VG)

当卷组空间不足时,可添加新 PV 扩展容量:

[root@contenOS7 ~ 15:10:42]# vgextend webapp /dev/sd{c,d}
  Physical volume "/dev/sdc" successfully created.
  Physical volume "/dev/sdd" successfully created.
  Volume group "webapp" successfully extended
缩减卷组(VG)
##1. 查看 PV 使用状态(/dev/sdb 已分配10G,sdc/sdd 空闲)
[root@contenOS7 ~ 15:11:25]# pvs
  PV         VG               Fmt  Attr PSize    PFree  
  /dev/sda2  centos_contenos7 lvm2 a--  <199.00g   4.00m
  /dev/sdb   webapp           lvm2 a--   <20.00g <10.00g
  /dev/sdc   webapp           lvm2 a--   <20.00g <20.00g
  /dev/sdd   webapp           lvm2 a--   <20.00g <20.00g
 ##2. 直接移除已使用的 PV 会报错
[root@contenOS7 ~ 15:11:39]# vgreduce webapp /dev/sdb
  Physical volume "/dev/sdb" still in use
##3. 迁移 PV 数据(将 /dev/sdb 的数据移到 /dev/sdd)
[root@contenOS7 ~ 15:12:10]# pvmove /dev/sdb /dev/sdd
  /dev/sdb: Moved: 0.20%
  /dev/sdb: Moved: 100.00%
##4. 再次查看 PV 状态(/dev/sdb 空闲,/dev/sdd 已使用)
[root@contenOS7 ~ 15:12:58]# pvs
  PV         VG               Fmt  Attr PSize    PFree  
  /dev/sda2  centos_contenos7 lvm2 a--  <199.00g   4.00m
  /dev/sdb   webapp           lvm2 a--   <20.00g <20.00g
  /dev/sdc   webapp           lvm2 a--   <20.00g <20.00g
  /dev/sdd   webapp           lvm2 a--   <20.00g <10.00g
##5. 移除空闲的 /dev/sdb 从 webapp 卷组
[root@contenOS7 ~ 15:13:15]# vgreduce webapp /dev/sdb
  Removed "/dev/sdb" from volume group "webapp"
##6. 验证移除结果(/dev/sdb 已脱离 webapp)
[root@contenOS7 ~ 15:13:51]# pvs
  PV         VG               Fmt  Attr PSize    PFree  
  /dev/sda2  centos_contenos7 lvm2 a--  <199.00g   4.00m
  /dev/sdb                    lvm2 ---    20.00g  20.00g
  /dev/sdc   webapp           lvm2 a--   <20.00g <20.00g
  /dev/sdd   webapp           lvm2 a--   <20.00g <10.00g
逻辑卷的扩展与缩减

逻辑卷的容量可直接调整,需结合卷组空闲空间操作。

扩展逻辑卷(LV)

卷组有空闲空间时,可直接扩展 LV 容量:

##给 webapp01 增加 2G 空间(总容量变为 12G)
[root@contenOS7 ~ 15:14:14]# lvextend -L +2G /dev/webapp/webapp01 
  Size of logical volume webapp/webapp01 changed from 10.00 GiB (2560 extents) to 12.00 GiB (3072 extents).
  Logical volume webapp/webapp01 successfully resized.
##验证lv大小
[root@contenOS7 ~ 15:14:45]# lvs /dev/webapp/webapp01 
  LV       VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  webapp01 webapp -wi-a----- 12.00g 
缩减逻辑卷(LV)

逻辑卷空间充足时,可缩减容量(注意:缩减有数据丢失风险,需谨慎):

##给 webapp01 减少 2G 空间(总容量变回 10G)
[root@contenOS7 ~ 15:14:59]# lvreduce -L -2G /dev/webapp/webapp01 
  WARNING: Reducing active logical volume to 10.00 GiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce webapp/webapp01? [y/n]: y
  Size of logical volume webapp/webapp01 changed from 12.00 GiB (3072 extents) to 10.00 GiB (2560 extents).
  Logical volume webapp/webapp01 successfully resized.
##验证 LV 大小
[root@contenOS7 ~ 15:15:40]# lvs /dev/webapp/webapp01 
  LV       VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  webapp01 webapp -wi-a----- 10.00g

文件系统的扩展与缩减

LV 容量调整后,需同步调整文件系统大小,否则无法使用新增空间(或缩减后空间异常)。

扩展 XFS 文件系统

XFS 是 CentOS7 默认文件系统,仅支持扩展,不支持缩减,步骤如下:

环境准备
##1. 格式化 LV 为 XFS
[root@contenOS7 ~ 15:15:56]# mkfs.xfs /dev/webapp/webapp01 
meta-data=/dev/webapp/webapp01   isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
##2. 创建挂载点并挂载
[root@contenOS7 ~ 15:38:54]# mkdir -p /usr/share/nginx/html
[root@contenOS7 ~ 15:39:55]# mount /dev/webapp/webapp01 /usr/share/nginx/html
##3. 写入测试数据
[root@contenOS7 ~ 15:40:23]# cp /etc/ho* /usr/share/nginx/html
[root@contenOS7 ~ 15:40:51]# ls /usr/share/nginx/html
host.conf  hostname  hosts  hosts.allow  hosts.deny
扩展操作
##扩展 LV 到 15G
[root@contenOS7 ~ 15:41:02]# lvextend -L 15G /dev/webapp/webapp01 
  Size of logical volume webapp/webapp01 changed from 10.00 GiB (2560 extents) to 15.00 GiB (3840 extents).
  Logical volume webapp/webapp01 successfully resized.
[root@contenOS7 ~ 15:41:43]# lvs /dev/webapp/webapp01 
  LV       VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  webapp01 webapp -wi-ao---- 15.00g       
##扩展 XFS 文件系统(指定挂载点)                                             
[root@contenOS7 ~ 15:41:53]# xfs_growfs /usr/share/nginx/html
meta-data=/dev/mapper/webapp-webapp01 isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 2621440 to 3932160
##验证文件系统大小(已扩展到15G,数据未丢失)
[root@contenOS7 ~ 15:42:30]# df -h /usr/share/nginx/html
Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/webapp-webapp01   15G   33M   15G   1% /usr/share/nginx/html
[root@contenOS7 ~ 15:42:49]# ls /usr/share/nginx/html
host.conf  hostname  hosts  hosts.allow  hosts.deny
[root@contenOS7 ~ 15:43:07]# lvs /dev/webapp/webapp01 
  LV       VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  webapp01 webapp -wi-ao---- 15.00g     
##快捷方式:LV + 文件系统一键扩展(-r 参数自动调用 xfs_growfs)                                               
[root@contenOS7 ~ 15:44:05]# lvextend -rL 20G /dev/webapp/webapp01
  Size of logical volume webapp/webapp01 changed from 15.00 GiB (3840 extents) to 20.00 GiB (5120 extents).
  Logical volume webapp/webapp01 successfully resized.
meta-data=/dev/mapper/webapp-webapp01 isize=512    agcount=6, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=3932160, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 3932160 to 5242880
##验证最终大小(20G)
[root@contenOS7 ~ 15:45:02]# lvs /dev/webapp/webapp01 
  LV       VG     Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  webapp01 webapp -wi-ao---- 20.00g                                                    
[root@contenOS7 ~ 15:45:06]# df -h /usr/share/nginx/html
Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/webapp-webapp01   20G   33M   20G   1% /usr/share/nginx/html

逻辑卷快照

##创建快照(-s 表示快照,-n 快照名,-L 快照大小,指定原 LV)
[root@contenOS7 ~ 16:38:23]# lvcreate -s -n webapp01-snap02 -L 30G /dev/webapp/webapp01
  Logical volume "webapp01-snap02" created.
##挂载快照(查看快照中的数据)
##快照的文件系统和原先逻辑卷的文件系统的uuid是一致的。 默认情况下,快照和原卷同一时刻只能挂载一个。
##一定要挂载,则需要修改uuid
[root@contenOS7 ~ 16:39:41]# xfs_admin -U 7a34a34c-4113-471a-b1b5-165ce9f808f0 /dev/webapp/webapp01-snap02
Clearing log and setting UUID
writing all SBs
new UUID = 7a34a34c-4113-471a-b1b5-165ce9f808f0
[root@contenOS7 ~ 16:40:13]# mkdir /webapp/webapp01-snap02
mkdir: cannot create directory ‘/webapp/webapp01-snap02’: No such file or directory
[root@contenOS7 ~ 16:40:44]# mkdir -p /webapp/webapp01-snap02
[root@contenOS7 ~ 16:40:56]# mount /dev/webapp/webapp01-snap02 /webapp/webapp01-snap02
##验证快照数据(与原 LV 一致)
[root@contenOS7 ~ 16:42:26]# ls /webapp/webapp01-snap02
[root@contenOS7 ~ 16:43:22]# ls /dev/webapp/webapp01
/dev/webapp/webapp01
##在快照 LV 中写入新数据(验证快照独立性)
[root@contenOS7 ~ 16:44:16]# echo hello > /webapp/webapp01-snap02/hello.txt
[root@contenOS7 ~ 16:45:10]# cat /webapp/webapp01-snap02/hello.txt 
hello
[root@contenOS7 ~ 16:45:46]# ls /dev/webapp/webapp01
/dev/webapp/webapp01
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐