LVM详情

lvm 原理 用法

LVM: Logical Volume Manager, 逻辑卷管理

在软件的层面上将多个物理设备管理起来 可以扩展或者缩小的存储设备。

首先将硬盘分为多个设为物理卷pv  pv 被分成多个大小相等的pe

多个PV 可以组成vg  卷组

多个卷组可以被lv管理

dm: device mapper,将一个或多个底层块设备组织成一个逻辑设备的模块;

pv管理工具:

pvs:简要pv信息显示

pvdisplay:显示pv的详细信息

pvcreate /dev/DEVICE: 创建pv

vg管理工具:

vgs

vgdisplay

vgcreate  [-s #[kKmMgGtTpPeE]] VolumeGroupName  PhysicalDevicePath [PhysicalDevicePath…]

vgextend  VolumeGroupName  PhysicalDevicePath [PhysicalDevicePath…]

vgreduce  VolumeGroupName  PhysicalDevicePath [PhysicalDevicePath…]

 

vgremove

lv管理工具:

lvs

lvdisplay

lvcreate -L #[mMgGtT] -n NAME VolumeGroup

lvremove /dev/VG_NAME/LV_NAME

扩展逻辑卷:

# lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

# resize2fs /dev/VG_NAME/LV_NAME

缩减逻辑卷:

# umount /dev/VG_NAME/LV_NAME

# e2fsck -f /dev/VG_NAME/LV_NAME

# resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT]

# lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME

# mount

快照:snapshot

lvcreate -L #[mMgGtT] -p r -s -n snapshot_lv_name original_lv_name

练习1:创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为1MB, 而后在卷组中创建大小为800M的逻辑卷testlv;挂载至/users目录;

[root@localhost ~]# pvcreate  /dev/sda3

[root@localhost ~]# pvcreate /dev/sda5

[root@localhost ~]# vgcreate   -s 1M testvg /dev/sda3 /dev/sda5

[root@localhost /]#  lvcreate -L 800M -n testlv testvg

[root@localhost /]#  mke2fs -t ext4 /dev/testvg/testlv 

[root@localhost /]# mount   /dev/testvg/testlv /users

练习2: 新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux用户,复制/etc/pam.d目录至自己的家目录;

 

[root@localhost /]# useradd -d /users/archlinux/ archlinux

[archlinux@localhost ~]$  cp -R  /etc/pam.d/ ~

练习3:扩展testlv至850M,要求archlinux用户的文件不能丢失;

[root@localhost archlinux]# lvextend -L 850M /dev/testvg/testlv

练习4:收缩testlv至500M,要求archlinux用户的文件不能丢失;

root@localhost /]# umount /dev/testvg/testlv 

        [root@localhost /]# e2fsck -f /dev/testvg/testlv 

        [root@localhost /]# resize2fs /dev/testvg/testlv 500M

        [root@localhost /]# lvreduce -L 500M /dev/testvg/testlv 

        [root@localhost /]# mount /dev/testvg/testlv /users/

        [root@localhost /]# cd /users/

        [root@localhost users]# ls -l

        total 24

        drwx——. 5 archlinux archlinux  4096 Mar 28 21:00 archlinux

        drwx——. 2 root      root      16384 Mar 28 20:35 lost+found

        -rw-r–r–. 1 root      root         17 Mar 28 20:36 test.txt

练习5:对testlv创建快照,并尝试基于快照备份数据,验正快照的功能;

        lvcreate  -L 200M -p r -s -n testlv_snap /dev/testvg/testlv

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/93735

(0)
精灵祝福精灵祝福
上一篇 2018-03-29 17:53
下一篇 2018-03-29 22:55

相关推荐

  • RAID和逻辑卷

    1、RAID技术
    2、RAID实验
    3、逻辑卷管理
    4、逻辑卷快照

    Linux笔记 2018-06-10
  • linux第三周小结

    本周小结内容包括shell脚本基础知识、文件查找命令locate和find、文本处理工具sed

    Linux笔记 2018-04-15
  • 作业-1

    Linux系统基础-计算机组成.Linux简介

    2018-06-19
  • 第四周作业

    第四周作业
    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。
    2、编辑/etc/group文件,添加组hadoop。
    3、手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。
    4、复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。
    5、修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。
    6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;
    7、显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;
    8、显示/etc/passwd文件中其默认shell为/bin/bash的用户;
    9、找出/etc/passwd文件中的一位数或两位数;
    10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;
    11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;
    12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;
    13、添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;

    2018-06-07
  • shell脚本编程示例

    #!/usr/bin/expectspawn scp /etc/fstab 192.168.8.100:/appexpect {“yes/no” { send “yes\n”;exp_continue }“password” { send “magedu\n” }}expec…

    2018-05-12
  • 两台主机之间搭建路由通信

    搭建路由通信

    2018-04-29