lvm逻辑卷 练习题

创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录;在/users下创建一个test.txt文件。扩展testlv至7G,要求archlinux用户的文件不能丢失;收缩testlv至3G,要求archlinux用户的文件不能丢失;对testlv创建快照,并尝试基于快照备份数据,验正快照的功能。

  任务1,创建逻辑卷testlv

  首先,先创建2个分区   

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
[root@localhost~]# fdisk /dev/sda
 
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): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (7859-13081, default 7859): 
Using default value 7859
Last cylinder, +cylinders or +size{K,M,G} (7859-13081, default 13081): +10G
 
Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (9165-13081, default 9165):    
Using default value 9165
Last cylinder, +cylinders or +size{K,M,G} (9165-13081, default 13081): +10G
 
Command (m for help): p
 
Disk /dev/sda: 128.8 GB, 128849018880 bytes
255 heads, 63 sectors/track, 15665 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: 0x0002b73a
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          26      204800   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              26        7859    62914560   8e  Linux LVM
/dev/sda3            7859       13081    41952748+   5  Extended
/dev/sda5            7859        9164    10489414+  83  Linux
/dev/sda6            9165       10470    10490413+  83  Linux
 
Command (m for help): t   #修改分区ID
Partition number (1-6): 5
Hex code (type L to list codes): 8e
Changed system type of partition 5 to 8e (Linux LVM)
 
Command (m for help): t
Partition number (1-6): 6
Hex code (type L to list codes): 8e
Changed system type of partition 6 to 8e (Linux LVM)
 
Command (m for help): p
 
Disk /dev/sda: 128.8 GB, 128849018880 bytes
255 heads, 63 sectors/track, 15665 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: 0x0002b73a
 
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          26      204800   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              26        7859    62914560   8e  Linux LVM
/dev/sda3            7859       13081    41952748+   5  Extended
/dev/sda5            7859        9164    10489414+  8e  Linux LVM
/dev/sda6            9165       10470    10490413+  8e  Linux LVM
 
Command (m for help): w
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
 
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
[root@localhost ~]# partx -a /dev/sda
BLKPG: Device or resource busy
error adding partition 1
BLKPG: Device or resource busy
error adding partition 2
BLKPG: Device or resource busy
error adding partition 3
[root@localhost ~]# partx -a /dev/sda
BLKPG: Device or resource busy
error adding partition 1
BLKPG: Device or resource busy
error adding partition 2
BLKPG: Device or resource busy
error adding partition 3
BLKPG: Device or resource busy
error adding partition 5
BLKPG: Device or resource busy
error adding partition 6
[root@localhost ~]# cat /proc/partitions #查看分区信息
major minor  #blocks  name
 
   8        0  125829120 sda
   8        1     204800 sda1
   8        2   62914560 sda2
   8        3          1 sda3
   8        5   10489414 sda5
   8        6   10490413 sda6
 253        0   20971520 dm-0
 253        1    2097152 dm-1
 253        2   10485760 dm-2
 253        3   20971520 dm-3

   创建pv

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
[root@localhost ~]# pvcreate /dev/sda5
  Physical volume “/dev/sda5” successfully created
[root@localhost ~]# pvcreate /dev/sda6
  Physical volume “/dev/sda6” successfully created
[root@localhost ~]# pvdisplay  
  “/dev/sda5” is a new physical volume of “10.00 GiB”
  — NEW Physical volume —
  PV Name               /dev/sda5
  VG Name               
  PV Size               10.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               aWkcdi-T8zI-ZQ7h-xcPE-KhDI-HAmz-TEaAph
    
  “/dev/sda6” is a new physical volume of “10.00 GiB”
  — NEW Physical volume —
  PV Name               /dev/sda6
  VG Name               
  PV Size               10.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               Ib9szy-eyhG-zWDZ-sm6t-MUXI-sCUu-S2XtuG

  创建vg

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
[root@localhost~]# vgcreate -v -s 16MB testvg /dev/sda5
    DEGRADED MODE. Incomplete RAID LVs will be processed.
    Wiping cache of LVM-capable devices
    Wiping cache of LVM-capable devices
    Adding physical volume ‘/dev/sda5’ to volume group ‘testvg’
    Archiving volume group “testvg” metadata (seqno 0).
    Creating volume group backup “/etc/lvm/backup/testvg” (seqno 1).
  Volume group “testvg” successfully created
