[linux] LVM磁盘管理(针对xfs和ext4不同文件系统)
简单来说就是:
PV:是物理的磁盘分区
VG:LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库或者是几个大的硬盘
LV:也就是从VG中划分的逻辑分区
如下图所示PV、VG、LV三者关系:
-----------------------------------------------------------------------
特别注意的是:
resize2fs命令 针对的是ext2、ext3、ext4文件系统
xfs_growfs命令 针对的是xfs文件系统
-----------------------------------------------------------------------
一、LVM在线扩容
0.查看/home大小为96G
[root@PT233v184 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl-root 50G 1.7G 49G 4% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 12K 3.9G 1% /dev/shm
tmpfs 3.9G 8.4M 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vda1 1014M 139M 876M 14% /boot
/dev/mapper/cl-home 96G 32G 64G 34% /home
tmpfs 783M 0 783M 0% /run/user/1000
1.假设新增的磁盘为/dev/vdb,对磁盘分区。这一步不分区也可行,后文另有说明。
[root@PT233v184 ~]# fdisk /dev/vdb
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. Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x304ff336. Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-629145599, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-629145599, default 629145599):
Using default value 629145599
Partition 1 of type Linux and of size 300 GiB is set Command (m for help): t
Selected partition 1
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.
Syncing disks.
2.创建PV
[root@PT233v184 ~]# pvcreate /dev/vdb1
Physical volume "/dev/vdb1" successfully created
3.加入VG,lvdisplay查看已存在的"VG Name",cl
[root@PT233v184 ~]# vgdisplay
--- Volume group ---
VG Name cl
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 149.00 GiB
PE Size 4.00 MiB
Total PE 38143
Alloc PE / Size 38142 / 148.99 GiB
Free PE / Size 1 / 4.00 MiB
VG UUID dGSxPy-2MJ2-TgiB-n3f8-tRCb-NAco-ZCcoSo [root@PT233v184 ~]# vgextend cl /dev/vdb1
Volume group "cl" successfully extended
4.扩容LV分区,lvdisplay查看要扩容的"LV Path",/dev/cl/home
[root@PT233v184 ~]# lvdisplay
--- Logical volume ---
LV Path /dev/cl/swap
LV Name swap
VG Name cl
LV UUID NCfBQB-hUSM-ISL0-GUL0-KNru-2qsC-qqoBuE
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2017-10-13 09:24:40 +0800
LV Status available
# open 2
LV Size 3.88 GiB
Current LE 992
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:1 --- Logical volume ---
LV Path /dev/cl/home
LV Name home
VG Name cl
LV UUID KUyFmw-TeAX-EcBd-fOX3-vJ00-ceCQ-tHcL4I
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2017-10-13 09:24:40 +0800
LV Status available
# open 1
LV Size 95.12 GiB
Current LE 24350
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2 --- Logical volume ---
LV Path /dev/cl/root
LV Name root
VG Name cl
LV UUID 7u7ZgM-Zn2l-n2ET-y3Ec-EFHx-bzyP-sNVsJK
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2017-10-13 09:24:41 +0800
LV Status available
# open 1
LV Size 50.00 GiB
Current LE 12800
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0 #vgdisplay查看可用空间"Free PE / Size",76800
[root@PT233v184 ~]# vgdisplay
--- Volume group ---
VG Name cl
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 2
Act PV 2
VG Size 448.99 GiB
PE Size 4.00 MiB
Total PE 114942
Alloc PE / Size 38142 / 148.99 GiB
Free PE / Size 76800 / 300.00 GiB
VG UUID dGSxPy-2MJ2-TgiB-n3f8-tRCb-NAco-ZCcoSo [root@PT233v184 ~]# lvextend -l +76800 /dev/cl/home
Size of logical volume cl/home changed from 95.12 GiB (24350 extents) to 395.12 GiB (101150 extents).
Logical volume cl/home successfully resized.
4.a.多种lvextend扩容参数
lvextend -L 390G /dev/cl/home #增大至390G
lvextend -L +300G /dev/cl/home #增加300G
lvextend -l 100126 /dev/cl/home #增加至100126个PE
lvextend -l +76800 /dev/cl/home #增加76800个PE
lvextend -l +100%FREE /dev/cl/home #剩余的空间全部增加给LV
5.执行重设大小
ext2/ext3/ext4文件系统的调整命令是resize2fs
resize2fs /dev/cl/home
xfs文件系统的调整命令是xfs_growfs
xfs_growfs /dev/cl/home
[root@PT233v184 ~]# xfs_growfs /dev/cl/home
meta-data=/dev/mapper/cl-home isize=512 agcount=4, agsize=6233600 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=24934400, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=12175, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 24934400 to 103577600
6.再次查看/home大小
[root@PT233v184 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl-root 50G 1.7G 49G 4% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 12K 3.9G 1% /dev/shm
tmpfs 3.9G 8.4M 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
/dev/vda1 1014M 139M 876M 14% /boot
/dev/mapper/cl-home 396G 34G 362G 9% /home
tmpfs 783M 0 783M 0% /run/user/1000
二、LVM初次增加
#磁盘分区
无论新挂载点或者现有挂载点在线扩容,不需要分区,直接pvcreate走起,我也不知道磁盘分区的目的是什么了,可能是不想把整块磁盘的空间全部扩容给lv吧。 # 创建PV、VG、LV
pvcreate /dev/vdb
vgcreate vg_data /dev/vdb
lvcreate -l 25599 -n lv_data vg_data
lvcreate -l +100%FREE -n lv_data vg_data # 格式化磁盘
mkfs.xfs /dev/vg_data/lv_data # 修改/etc/fstab,挂载磁盘
echo "/dev/vg_data/lv_data /data xfs defaults 0 0" >> /etc/fstab
mkdir -p /data
mount -a
df -h
三、LVM减小磁盘
[linux] LVM磁盘管理(针对xfs和ext4不同文件系统)的更多相关文章
- Linux下对lvm逻辑卷分区大小的调整(针对xfs和ext4不同文件系统)
当我们在安装系统的时候,由于没有合理分配分区空间,在后续维护过程中,发现有些分区空间不够使用,而有的分区空间却有很多剩余空间.如果这些分区在装系统的时候使用了lvm(前提是这些分区要是lvm逻辑卷分区 ...
- 1.4 Linux下对lvm逻辑卷分区大小的调整(针对xfs和ext4不同文件系统)
当我们在安装系统的时候,由于没有合理分配分区空间,在后续维护过程中,发现有些分区空间不够使用,而有的分区空间却有很多剩余空间.如果这些分区在装系统的时候使用了lvm(前提是这些分区要是lvm逻辑卷 ...
- linux LVM 磁盘管理
一.linux LVM 管理及创建步骤 步骤:1.创建pv—2.创建vg—3.将pv加入vg—4.在vg中创建lv—5.将lv分区格式化—6.将lv分区挂载到某个目录使用 1.创建PV [root@z ...
- Linux LVM磁盘管理
几个概念: PV:物理卷,指LVM的基本逻辑卷,包含LVM的基本参数,如/dev/sdb1等. VG:卷组,类似于非LVM的硬盘,由多个PV组成. LV:逻辑卷,类似于非LVM硬盘中的分区. PE:物 ...
- centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课
centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...
- Linux LVM硬盘管理及LVM扩容
LVM磁盘管理 一.LVM简介... 1 二. LVM基本术语... 2 三. 安装LVM... 3 四. 创建和管理LVM... 4 2. 创建PV.. 6 3. 创建VG.. 7 4. 创建LV. ...
- linux 系统磁盘管理体系
目录 linux 系统磁盘管理体系 一.磁盘的基本概念 二.磁盘的内部结构 三.磁盘的外部结构 四.磁盘的接口及类型 五.fdisk磁盘分区实践 六.gdisk 分区 七.parted 高级分区工具. ...
- LVM磁盘管理
http://www.cnblogs.com/gaojun/archive/2012/08/22/2650229.html Linux LVM硬盘管理及LVM扩容 LVM磁盘管理 一.LVM简介... ...
- [转载]Linux LVM硬盘管理及LVM扩容
最近项目中一直在用Linux,其中涉及到了Linux的LVM,本来想自己写一篇关于LVM的文章,搜了一下,发现了一篇更好的,转载过来,也感谢作者gaojun 原文Linux LVM硬盘管理及LVM扩容 ...
随机推荐
- 添加打印功能 iOS
app直接调取系统的打印功能 https://blog.csdn.net/wsyx768/article/details/79098885
- PAT乙级1006
1006 换个格式输出整数 (15 分) 让我们用字母 B 来表示“百”.字母 S 表示“十”,用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正 ...
- 【MongoDB】MongoDB与项目搭配启动进程
项目启动/数据连接命令 (20180701成功且不用再找正确关闭mongoDB的方式) 如上图在mongoDB的bin目录的同级新建mongo.config.mongostart.bat.mongo ...
- Nginx与浏览器缓存
Nginx与浏览器缓存 一.浏览器对缓存的处理:Internet选项 ★ 控制请求服务器策略:是忽略资源的缓存策略的情况下额外强制请求服务器的意思. ★ 检查存储的页面较新版本 1.每次访问网页时 ...
- #leetcode刷题之路50-Pow(x, n)
实现 pow(x, n) ,即计算 x 的 n 次幂函数.示例 1:输入: 2.00000, 10输出: 1024.00000示例 2:输入: 2.10000, 3输出: 9.26100 #inclu ...
- 追溯了解Ubuntu(壹)
1.关于Ubuntu 安装完成后界面展示 Ubuntu 是一个南非的民族观念,着眼于人们之间的忠诚和联系.该词来自于祖鲁语和科萨语.Ubuntu(发音"oo-BOON-too"-- ...
- redis持久化机制之AOF与RDB
什么是redis Redis是一种面向“key-value”类型数据的分布式NoSQL数据库系统,具有高性能.持久存储.适应高并发应用场景等优势.它虽然起步较晚,但发展却十分迅速. redis为何需要 ...
- PHP DES加解密
test.php测试文件 <?php require_once('Des.php'); $des = new Des(); $data['a'] = 'a'; $data['b'] = 'b'; ...
- 01.创建winserver2012r2+hyper-v+centos7
1.背景 DELL poweredge T320,装的winserver2012 r2,利用自带的hyper-v安装centos7,后期主要用于spark开发. 1.1 安装winserver2012 ...
- JavaWeb总结(八)
对象作用域 在Servlet里可以用一个名字绑定一个对象,并且在应用中传递和使用这个对象 作用域对象 属性操作方法 作用域范围说明 ServletContext(上下文) void setAttrib ...