linux下关于逻辑卷相关配置

1、创建一个物理卷

[root@docker tmp]# pvcreate /dev/sda{5..6}
  Physical volume "/dev/sda5" successfully created
  Physical volume "/dev/sda6" successfully created
[root@docker tmp]# pvs
  PV         VG   Fmt  Attr PSize  PFree 
  /dev/sda5       lvm2 ---  10.00g 10.00g
  /dev/sda6       lvm2 ---   2.01g  2.01g
[root@docker tmp]# pvscan 
  PV /dev/sda5         lvm2 [10.00 GiB]
  PV /dev/sda6         lvm2 [2.01 GiB]
  Total: 2 [12.01 GiB] / in use: 0 [0   ] / in no VG: 2 [12.01 GiB] 

2、创建一个卷组

[root@docker tmp]# vgcreate vg0 /dev/sda{5..6}
  Volume group "vg0" successfully created
[root@docker tmp]# vgs
  VG   #PV #LV #SN Attr   VSize  VFree 
  vg0    2   0   0 wz--n- 12.00g 12.00g
[root@docker tmp]# vgscan 
  Reading all physical volumes.  This may take a while...
  Found volume group "vg0" using metadata type lvm2

3、创建一个逻辑卷

[root@docker tmp]# lvcreate -L +1G -nlv0 /dev/vg0
  Logical volume "lv0" created
[root@docker tmp]# lvs
  LV   VG   Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv0  vg0  -wi-a----- 1.00g                                                    
[root@docker tmp]# lvscan 
  ACTIVE            '/dev/vg0/lv0' [1.00 GiB] inherit

4、格式化逻辑卷

[root@docker tmp]# mkfs.ext4 /dev/vg0/lv0 
mke2fs 1.41.12 (17-May-2010)
文件系统标签=
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376

正在写入inode表: 完成                            
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

5、挂载逻辑卷

[root@docker ~]# mount /dev/vg0/lv0 /luyun
[root@docker ~]# df -Th
Filesystem          Type   Size  Used Avail Use% Mounted on
/dev/sda1           ext4    48G  4.5G   42G  10% /
tmpfs               tmpfs  495M  340K  495M   1% /dev/shm
/dev/mapper/vg0-lv0 ext4   976M  1.3M  908M   1% /luyun

6、扩展逻辑卷大小

[root@docker ~]# lvextend -L +500M /dev/vg0/lv0
  Size of logical volume vg0/lv0 changed from 1.00 GiB (256 extents) to 1.49 GiB (381 extents).
  Logical volume lv0 successfully resized

[root@docker ~]# resize2fs /dev/vg0/lv0 
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/vg0/lv0 is mounted on /luyun; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/vg0/lv0 to 390144 (4k) blocks.
The filesystem on /dev/vg0/lv0 is now 390144 blocks long.

[root@docker ~]# lvs
  LV   VG   Attr       LSize Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv0  vg0  -wi-ao---- 1.49g   

7、压缩逻辑卷为800M

[root@docker ~]# umount /luyun

[root@docker ~]# fsck /dev/vg0/lv0     #检查逻辑卷里的数据
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
/dev/mapper/vg0-lv0: clean, 11/98304 files, 14756/390144 blocks

[root@docker ~]# e2fsck -f /dev/vg0/lv0        #检查文件系统大小
e2fsck 1.41.12 (17-May-2010)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
/dev/vg0/lv0: 11/98304 files (0.0% non-contiguous), 14756/390144 blocks

[root@docker ~]# resize2fs /dev/vg0/lv0 800M      #把文件系统减小为800M
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/vg0/lv0 to 204800 (4k) blocks.
The filesystem on /dev/vg0/lv0 is now 204800 blocks long.

[root@docker ~]# lvresize -L 800M /dev/vg0/lv0     #把逻辑卷减小为800M
  WARNING: Reducing active logical volume to 800.00 MiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv0? [y/n]: y
  Size of logical volume vg0/lv0 changed from 1.49 GiB (381 extents) to 800.00 MiB (200 extents).
  Logical volume lv0 successfully resized

[root@docker ~]# lvs
  LV   VG   Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv0  vg0  -wi-a----- 800.00m 
注意:+800M:在原有的大小上再加上800M ; 300M:不管原来有多大,最后的大小就是300M

8、当卷组空间分完后,须重新添加个物理分区,把物理分区做成物理卷加入卷组

fdisk /dev/sda   #创建一个/dev/sda7      
partx -a /dev/sda
pvcreate /dev/sda7
vgextend  vg0 /dev/sda7    这样卷组的空间就会增大

9、删除逻辑卷、卷组、物理卷

1、先手动卸载挂载点,然后把/etc/fstab中的开机自动挂载删除,再重新加载挂载表mount -a,
2、lvremove /dev/vg0/*    卸载/dev/vg0/下所有的逻辑卷
3、vgremove vg0      卸载卷组vg0    ;    
4、pvremove /dev/sdb{12..14}      卸载物理卷

10、自动挂载逻辑卷脚本

device=`fdisk -l 2> /dev/null | grep "Disk /dev/" | sort | uniq -c | sort -nr | head -1 | awk '{print $3}' | awk -F: '{print $1}'`
pvcreate $device
vgcreate vg1 $device
vgfree=`vgdisplay | grep "Free" | awk '{print $5}'`
lvcreate -l $vgfree -n lv1 vg1 
mkfs.ext4 -j /dev/vg1/lv1
tune2fs -c 0 -i 0 /dev/vg1/lv1
echo "/dev/vg1/lv1  /home  ext4  defaults 0  0 " >> /etc/fstab 
mount -a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值