[root@localhost~]# vgextend -v testvg /dev/sda6
    DEGRADED MODE. Incomplete RAID LVs will be processed.
    Checking for volume group “testvg”
    Archiving volume group “testvg” metadata (seqno 1).
    Wiping cache of LVM-capable devices
    Adding physical volume ‘/dev/sda6’ to volume group ‘testvg’
    Volume group “testvg” will be extended by 1 new physical volumes
    Creating volume group backup “/etc/lvm/backup/testvg” (seqno 2).
  Volume group “testvg” successfully extended
[root@localhost ~]# vgdisplay 
  — Volume group —
  VG Name               testvg
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  2
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               20.00 GiB
  PE Size               16.00 MiB   #PE 大小16MB
  Total PE              1280
  Alloc PE / Size       0 / 0   
  Free  PE / Size       1280 / 20.00 GiB
  VG UUID               i06ZbB-QWLX-zWmW-x2hS-L8Uo-zAbN-g4MhEu

  创建逻辑卷testlv

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@localhost ~]# lvcreate -L 5G -n testlv /dev/testvg
  Logical volume “testlv” created
[root@localhost ~]# lvdisplay 
  — Logical volume —
  LV Path                /dev/testvg/testlv
  LV Name                testlv
  VG Name                testvg
  LV UUID                tNyjOF-7Sb4-RVbW-W7Yk-zi6N-jXYG-LK4sOI
  LV Write Access        read/write
  LV Creation host, time laopan, 2015-08-27 18:37:40 +0800
  LV Status              available
  # open                 0
  LV Size                5.00 GiB  #逻辑卷5G
  Current LE             320
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  – currently set to     256
  Block device           253:4

   在/dev/testvg/testlv创建ext4文件系统   

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[root@localhost ~]# mkfs -t ext4 /dev/testvg/testlv 
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310720 blocks
65536 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1342177280
40 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
 
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
 
This filesystem will be automatically checked every 20 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

   创建挂载点 mkdir /users

   把/dev/testvg/testlv 挂载至/users,在其目录下创建一个test.txt文件

1
2
3
4
5
6
7
[root@localhost ~]# mount /dev/testvg/testlv /users
[root@localhost ~]# cd /users
[root@localhost users]# echo `date` > test.txt
[root@localhost users]# ls
lost+found  test.txt
[root@laopan users]# cat test.txt 
Thu Aug 27 18:45:46 CST 2015

   任务2,在线把testlv扩展至7G,保证test.txt是否丢失

   先对逻辑卷扩容

1
2
3
4
5
6
7
8
9
10
11
12
[root@localhost users]# lvextend -L 7G /dev/testvg/testlv 
  Size of logical volume testvg/testlv changed from 5.00 GiB (320 extents) to 7.00 GiB (448 extents). #已经扩展到7G了,但是文件系统识别的还是5G,所以需要对文件系统扩容
  Logical volume testlv successfully resized
[root@localhost users]# df
Filesystem           1K-blocks    Used Available Use% Mounted on
/dev/mapper/vg0-root  20511356  293400  19169380   2% /
tmpfs                  1954364       0   1954364   0% /dev/shm
/dev/sda1               194241   33069    150932  18% /boot
/dev/mapper/vg0-usr   10190136 1953200   7712648  21% /usr
/dev/mapper/vg0-var   20511356  199612  19263168   2% /var
/dev/mapper/testvg-testlv
                       5029504   10236   4757124   1% /users

   再对testlv的文件系统扩容,命令resize2fs 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@localhost users]# resize2fs -f /dev/testvg/testlv 
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/testvg/testlv is mounted on /users; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/testvg/testlv to 1835008 (4k) blocks.
The filesystem on /dev/testvg/testlv is now 1835008 blocks long.
 
[root@localhost users]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg0-root   20G  287M   19G   2% /
tmpfs                 1.9G     0  1.9G   0% /dev/shm
/dev/sda1             190M   33M  148M  18% /boot
/dev/mapper/vg0-usr   9.8G  1.9G  7.4G  21% /usr
/dev/mapper/vg0-var    20G  195M   19G   2% /var
/dev/mapper/testvg-testlv
                      6.8G   12M  6.5G   1% /users

   回头再确认一下/users下的test是否还在

1
2
[root@localhost users]# cat test.txt 
Thu Aug 27 18:45:46 CST 2015

   经验证test.txt没有损坏,任务完成

   任务3,下面进行逻辑卷缩减实验

    首先需要卸载/dev/testvg/testlv

1
2
[root@localhost users]# cd ..
[root@localhost /]# umount /dev/testvg/testlv

    进行文件检查

