软raid5+lvm步骤


这段时间闲下来了,就把之前的知识巩固下也为了方便记忆。

下面是软raid5+lvm步骤 软raid0,1,步骤相似 了解raid概念请看上章节。 http://blog.csdn.net/make_zhf/article/details/73468647html

1,将  /dev/sdj1    /dev/sdg1   /dev/sdi1    /dev/sdk1 四块盘作软raid5设备名为/dev/md5  热备一块盘实用也就三块盘。

2,将设备/dev/md5 作pv,vg,lv,mkfs.ext4 /dev/md5,  mount.node

(1) 添加了/dev/sdj1    /dev/sdg1   /dev/sdi1    /dev/sdk1 四块盘
app

[root@localhost /]# fdisk -l 
Disk /dev/sda: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0001f40a

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         103      819200   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2             103         613     4096000   82  Linux swap / Solaris
Partition 2 does not end on cylinder boundary.
/dev/sda3             613        6528    47512576   83  Linux

Disk /dev/sdb: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x60e635c5

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        2088    16771828+  8e  Linux LVM

Disk /dev/sdc: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd80d43e7

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1        2088    16771828+  8e  Linux LVM

Disk /dev/sde: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdd: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd6f8ce31

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1        2088    16771828+  8e  Linux LVM

Disk /dev/sdh: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdj: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdg: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdi: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdk: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdf: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/mapper/datavg-lvdata01: 16.1 GB, 16106127360 bytes
255 heads, 63 sectors/track, 1958 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/mapper/datavg-lvdata02: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/sdl: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
(2)分区
[root@localhost /]# fdisk    /dev/sdj 
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xca12e5a0.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): p 
Disk /dev/sdj: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xca12e5a0

   Device Boot      Start         End      Blocks   Id  System

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-2088, default 1): 1
Last cylinder, +cylinders or +size{K,M,G} (1-2088, default 2088): 
Using default value 2088

Command (m for help): p

Disk /dev/sdj: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xca12e5a0

   Device Boot      Start         End      Blocks   Id  System
/dev/sdj1               1        2088    16771828+  83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost /]# fdisk    /dev/sdg
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xac719a1e.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): p

Disk /dev/sdg: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xac719a1e

   Device Boot      Start         End      Blocks   Id  System

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p Partition number (1-4): 1 First cylinder (1-2088, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2088, default 2088): 
Using default value 2088

Command (m for help): p

Disk /dev/sdg: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xac719a1e

   Device Boot      Start         End      Blocks   Id  System
/dev/sdg1               1        2088    16771828+  83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost /]# fdisk    /dev/sdi
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xd4b19d46.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): p

Disk /dev/sdi: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd4b19d46

   Device Boot      Start         End      Blocks   Id  System

Command (m for help): n
Command action e extended p primary partition (1-4) p Partition number (1-4): 1
First cylinder (1-2088, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2088, default 2088): 
Using default value 2088

Command (m for help): p

Disk /dev/sdi: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd4b19d46

   Device Boot      Start         End      Blocks   Id  System
/dev/sdi1               1        2088    16771828+  83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost /]# fdisk    /dev/sdk
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x32d5562b.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): p

Disk /dev/sdk: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x32d5562b

   Device Boot      Start         End      Blocks   Id  System

Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-2088, default 1): Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-2088, default 2088): Using default value 2088 Command (m for help): p 

Disk /dev/sdk: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x32d5562b

   Device Boot      Start         End      Blocks   Id  System
/dev/sdk1               1        2088    16771828+  83  Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
(3)建立raid5

[root@localhost /]# mdadm -C  /dev/md5  -l 5 -n 3 -x 1    /dev/sdj1    /dev/sdg1   /dev/sdi1    /dev/sdk1 
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.

[root@localhost /]# mdadm    /dev/md5
/dev/md5: 31.97GiB raid5 3 devices, 2 spares. Use mdadm --detail for more detail.

[root@localhost /]# mdadm -Ds
ARRAY /dev/md5 metadata=1.2 spares=2 name=localhost.localdomain:5 UUID=bdafc01b:f8ae082e:d02ef0a4:b2a98161
[root@localhost /]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
md5 : active raid5 sdi1[4] sdk1[3](S) sdg1[1] sdj1[0]
      33526784 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
      [===>.................]  recovery = 17.8% (2993908/16763392) finish=9.6min speed=23856K/sec
      
