学习笔记:dm、lvm

entos 7软raid的实现:md,dmadm

  • 组成:

    内核模块:md (multi devices)
    用户管理工具:mdadm

  • 命令使用:

    模式化的命令:mdadm [mode] < raiddevice > [options] < component-device >
    支持的raid级别:linear,raid0,raid1,raid4,raid5,raid6,raid10

     	raiddevice:/dev/md#(创建的设备在重启后设备文件名可能变化);
     	component-device:任意块设备;
     	#cat /proc/mdstat :查看当前内核识别到的软raid设备;
     Note:块设备分区格式要设置为fd格式,不然可能会造成raid设备虽然可用,但无法装配;
    

    模式:

     创建:-C(create)
     装配:-A(assemble)(扫描磁盘已有的软raid信息并组合)
     监控:-F(follow or monitor)
     管理:-f,-r,-a等
     
     -C:创建模式;
     	-l #:raid级别;
     	-n #:raid的块设备个数;
     	-x #:备用磁盘个数;
     	-c #:chunk大小
     	-a yes/no:是否自动创建设备文件;
     -D:查看raid设备的详细信息;
     管理模式:
     	-f:模拟块设备故障;
     	-r:移除raid中块设备;
     	-a:向raid中添加块设备;
     -S:停止设备
    

lvm逻辑卷:

  • version:

     version 2(centos 7)
     dm:device map
     pv:组成逻辑卷的任意物理块设备;
     lv:逻辑卷,在vg之上划分的可用卷;
     vg:多个物理块设备组成的逻辑卷组;
     pe:vg属性,定义卷组中的chunk大小;
     设备文件:/dev/mapper/vg_name-lv_name  <--- /dev/vg_name/lv_name
    
  • 管理工具:

    pv管理:pvs、pvdisplay、pvcreate、pvmove

     pvs、pvdisplay:显示pv设备详细信息;
     pvcreate、pvremove:创建或删除pv设备
     pvmove:把某pv的数据移出(vg缩减时会用到)
     resize2fs:重置ext系统文件系统的大小;
    

    vg管理:vgs、vgdisplay、vgcreate、vgremove、vgextend、vgreduce

     vgs、vgdisplay:显示vg信息
     vgcreate vg-name pv-name1 pv-name2 。。。:创建vg;
     	-s # :指定pe大小;
     vgremove vg-name:删除vg(要先删除lv);
     vgextend vg-name pv-name1 pv-name2。。。:扩展vg;
     vgeduce vg-name pv-name :缩减vg(要先pvmove);
     pvmove pv-name:将指定pv的数据移出至其所在vg的其他块设备中;
    

    lv管理:lvcreate、lvremove、lvextend、lvreduce

     lvcreate -n lv-name vg-path/name -L size:创建lv;
     	-n NAME:指定lv名称
     	-L size:指定lv大小;
     	vg-path/name:指定vg设备文件或名称;
     	-s:指定创建为snapshot volume(快照卷)
     	-p r/rw:权限为只读或读写;
     创建快照卷:
     	lvcreate -s -L size -n snap-name -p r/rw lv-path
     	NOTE:快照卷必须和原卷在同一卷组;
     扩展lv:
     	1、umount lv卷;
     	2、fsck -f lv卷;
     	3、lvextend lv-name  -L【+】size,扩展lv卷size或到size;
     	4、resize2fs lv-name:扩展lv卷文件系统至卷边界;
     缩减lv:
     	1、umount lv卷;
     	2、备份数据(lv卷的扩展缩减操作风险较大,一般建议先备份);
     	3、fsck -f lv卷;
     	4、resize2fs lv-name size,缩减lv卷size或到size;
     	5、lvreduce lv-name  -L【-】size,缩减lv卷边界size或到size;
     	6、NOTE:缩减后的文件系大小不能大于缩减后卷的大小;否则文件系统可能损坏
     	7、RECOMMEND:缩减文件系统为大小时,比预定目标小;缩减卷大小时,缩减至目标大小;
     		缩减完成后,resize2fs文件系统至卷边界;
    

    dd命令:转换和复制工具(块级别的复制,不同于cp文件级别的复制)

     用法:dd if=/source/file of=/destination/file 
     	-bz=# :指定block size大小;
     	-count=#:指定块数量
     e,g:磁盘对克
     	dd if=/dev/sda of=/dev/sdb
     e,g备份mbr:
     	dd if=/dev/sda of=/tmp/mbr.bk count=1 bs=512
     e,g清除分区表:
     	dd if=/dev/zero of=/dev/sdb bs=512 count=1
    