1
2
3
4
5
6
7
8
[root@localhost /]# e2fsck -f /dev/testvg/testlv 
e2fsck 1.41.12 (17-May-2010)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/testvg/testlv: 12/458752 files (0.0% non-contiguous), 64448/1835008 blocks

   检查OK,进入一步,文件系统缩减

1
2
3
4
[root@localhost /]# resize2fs /dev/testvg/testlv 3G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/testvg/testlv to 786432 (4k) blocks.
The filesystem on /dev/testvg/testlv is now 786432 blocks long.

    最后缩减逻辑卷testlv

1
2
3
4
5
6
[root@localhost /]# lvreduce -L 3G /dev/testvg/testlv 
\  WARNING: Reducing active logical volume to 3.00 GiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce testlv? [y/n]: y
  Size of logical volume testvg/testlv changed from 7.00 GiB (448 extents) to 3.00 GiB (192 extents).
  Logical volume testlv successfully resized

   把缩减后的逻辑卷testlv挂载至/users下面,检查

1
2
3
4
5
6
7
8
9
10
11
12
[root@localhost /]# mount /dev/testvg/testlv /users/
[root@localhost /]# df -h #容量检查
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg0-root   20G  287M   19G   2% /
tmpfs                 1.9G     0  1.9G   0% /dev/shm
/dev/sda1             190M   33M  148M  18% /boot
/dev/mapper/vg0-usr   9.8G  1.9G  7.4G  21% /usr
/dev/mapper/vg0-var    20G  195M   19G   2% /var
/dev/mapper/testvg-testlv
                      2.9G  7.6M  2.7G   1% /users
[root@localhost /]# cat /users/test.txt #文件检查
Thu Aug 27 18:45:46 CST 2015

   testlv变成2.9G在一定范围可接受。文件test.txt没有损坏。

   任务4,对testlv做快照

1
2
[root@localhost users]# lvcreate -s -L 1G -p r -n test_snap_shot /dev/testvg/testlv 
  Logical volume “test_snap_shot” created

   检查快照

1
2
3
4
[root@localhost users]# mount /dev/testvg/test_snap_shot /mnt
mount: block device /dev/mapper/testvg-test_snap_shot is write-protected, mounting read-only
[root@localhost users]# cat /mnt/test.txt 
Thu Aug 27 18:45:46 CST 2015

原创文章,作者:island,如若转载,请注明出处:http://www.178linux.com/71234

(0)
islandisland
上一篇 2017-03-16
下一篇 2017-03-16

相关推荐

  • Because LVM so cattle(Logical Volume Manager)

    LVM: Logical Volume Manager         LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。 …

    Linux干货 2016-08-29
  • Linux系统

    1、计算机的组成及其功能 从基本结构上来讲,电脑可以分为五大部分:运算器、存储器、控制器、输入和输出设备。 运算器(Datapath):对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。 存储器(Memory):存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。 控制器(Control):整个计算机的中枢神经,对程序规定的控制信息进行解释,…

    Linux干货 2016-10-30
  • HAProxy七种调度方法的简单示意图

    看了三个月,中间因出差和其他事没有看估计也有十几天,刚把35天的视频看完。很多内容都记不住,待第一次看完后再回头看吧。 现在想,对内容进行简单的画图,把基本的体现出来,对记忆和回顾应该有帮助。

    Linux干货 2016-07-26
  • 条件判断if、case与文件查找locate、find及相关练习

    一、条件选择 1、if:按条件执行脚本中的内容,可以使用嵌套结构,有单分支、双分支和多分支结构,每个条件中可以有不止一条语句,如果有多条语句,可以用and(-a)或or(-o)连接在一起,但不能使用&&或||: if COMMANDS; then     COMMANDS;   &n…

    Linux干货 2016-08-18
  • ACL实现灵活的权限管理

    ACL实现灵活的权限管理 除了文件的所有者,所属组和其它人,可以对更多的用户设置权限 CentOS7当中,无论是操作系统安装时还是之后手工创建的文件系统(xfs、ext4)均会开启ACL功能。 CentOS6及之前的版本,仅操作系统安装时创建的文件系统才会默认开启ACL,手工创建的文件系统,需要手工开启ACL功能。 mount -o acl /dev/sda…

    2017-07-27
  • 文件权限

     本篇博客是对文件权限的简单介绍,将会简述下权限的数字表现形式,还有字母表现形式,还有一些特殊的suid、sgid、sticky的权限介绍,还有对ACL权限的简述。  一、权限的定义     关于权限,百度百科的解释如下:权限(privilege)是指某个特定的用户具有特定的系统资源使用权力,像是文…

    Linux干货 2017-07-29