unused devices: <none>
[root@localhost /]# mdadm --detail /dev/md5
/dev/md5:
        Version : 1.2
  Creation Time : Wed Jun 21 19:54:56 2017
     Raid Level : raid5
     Array Size : 33526784 (31.97 GiB 34.33 GB)
  Used Dev Size : 16763392 (15.99 GiB 17.17 GB)
   Raid Devices : 3
  Total Devices : 4
    Persistence : Superblock is persistent

    Update Time : Wed Jun 21 20:06:57 2017
          State : clean 
 Active Devices : 3
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 1

         Layout : left-symmetric
     Chunk Size : 512K

           Name : localhost.localdomain:5  (local to host localhost.localdomain)
           UUID : bdafc01b:f8ae082e:d02ef0a4:b2a98161
         Events : 18

    Number   Major   Minor   RaidDevice State
       0       8      145        0      active sync   /dev/sdj1
       1       8       97        1      active sync   /dev/sdg1
       4       8      129        2      active sync   /dev/sdi1

       3       8      161        -      spare   /dev/sdk1
(4)建立pv 

root@localhost /]# pvcreate /dev/md5
  Physical volume "/dev/md5" successfully created                                                  
[root@localhost /]# pvs
  PV         VG     Fmt  Attr PSize  PFree 
  /dev/md5          lvm2 ---- 31.97g 31.97g
  /dev/sdb1  datavg lvm2 a--u 15.99g     0 
  /dev/sdc1  datavg lvm2 a--u 15.99g     0 
  /dev/sdd1  datavg lvm2 a--u 15.99g 12.98g
  /dev/sdh   datavg lvm2 a--u 16.00g 16.00g

(5)建立vgdom

[root@localhost /]# vgs
  VG     #PV #LV #SN Attr   VSize  VFree 
  datavg   4   2   0 wz--n- 63.97g 28.97g
[root@localhost /]# vgcreate  datavg02  /dev/md5
  Volume group "datavg02" successfully created
[root@localhost /]#  
[root@localhost /]# vgs
  VG       #PV #LV #SN Attr   VSize  VFree 
  datavg     4   2   0 wz--n- 63.97g 28.97g
  datavg02   1   0   0 wz--n- 31.97g 31.97
(6)建立lv

[root@localhost /]# lvcreate  -L  10G  -n lvdatavg0201  datavg02
  Logical volume "lvdatavg0201" created.
[root@localhost /]# 
[root@localhost /]# lvs
  LV           VG       Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lvdata01     datavg   -wi-ao---- 15.00g                                                    
  lvdata02     datavg   -wi-ao---- 20.00g                                                    
  lvdatavg0201 datavg02 -wi-a----- 10.00g  
  
[root@localhost /]# mkdir  /datavg0201
[root@localhost /]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/datavg/lvdata01
  LV Name                lvdata01
  VG Name                datavg
  LV UUID                nYmHDL-uorm-h2P1-z2by-q0q7-cD41-hgJMJy
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2017-06-20 23:58:06 +0800
  LV Status              available
  # open                 1
  LV Size                15.00 GiB
  Current LE             3840
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
   
  --- Logical volume ---
  LV Path                /dev/datavg/lvdata02
  LV Name                lvdata02
  VG Name                datavg
  LV UUID                ObJwel-aF2L-P6bR-SqCw-4gog-GKeR-Mdn0Py
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2017-06-21 00:03:21 +0800
  LV Status              available
  # open                 1
  LV Size                20.00 GiB
  Current LE             5120
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/datavg02/lvdatavg0201
  LV Name                lvdatavg0201
  VG Name                datavg02
  LV UUID                y2B8VI-DsSX-bTh1-C3PQ-ikJZ-TBzh-B14Ww3
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2017-06-21 21:25:45 +0800
  LV Status              available
  # open                 0
  LV Size                10.00 GiB
  Current LE             2560
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     4096
  Block device           253:2


(6)格式化并挂载ide

[root@localhost /]# mkfs.ext4   /dev/datavg02/lvdatavg0201
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
655360 inodes, 2621440 blocks
131072 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2684354560
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@localhost /]# 
[root@localhost /]# 
[root@localhost /]# mount  /dev/datavg02/lvdatavg0201  /datavg0201/
[root@localhost /]# 
[root@localhost /]# 
[root@localhost /]# df  -h  
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3              45G  844M   42G   2% /
tmpfs                 939M     0  939M   0% /dev/shm
/dev/sda1             772M   35M  698M   5% /boot
/dev/mapper/datavg-lvdata01
                       15G  141M   14G   1% /data01
/dev/mapper/datavg-lvdata02
                       20G   44M   19G   1% /data02
/dev/mapper/datavg02-lvdatavg0201
                      9.8G   23M  9.2G   1% /datavg0201