备忘:

	1、watch 【options】 command:循环执行某命令
			-n#:循环执行命令的时间间隔;

练习:

1、创建一个可用空间为10G的raid1设备, 要求其chunk大小为128k,文件系统为ext4,有一个空闲盘,开机可自动挂载至/backup目录;
2、创建一个可用空间为10G的raid0设备,要求其chunk大小为256k,文件系统为ext4,开机可自动挂载至/mydata目录;
3、创建一个至少有两个pv组成的大小为20G的名为testvg的VG,要求PE大小为16MB;创建5G的lv卷testlv挂载至/users目录;
4、新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux目录,复制/etc/pam.d目录至自己的家目录;
5、扩展testlv至7G,要求archlinux用户的文件不能丢失;
6、收缩testlv至3G,要求archlinux用户的文件不能丢;
7、对testlv创建快照,并尝试基于快照备份数据,验证快照的功能;

疑问:

1、centos 7组软raid的设备在停止raid后,设备上依然有软raid信息(cat /proc/mdstat,显示inactive)
开机并重启后,会自动读取块设备上的软raid信息,块设备无法为其他程序使用;如何清除?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
准备分区 在command 时,t l 8e 则分区id 为lvm 的 partx –a 硬盘 1. pv创建 1. pv: pvcreate /dev/sda{5,6,7} (sda{5,6,7}是随便分区,但是不能挂载,是自由的) 2.pvdisplay (查看pv的创建) 2. vg创建: 1.vgcreate vgo(名字) /dev/sda{5,6,7} 2.vgdisplay (查看vg的创建) Notice :在vg的创建过程中在 名字 后面加 –s 可以指定PE的大小 3.从vg中划出lv 供使用 1. lvcreate –L 1G –n lv1 vgo (-n lv1 是创建的lv的名字) 2. // –I 100 –n lv1 vgo (-I可以指定PE的数量) 3. lvdisplay (查看lv的信息) 如果查看某个必须要全称(/dev/vgn/lvn) 4. mkfs.ext4 /dev/vgo/lv1 (格式化) /dev/vgo/lv1为前面自己取的名字路径 5. mount /dev/vgo/lv1 /mnt (挂载使用) 6. df (查看是否挂载成功) ①.lv空间的拓展 1.lvextend –L +1G /dev/vgo/lv1 (前面的路径) 2.df –H (查看到此时lv的大小没变) 3.resize2fs /dev/vgo/lv1 4.df –H (此时lv的空间扩大) ②.vg 空间的拓展: 通过pv的增加: 1. pvcreate /dev/sda8 2. vgextend vgo /dev/sd8 (扩展vg) 3. vgdisplay ③减小lvm: 1. umount /mnt (将挂载的lv的地方卸载) 2. e2fsck –f /dev/vgo/lv1 (检测lv) 3. resize2fs /dev/vgo/lv1 100M (设置缩小到的空间大小) notice:此时大小还未改 变,仅告知系统 4. lvreduce /dev/vgo/lv1 –L 100M 5. lvdisplay 6. mount /dev/vgo/lv1 /mnt (重新挂载看数据情况) 7. df –H ④.缩小vg: 1. umount /mnt 2. pvdisplay 3. 移除pv设备 ????? 4. vgdisplay 5. vgreduce vgo /dev/sd8 ⑤删除;vm并还原系统 1. lvremove /dev/vgo/lv1 (移除lv) 2. vgremove /dev/vgo (移除vg) 3. pvdisplay 4. pvremove /dev/sda{5,6,7} (移除pv) NOTICE:在REHL5中在创分区时disk 的id 要改为8e 快照, 即为备份
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值