文档章节

LVM磁盘管理

leolan
 leolan
发布于 2016/10/24 23:03
字数 1682
阅读 2
收藏 0
动态扩容
LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。首先我们讨论以下几个LVM术语:
物理存储介质(The physical media):这里指系统的存储设备:硬盘,如:/dev/hda1、/dev/sda等等,是存储系统最低层的存储单元。
物理卷(physical volume):物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。
卷组(Volume Group):LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。
逻辑卷(logical volume):LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上可以建立文件系统(比如/home或者/usr等)。
PE(physical extent):每一个物理卷被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。
LE(logical extent):逻辑卷也被划分为被称为LE(Logical Extents) 的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。
简单来说就是:
PV:是物理的磁盘分区
VG:LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库或者是几个大的硬盘。
LV:也就是从VG中划分的逻辑分区
如下图所示PV、VG、LV三者关系:




扩容原理:用新磁盘创建PV,然后合并到现有的VG中,然后再扩容某个LV。
貌似全程都不用格式化新建分区

安装LVM
首先确定系统中是否安装了lvm工具:
yum install lvm2 apt-get install lvm2

df -h 和 fdisk -l 查看分区情况
开始分区:
fdisk /dev/sdb
n 新建
p 设定为主分区
回车 设定起始扇区
回车 设定结束扇区(直接回车默认用全部空间创建,也可以输入+500M设定为500M)

t 此时输入L能看到所有格式的代码,指定分区格式,8e为LVM
Partition number(1-4):1 指定分区 ,即为之后创建的sdb1-4(主分区只能4个)
8e 设定为LVM
p 查看当前分区情况
w 写入硬盘

partprobe 重读分区表,可能会提示无法只读。。。。不用理会

查看当前PV
pvdisplay 或 pvscan

创建PV(物理卷)
pvcreate /dev/sdb1 使用之前创建的sdb1的全部空间创建PV,不想使用全部空间,之前分区时就要注意了。

查看当前VG(卷组)
vgdisplay 或 vgscan

用/dev/sdb1创建VG并加到已存在的vg_bogon中
vgextend vg_bogon /dev/sdb1 [vg_bogon是本机正在使用的vg_name]

查看当前VG
vgdisplay

发现有9.99G的空间

扩容/分区所在的LV(逻辑卷)
【/dev/vg_bogon/LogVol01为正在使用的/分区】
lvextend -l +100%FREE /dev/vg_bogon/LogVol01 【路径用 /dev/vg_bogon/LogVol01 /dev/mapper/vg_bogon-LogVol01都是可以的 df -h就能查看】
lvextend -L +10G  /dev/vg_bogon/LogVol01 来增加10G空间。

查看当前VG
vgdisplay
已经扩容了,但df -h 显示没有扩容

重设逻辑卷大小,对于当前正在使用的LogVol01有效
resize2fs /dev/vg_bogon/LogVol01

***************************************************************************************************************************************************

缩小其他分区扩容根分区
1.首先查看磁盘使用情况
df -h
文件系统 容量  已用 可用  已用% 挂载点
Filesystem              Size  Used Avail Use% Mounted on  
/dev/mapper/VolGroup-lv_root 154G  7.9G  139G   6% /
tmpfs                  1.9G  100K  1.9G   1% /dev/shm
/dev/sda1              485M   69M  391M  15% /boot
/dev/mapper/VolGroup-lv_home 299G  984M  283G   1% /home
2、卸载/home 【这里缩小home,把扩容/分区】
umount /home
umount /home 如果 提示无法卸载,则是有进程占用/home, 使用如下命令来终止占用进程:
fuser -m /home
3、调整分区大小
resize2fs -p /dev/mapper/VolGroup-lv_home 20G 【此处缩小home分区到20G】
如果提示运行“e2fsck -f /dev/mapper/VolGroup-lv_home”,则执行相关命令: 
[root@localhost ~]# e2fsck -f /dev/mapper/VolGroup-lv_home 然后重新执行命令:
[root@localhost ~]# resize2fs -p /dev/mapper/VolGroup-lv_home 20G
注:resize2fs 为重新设定磁盘大小,只是重新指定一下大小,并不对结果有影响,需要下面lvreduce的配合
4、挂载上/home,查看磁盘使用情况
mount /home
df -h
 此时看/home分区只有20G了。

5、设置空闲空间
使用lvreduce指令用于减少LVM逻辑卷占用的空间大小。可能会删除逻辑卷上已有的数据,所以在操作前必须进行确认。记得输入 “y”
lvreduce -L 20G /dev/mapper/VolGroup-lv_home 【刚才只是把/home多余的空间标记为不使用,这一步开始真正分割lv,把/home的lv分割为刚刚设定的大小,只能比20G大,比20G小,多分割出来的地方数据会丢失(上面已经设定了为20G了)】
注:lvreduce -L 20G的意思为设置当前文件系统为20G,如果lvreduce -l 20G是指从当前文件系统上减少20G 【-L设定为指定大小,-l减小指定大小】
使用lvreduce减小逻辑卷的大小。注意:减小后的大小不能小于文件的大小,否则会丢失数据。 
 
