命令

缩小PV空间到120G,即PV上的vg00已将缩小到120G
pvresize --setphysicalvolumesize 120g /dev/sda2

背景

机器上有一块900G本地的本地磁盘,安装系统时将900G的空间全部扩到了一个VG卷组中,即vg00,并创建了多个LV逻辑卷,LV逻辑卷占用了vg00卷组120G的空间,即卷组vg00还剩770G左右的空闲空间;此种文件系统格式不符合应用的规范标准,标准的文件系统规范为创建一个120G的卷组Vg00,使用Vg00卷组创建系统必要的LV逻辑卷,而剩下的770G空间新建卷组Vg01。为了满足应用需求,现将900G盘上的vg00空间缩小为120G,然后新建vg01使用剩下的770G空间。在不影响系统正常的情况下实现PV/VG的缩小。由于LV占用了120G的VG,即将VG空间缩小到120G方可最大化利用vg00卷组,为了达到缩小Vg00的需求,通过缩小PV来强制缩小Vg空间。

操作流程

现有文件系统

[root@sishb00302 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg00 1 6 0 wz--n- 837.84g 721.84g
[root@sishb00302 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
crashvol vg00 -wi-ao---- 32.00g
homevol vg00 -wi-ao---- 2.00g
rootvol vg00 -wi-ao---- 20.00g
swapvol vg00 -wi-ao---- 32.00g
tmpvol vg00 -wi-ao---- 10.00g
varvol vg00 -wi-ao---- 20.00g [root@sishb00302 ~]# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them.
Be careful before using the write command. Command (m for help): p Disk /dev/sda: 900.2 GB, 900151926784 bytes, 1758109232 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 262144 bytes / 262144 bytes
Disk label type: dos
Disk identifier: 0x000cd03d Device Boot Start End Blocks Id System
/dev/sda1 * 2048 1026047 512000 83 Linux
/dev/sda2 1026048 1758107647 878540800 8e Linux LVM

减小PV

[root@sishb00302 ~]# pvresize --setphysicalvolumesize 120g /dev/sda2
Physical volume "/dev/sda2" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
[root@sishb00302 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg00 1 6 0 wz--n- 120.00g 4.00g
[root@sishb00302 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 vg00 lvm2 a-- 120.00g 4.00g

删除原有的900G的/dev/sda2分区,新建/dev/sda2分区为120G,剩余空间为/dev/sda3分区

[root@sishb00302 ~]# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them.
Be careful before using the write command. Command (m for help): p Disk /dev/sda: 900.2 GB, 900151926784 bytes, 1758109232 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 262144 bytes / 262144 bytes
Disk label type: dos
Disk identifier: 0x000cd03d Device Boot Start End Blocks Id System
/dev/sda1 * 2048 1026047 512000 83 Linux
/dev/sda2 1026048 1758107647 878540800 8e Linux LVM Command (m for help): d
Partition number (1,2, default 2):
Partition 2 is deleted Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p):
Using default response p
Partition number (2-4, default 2):
First sector (1026048-1758109231, default 1026048):
Using default value 1026048
Last sector, +sectors or +size{K,M,G} (1026048-1758109231, default 1758109231): +120G
Partition 2 of type Linux and of size 120 GiB is set Command (m for help): t
Partition number (1,2, default 2):
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM' Command (m for help): n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p):
Using default response p
Partition number (3,4, default 3):
First sector (252684288-1758109231, default 252684288):
Using default value 252684288
Last sector, +sectors or +size{K,M,G} (252684288-1758109231, default 1758109231):
Using default value 1758109231
Partition 3 of type Linux and of size 717.9 GiB is set Command (m for help): t
Partition number (1-3, default 3):
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to '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.

移除/dev/vg00/crashvol文件系统

[root@sishb00302 ~]# umount /var/crash/
[root@sishb00302 ~]# lvremove /dev/vg00/crashvol
Do you really want to remove active logical volume vg00/crashvol? [y/n]: y
Logical volume "crashvol" successfully removed
[root@sishb00302 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
homevol vg00 -wi-ao---- 2.00g
rootvol vg00 -wi-ao---- 20.00g
swapvol vg00 -wi-ao---- 32.00g
tmpvol vg00 -wi-ao---- 10.00g
varvol vg00 -wi-ao---- 20.00g
[root@sishb00302 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg00 1 5 0 wz--n- 120.00g 36.00g

/dev/vg00/varvol逻辑卷在线扩容

[root@sishb00302 ~]# lvextend -L +30g /dev/vg00/varvol -r
Size of logical volume vg00/varvol changed from 20.00 GiB (5120 extents) to 50.00 GiB (12800 extents).
Logical volume vg00/varvol successfully resized.
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/mapper/vg00-varvol is mounted on /var; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 7
The filesystem on /dev/mapper/vg00-varvol is now 13107200 blocks long. [root@sishb00302 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
homevol vg00 -wi-ao---- 2.00g
rootvol vg00 -wi-ao---- 20.00g
swapvol vg00 -wi-ao---- 32.00g
tmpvol vg00 -wi-ao---- 10.00g
varvol vg00 -wi-ao---- 50.00g

修改fatab文件

修改前
[root@sishb00302 ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Tue Mar 6 11:44:46 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg00-rootvol / ext4 defaults 1 1
UUID=c04bb69b-1380-4c31-b4f4-9bfacb5d9063 /boot ext4 defaults 1 2
/dev/mapper/vg00-homevol /home ext4 defaults 1 2
/dev/mapper/vg00-tmpvol /tmp ext4 defaults 1 2
/dev/mapper/vg00-varvol /var ext4 defaults 1 2
/dev/mapper/vg00-crashvol /var/crash ext4 defaults 1 2
/dev/mapper/vg00-swapvol swap swap defaults 0 0 修改后
[root@sishb00302 ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Tue Mar 6 11:44:46 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/vg00-rootvol / ext4 defaults 1 1
UUID=c04bb69b-1380-4c31-b4f4-9bfacb5d9063 /boot ext4 defaults 1 2
/dev/mapper/vg00-homevol /home ext4 defaults 1 2
/dev/mapper/vg00-tmpvol /tmp ext4 defaults 1 2
/dev/mapper/vg00-varvol /var ext4 defaults 1 2
/dev/mapper/vg00-swapvol swap swap defaults 0 0

关机重启系统,从而释放/Idev/sda3分区的空间

空间释放后,再次创建vg01卷组

[root@sishb00302 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
homevol vg00 -wi-ao---- 2.00g
rootvol vg00 -wi-ao---- 20.00g
swapvol vg00 -wi-ao---- 32.00g
tmpvol vg00 -wi-ao---- 10.00g
varvol vg00 -wi-ao---- 50.00g [root@sishb00302 ~]# vgcreate /dev/vg01 /dev/sda3
Physical volume "/dev/sda3" successfully created.
Volume group "vg01" successfully created
[root@sishb00302 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg00 1 5 0 wz--n- 120.00g 6.00g
vg01 1 0 0 wz--n- 717.84g 717.84g [root@sishb00302 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
homevol vg00 -wi-ao---- 2.00g
rootvol vg00 -wi-ao---- 20.00g
swapvol vg00 -wi-ao---- 32.00g
tmpvol vg00 -wi-ao---- 10.00g
varvol vg00 -wi-ao---- 50.00g

最终实现了vg00文件系统从900G减小到了120G,并新建了vg01卷组

重做LVM文件系统之减小PV的更多相关文章

  1. Linux下动态调整LVM文件系统大小

    LINUX下可以通过LVM动态调整一个已挂载的文件系统大小 LV可以根据需求增大或减小,但是LV改变大小以后,在LV中的文件系统也需要相应的改变大小.这个概念非常重要,如果没有相应的调整LV中文件系统 ...

  2. LVM增大和减小ext4、xfs分区

    可以对ext4调整分区大小,能自动识别要增大还是减小 lvresize -L 300M -r /dev/vg/lvol0 原文地址http://www.361way.com/lvm-xfs-ext4/ ...

  3. linux磁盘限额和进阶文件系统的管理 quota RAID LVM

    概念: Quota 的一般用途: 针对 WWW server ,例如:每个人的网页空间的容量限制! 针对 mail server,例如:每个人的邮件空间限制. 针对 file server,例如:每个 ...

  4. 第8天【文件系统挂载、ext文件系统及read命令、Linux RAID、lvm应用】

    文件系统挂载与管理工具(01)_recv 文件系统管理: 将额外文件系统与根文件系统某现存的目录建立关联关系,进而使得此目录作为其他文件访问入口的行成为挂载: 解除此关联关系的过程 吧设备关联挂载点: ...

  5. LVM : 扩展文件系统的容量

    如果发现文件系统的容量不足了,可以通过 LVM 轻松的进行扩展(当然也可以进行缩减操作).本文将紧接前文中的 demo 详细的介绍扩展文件系统的操作过程.说明:本文的演示环境为 ubuntu 16.0 ...

  6. 一张图让你学会LVM

    导读 随着科技的进步,人们不知不觉的就进入了大数据的时代,数据的不断增加我们发现我们的磁盘越来越不够用了,接下来就是令人头疼的事情--加硬盘,数据的备份与还原.LVM就是Linux下专门针对我们数据的 ...

  7. Redhat 平台下 LVM 管理说明

    Redhat 平台下  LVM 管理说明 LVM 是 Logical Volume Manager(逻辑卷管理器)的简写,它为主机提供了更高层次的磁盘存储管理能力.LVM 可以帮助系统管理员为应用与用 ...

  8. LVM基础详细说明及动态扩容lvm逻辑卷的操作记录

    LVM概念:---------------------------------------------------------------------------------------------- ...

  9. LVM常规操作记录梳理(扩容/缩容/快照等)

    基本介绍Linux用户安装Linux 操作系统时遇到的一个最常见的难以决定的问题就是如何正确地给评估各分区大小,以分配合适的硬盘空间.随着 Linux的逻辑盘卷管理功能的出现,这些问题都迎刃而解, l ...

随机推荐

  1. 【转】iOS 上常用的两个功能:点击屏幕和return退出隐藏键盘和解决虚拟键盘挡住UITextField的方法

    iOS上面对键盘的处理很不人性化,所以这些功能都需要自己来实现, 首先是点击return和屏幕隐藏键盘 这个首先引用双子座的博客 http://my.oschina.net/plumsoft/blog ...

  2. SQL 值得记住的点

    概要 记录在学习过程中,遇到的不懂且需要掌握的知识点.主要基于 MySQL.   汇总      replace 函数      删除重复      取子串 substr      项连接      ...

  3. Java算法面试题:编写一个程序,将e:\neck目录下的所有.java文件复制到e:\jpg目录下,并将原来文件的扩展名从.java改为.jpg

    package com.swift; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; i ...

  4. c++question 004 c++基本数据类型有哪些?

    (1)signed int类型 整数型 占内存4个字节 一个字节byte 占8个二进制位 一个整型就占32位 (2)short int  短整型 占内存2个字节 一个短整型占16位 (3)long i ...

  5. 牛客小白月赛5 F 圆(circle) 【欧拉定理】

    题目连接: https://www.nowcoder.com/acm/contest/135/F 签到题来了,送你们一个Python秒的题. Apojacsleam来到了OI大陆,经过了连年征战,成为 ...

  6. ceph 性能

    mysql在以下设备备份耗时,供大家参考: 备份文件大小 sata用时 ceph用时 nas挂载sata盘用时 7G   1分钟   15G   2分钟 21分钟 47G   8分钟 82分钟 274 ...

  7. 3D全景漫游

    全景图共分为三种: ①球面全景图 利用一张全景图围成一个球,自身位置位于球体内.由于图片是矩形,所以最上和最下的缝合处很明显就能够看得出来. 球面全景图是最接近人眼的构建模式,若利用多个立面构建,拼接 ...

  8. JZOJ 5195. 【NOIP2017提高组模拟7.3】A

    5195. [NOIP2017提高组模拟7.3]A Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto Pro ...

  9. 笔记-python-tutorial-5.data structure

    笔记-python-tutorial-5.data structure 1.      data structure 1.1.    list operation list.append(x) #尾部 ...

  10. 笔记-python-build-in-types

    笔记-python-build-in-types 注:文档内容来源为Python 3.6.5 documentation 1.      built-in types 1.1.    真值测试 所有对 ...