一.Linux下RAID的创建
Linux下使用mdadm命令创建RAID
1.创建模式:
-C:新建RAID卷
专用选项:
-l:选择RAID级别
-n:硬盘设备个数
-a:自动为其创建设备文件,后跟yes、no
-c:指定chunk(数据库)大小,为2的整数次方默认为64K
-x:指定空闲盘个数--提供冗余,磁盘损坏后直接加载上去
例:创建raid0
madadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sda{6,7}
Mke2fs -j /dev/md0
Mount /dev/mdo /mnt
2.管理模式:
-f | --fail :模拟磁盘为损坏盘
Fg: mdadm /dev/md0 --fail /dev/sda7
-a | --add :新增硬盘
Fg:mdadm /dev/md0 -a /dev/sda8
-r | --remove :移除损坏的硬盘
3.监控模式:
-F
4.增长模式:
-G
5.装配模式:
-A
Fg:mdadm -A /dev/md0 /dev/sda8 /dev/sda9
6.查看当前系统的RAID信息:
-D:显示RAID的相关信息
--detail:显示信息
7.停止RAID阵列
-S | --stop
8.将当前RAID信息保存至配置文件,一便以后进行装配
Mdadm -D --scan > /dev/mdadm.conf
装配:mdadm -A /dev/md#
二.Linux下LVM的创建
1.物理卷PV
pvcreate :创建PV
pvmore:挪动数据
pvremove:擦除PV卷
pvdisplay:显示物理卷的信息
pvscan:扫描并显示系统上的pv卷
pvs:查看pv信息
2.卷组VG
vgcreate :创建Vg
vgmore:移除
vgremove:删除vg
vgdisplay:显示vg的信息
vgs:查看vg信息
vgcreate -s #:指定pe大小,默认为4Mb,默认单位为mb
3.逻辑卷LV
lvcreate:创建LV
lvreduce:缩减LV
lvextend:拓展LV
lvremove:移除lv,后加路径
lvdisplay:查看lv相关信息
lvs:查看lv信息
4.扩展逻辑卷
LVM的扩展:先扩展物理卷,再扩展逻辑卷
lvextend -L [+]2T /PATH/TO/PV: //+是至增加多大,不接+号时,则为扩展到多大
resize2fs /PATH/TO/LV 5G //扩展逻辑边界到5G
resize2fs -p /PATH/TO/LV //有多大扩展到多大
5.缩减逻辑卷
LVM缩减:先缩减逻辑边界,再缩减物理卷边界
注意:
1、不能在线缩减,得先卸载
2、确保缩减后的空间大小能储存原来所有文件
3、在缩减之前应该强行检查文件,以确保文件系统处于一致性状态。
e2fsck -f:强行检查文件
df -lh:检查利用率
umount:缩减之前必须先卸载
resize2fs /PATH/TO/LV 5G //缩减逻辑卷到5G
lvreduce -L [-]300G /PATH/TO/PV //缩减物理卷
mount:重新挂载。
6.快照卷
1、生命周期为整个数据时长:在这段时长内,数据的增长量不能超出块照卷大小
2、快照卷应该是只读的
3、跟原卷在同一卷组内
创建快照命令:
lvcreate
-s :指定类型为块照
-p r|w:表示指定权限
例:创建、还原过程
lvcreate -s -L 2T SLV_NAME -p -r /PATH/TO/LV
tar jcf /tmp/usrs.tar.bz2 块照挂载点内的内容
tar -xf /tmp/users.tar.bz2 解压缩
三、案例
案例:为公司的mail服务器扩容
起初用于mail的存储空间只有一块硬盘sdb,使用LVM:
#pvcreate /dev/sdb //创建物理卷
#vgcreate mail_vg0 /dev/sdb //创建卷组mail_vg0
#lvcreate -L 2000G -n mail_lv0 /dev/mail_vg0/mail_lv0 /*在卷组mail_vg0上 取2000G创建逻辑卷/dev/mail_vg0/mail_lv */
#mkfs.ext3 /dev/mail_vg0/mail_lv0 //格式化
#vi /erc/fstab //开机自动挂载
假设随着公司人员增多,mail空间不够用,需要扩容,添加硬盘sdc、sdd
#pvcreate /dev/sdc /dev/sdd
#vgextend /dev/mail_vg0 /dev/sdc /dev/sdd //向卷组中添加新的物理卷
#lvextend -L +2T /dev/mail_vg0/mail_lv0 //对逻辑卷mail_lv0扩容2T