可以使用 vgdisplay 命令等查看一下可以操作的大小。也可以是用 fdisk -l 命令查看详细信息。
[root@localhost ~]#  vgdisplay
注:vgdisplay为显示LVM卷组的元数据信息 此时可以看到有free空间。
  1. 6
6.把闲置空间挂在到根目录下
lvextend -l +100%FREE /dev/mapper/VolGroup-lv_root 【把free空间全部分给/分区】
注:如果使用 lvextend -L +283G 则为在文件系统上增加283G
resize2fs -p /dev/mapper/VolGroup-lv_root 【重设磁盘大小】
  1. 7
7、检查调整结果
df -h
OK扩容完成

***************************************************************************************************************************************************
其他命令:
移除lv逻辑卷:
lvdisplay
lvremove -f /dev/vg_bogon/LogVol02 移除该lv逻辑卷

lv逻辑卷重命名:
lvrename /dev/vg_bogon/LogVol02 /dev/vg_bogon/lv_root

如果无法修改可能是因为激活原因,激活VG就可以修改LV名了
lvchange -an /dev/vg_bogon/LogVol02

VG重命名
vgrename vg_bogon vg_new


若不是用于扩容,只是用来做磁盘存储文件,则要挂载分区,开机自动挂载修改/etc/fastab文件。

如果改名的lv卷是启动分区的话,再修改/etc/grub.conf文件


个人学习笔记,不当之处还请指正。
----------不定期更新------------











本文转载自:http://blog.csdn.net/lan842632/article/details/52843155

共有 人打赏支持
leolan
粉丝 1
博文 43
码字总数 74
作品 0
梅州
私信 提问
Linx卷管理详解 VG LV PV

原创链接:http://blog.csdn.net/wuweilong/article/details/7565530 一. 前言 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,他是磁盘管理的一种工具,就目前基本上所有操作系统均支...

kekeAlice
2017/05/07
0
0
Linux LVM硬盘管理及LVM扩容

LVM磁盘管理 一、LVM简介 二、 LVM基本术语 三、 安装LVM 四、 创建和管理LVM 2、 创建PV 3、 创建VG 4、 创建LV 5、LV格式化及挂载 一、LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)...

yl497103815
07/02
0
0
Linux LVM硬盘管理及LVM扩容

近日一台日志服务器硬盘空间不足,想扩容一下磁盘容量,增加4块磁盘 方法1:做raid0 优点:硬件效率高 ,实施易操作。 缺点:需要重启服务器 方法2: LVM 优点:不需要重启服务器 缺点:操作有...

syomi
2013/11/18
0
0
Linux LVM硬盘管理及LVM扩容

LVM磁盘管理 一、LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写,LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它...

庆沉
2015/07/01
0
0
Linux手动挂载LVM分区

转自:http://www.itwhy.org/2011/08-08/793.html#3 LVM是什么 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之...

小卒过河
2011/08/10
4.4K
1

没有更多内容

加载失败,请刷新页面

加载更多

Netty 备录 (一)

入职新公司不久,修修补补1个月的bug,来了点实战性的技术---基于netty即时通信 还好之前对socket有所使用及了解,入手netty应该不是很难吧,好吧,的确有点难,刚看这玩意的时候,可能都不知道哪里...

_大侠__
昨天
4
0
Django简单介绍和用户访问流程

Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。 Django是一个开放源代码的Web应用框架,由Python写成。 Django遵守BSD版权,初...

枫叶云
昨天
7
0
EOS错误代码及中文释义

本文集汇总了EOS区块链常见错误代码及其含义,完整错误代码集请查看 EOS错误代码集 - 汇智网 EOS错误代码列表如下, <table class="table table-striped"> <thead> <tr><th>错误代码</th><t......

汇智网教程
昨天
2
0
Spring Cloud Stream消费失败后的处理策略(四):重新入队(RabbitMQ)

应用场景 之前我们已经通过《Spring Cloud Stream消费失败后的处理策略(一):自动重试》一文介绍了Spring Cloud Stream默认的消息重试功能。本文将介绍RabbitMQ的binder提供的另外一种重试...

程序猿DD
昨天
4
0
kiss原则

KISS 原则是用户体验的高层境界,简单地理解这句话,就是要把一个产品做得连白痴都会用,因而也被称为“懒人原则”。换句话说来,”简单就是美“。KISS 原则源于 David Mamet(大卫马梅)的电...

NB-One
昨天
14
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部