项目一

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

  1. 准备两个10G的分区(linux LVM)。
    在这里,我新建了一块大小为20G的硬盘名为:sdd。
    使用分区工具fdisk创建LVM分区,通过t命令将LVM分区类型改为8e。
    保存退出后,需要重启系统使分区生效。或者在创建新的分区后,需要执行partprobe,将磁盘分区的变化信息通知内核,请求操作系统重新加载分区表。不然很有可能找不到你新建的分区。
fdisk /dev/sdd

在这里插入图片描述
在这里插入图片描述

  1. 创建PV物理卷、查看PV物理卷。
    将上个步骤产生的分区当作LVM物理卷,使用pvcreate DEVICE将分区修改为LVM物理卷。
pvcreate /dev/sdd{1..2}  //创建物理卷
pvs                      //查看物理卷

在这里插入图片描述

  1. 创建VG卷组,查看分配的PE相关信息。
    LVM每一个卷组都是有一个或多个物理卷组合而成,使用vgcreate命令建立卷组。
    vgcreate VGNAME PVDEVICES
vgcreate -s 16M testvg /dev/sdd{1..2}
vgs

在这里插入图片描述

  1. 创建5G的逻辑卷,名称为testlv,查看LV列表。
    产生出卷组后,就可以从卷组中划分一块空间作为逻辑卷。
    lvcreate [-L SIZE] - n LVNAME VGNAME
    其中SIZE是逻辑卷大小,LVNAME是逻辑卷识别名称,VGNAME是卷组识别名称。
lvcreate -L 5G -n testlv testvg
lvs

在这里插入图片描述

  1. 创建文件系统(格式化为ext4文件系统类型)。
    当逻辑卷创建完成后,要能够识别并使用RED HAT Enterprise Linux必须创建文件系统,建议使用ext4专有格式。
mkfs -t ext4 /dev/testvg/testlv
blkid /dev/testvg/testlv    //检查是否分配UID

在这里插入图片描述
在这里插入图片描述

  1. 创建一个目录并挂载,查看分区情况及大小。
mkdir /users
mount /dev/testvg/testlv /users
df -h |grep users

在这里插入图片描述

  1. 设置自动挂载。
    在这里插入图片描述
    在这里插入图片描述

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

  1. 创建用户并指定其家目录。
mkdir /users  //如果之前已经创建了,此步跳过。
useradd -d /users/archlinux archlinux

在这里插入图片描述

  1. 切换用户,并复制文件。
su - archlinux
cp -a /etc/pam.d .

在这里插入图片描述

  1. 查看文件个数。
ls /users/archlinux/pam.d/ |wc -l

在这里插入图片描述

3.扩展testlv至7G,要求archlinux用户的文件不能丢失。

  1. 先检查需要扩展的大小,VG是否有足够可用空间。
vgs

在这里插入图片描述

  1. 查看逻辑卷
lvs

在这里插入图片描述

  1. 扩展逻辑卷大小。
    放大逻辑卷:lvextend -L SIZE LV_DEVICE
lvextnd -L +2G /dev/testvg/testlv

在这里插入图片描述

  1. 再次查看逻辑卷大小。
lvs

在这里插入图片描述

  1. 查看拷贝的pam.d目录下的文件个数。
ls /users/archlinux/pam.d |wc -l

在这里插入图片描述

4.收缩testlv至3G,要求archlinux用户的文件不能丢失。

  1. 卸载文件系统。
umount /users

在这里插入图片描述

  1. 检查文件系统是否完好。
e2fsck -f /dev/testvg/testlv

在这里插入图片描述

  1. 设置文件系统大小。
resize2fs -p /dev/testvg/testlv 3G

在这里插入图片描述

  1. 缩减逻辑卷。
    缩小逻辑卷:lvreduce -L SIZE LV_DEVICE
lvreduce -L 3G /dev/testvg/testlv

在这里插入图片描述

  1. 再次查看逻辑卷大小。
lvs

在这里插入图片描述

  1. 再次挂载。
mount /dev/testvg/testlv /users
df -h|grep users

在这里插入图片描述

  1. 查看pam.d目录中文件个数。
ls /users/archlinux/pam.d |wc -l

在这里插入图片描述

5.对testlv创建快照,并尝试基于快照备份数据,验正快照的功能。

  1. 创建大小为1G只读快照。
    利用lvcreate产生一个逻辑卷快照:lvcreate -L SIZE -s -n LVNAME LVDEVICE
lvcreate -n testnap -s -L 1G /dev/testvg/testlv

在这里插入图片描述

  1. 查看快照。
lvdispaly /dev/testvg/testnap

在这里插入图片描述

  1. 创建快照目录并挂载。
    如果需要读取逻辑卷快照,只需要挂载逻辑卷快照即可。
mkdir /users/testnap
mount /dev/testvg/testnap /users/testnap
df -h|grep /users/testnap

在这里插入图片描述

  1. 删除/users/archlinux/pam.d中以a开头的文件。
rm -f /users/archlinux/pam.d/a*
ls /users/archlinux/pam.d/ |wc -l


这里文件个数为45了,之前是46

  1. 查看快照中pam.d中的文件个数。
ls /users/testnap/archlinux/pam.d |wc -l


46个,上步删除没有对此产生影响

  1. 备份快照卷数据(打包成tar.gz的包)。
tar -zcf /tmp/testnap.tar.gz /users/testnap/archlinux/pam.d/*

在这里插入图片描述

  1. 取消挂载。
umount /users/testnap
df -h|grep users

在这里插入图片描述

  1. 还原文件(解压缩包)
tar -zxf /tmp/testnap.tar.gz -C ./
  1. 查看原文件个数,数据是否恢复成功?
ls /testnap/archlinux/pam.d/ |wc -l

在这里插入图片描述
文件个数为46,数据恢复成功。

项目二

  1. 创建逻辑卷vshare,卷组的名称为devgroup,PE的大小为16M,共使用50个PE块,文件系统为vfat,要求永久挂载到/mnt/vshare目录下。
    (1)、创建一个大小为16*50M以上的分区。这里我创了个1000M的分区。
fdisk /dev/sde
partprobe /dev/sde  //创建成功后更新磁盘

在这里插入图片描述
(2)、创建PV

pvcreate /dev/sde1

在这里插入图片描述
(3)、创建卷组devgroup,PE的大小为16M。
我在创建卷组命名时命名错了,所以改了下命名。

vgcreate -s 16M devgroup /dev/sde1

在这里插入图片描述
(4)、创建逻辑卷vshare

lvcreate -l 50 -n vshare devgroup //使用小写-l,表示设置的逻辑卷大小是以PE的块数为单位的。
lvs
vgdispaly devgroup

在这里插入图片描述

(5)、文件系统为vfat,要求永久挂载到/mnt/vshare目录下

mkdir -p /mnt/vshare
mkfs -t vfat /dev/devgroup/vshare
mount /dev/devgroup/vshare /mnt/vshare
df -h|grep /mnt/vshare
vi /etc/fstab
shutdown -r now
df -h|grep /mnt/vshare

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 创建一个新分区,大小为2G,将新分区添加到根分区所在的卷组,将根分区的大小增加1.8G。
    df -h
    在这里插入图片描述
    (1)、新增一块硬盘,将新添加的磁盘创建大小为2G的分区
    lsblk
    在这里插入图片描述
    fdisk /dev/sdf
    lsblk
    在这里插入图片描述在这里插入图片描述
    (2)、将sdf1分区创建为物理卷
pvcreate /dev/sdf1

在这里插入图片描述
(3)、将新分区添加到根分区所在的卷组
vgdisplay -v
/dev/centos/root:根分区所挂载的逻辑卷路径
centos:根分区所在卷组名字。
在这里插入图片描述
lvs
在这里插入图片描述
(4)、扩展卷组容量
vgextend centos /dev/sdf1
在这里插入图片描述
(5)、扩展根分区所挂载的逻辑卷路径并使扩容生效。

lvextend -L +1.8G /dev/centos/root

在这里插入图片描述
lvs
在这里插入图片描述
之前为17,增加了1.8G后显示18.8,扩容成功。
lsblk
在这里插入图片描述
df -h 容量由17到19G了。
在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