linux下 lvm 磁盘扩容
打算给系统装一个oracle,发现磁盘空间不足。在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区。为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这样做。
参于LVM基本介绍与常用命令请参考:http://www.cnblogs.com/jackruicao/p/6258812.html

LVM结构图
扩容之前的磁盘状况
[root@localhost ~]# df -h
文件系统 容量 已用 可用已用%%挂载点
/dev/mapper/VolGroup-lv_root 5.3G 2.5G 2.6G 50% /
tmpfs 538M 0 538M 0% /dev/shm
/dev/sda1 485M 30M 430M 7% /boot
[root@localhost ~]# fdisk -l
Disk /dev/sda: 8589 MB, 8589934592 bytes
...............
Device Boot Start End Blocks Id System
/dev/sda1 * 1 64 512000 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 64 1045 7875584 8e Linux LVM
Disk /dev/mapper/VolGroup-lv_root: 5779 MB, 5779750912 bytes
........
Disk /dev/mapper/VolGroup-lv_swap: 2281 MB, 2281701376 bytes
.........
此次扩容的方案为:
1、加1个5G的空间给/
2、加1个10G的空间给/oracle
(一) 在VM中加一个15G的磁盘

重启后#fdisk –l可以看到新的磁盘已经认出来了。
Disk /dev/sdb: 16.1 GB, 16106127360 bytes
............................
Disk /dev/sdb doesn't contain a valid partition table
(二)创建物理卷(PV)
#pvcreate /dev/sdb
查看系统PV的情况:
[root@localhost ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda2 //原有硬盘上的PV
VG Name VolGroup
PV Size 7.51 GiB / not usable 3.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 1922
Free PE 0
Allocated PE 1922
PV UUID SGH1dY-4tp2-Nr1a-w93Z-V4LA-pQBh-VGzzTH
"/dev/sdb" is a new physical volume of "15.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdb
VG Name //新建的PV的VG name是空的,下一步就是把PV加入VG
PV Size 15.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID 8TZUlz-YyUp-RBvf-lSzm-7MgG-DSZS-qNqX1Z
查看原VG的情况
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name VolGroup //注意记录此名字,扩容时将新的pv加入指定的名字
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 7.51 GiB
PE Size 4.00 MiB
Total PE 1922
AllocPE / Size 1922 / 7.51 GiB
Free PE / Size 0 / 0
VG UUID FnUsmX-s284-GeRK-hJNJ-BbIG-Vpe7-OuFZE1
(三)#扩展卷组,将/dev/sdb物理卷添加到VolGroup卷组中
[root@localhost ~]# vgextend VolGroup /dev/sdb
Volume group "VolGroup" successfully extended
再查看VG情况,可以看到VG大小变化,空余空间。
[root@localhost ~]# vgdisplay
--- Volume group ---
VG Name VolGroup
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 22.50 GiB
PE Size 4.00 MiB
Total PE 5761
AllocPE / Size 1922 / 7.51 GiB
Free PE / Size 3839 / 15.00 GiB
VG UUID FnUsmX-s284-GeRK-hJNJ-BbIG-Vpe7-OuFZE1
(四)将新的VG空间划入LV(扩容lv_root)
#直接扩展5G给/root分区,不用umount,也不需要重启
# lvextend -L +5G /dev/mapper/VolGroup-lv_root
Extending logical volume lv_root to 10.38 GiB
Logical volume lv_root successfully resized
也可以使用命令
# lvextend -l +30%FREE /dev/mapper/VolGroup-lv_root
此时,如果有df命令查看的话,会发现root空间并没有增加的.还需要执行以下两步操作才可以.
#检查/root逻辑卷
#e2fsck -f /dev/mapper/VolGroup-lv_root
#重新定义分区大小
#resize2fs /dev/mapper/VolGroup-lv_root

查看/目录大小

可以看到/目录已经从原来的5.3G扩容到了11G。
(五)LV卷空间分配(新增lv_oracle)
在VG中还有新增的10G没有用,可以将VG中的空余空间划分为LV,并将新的LV挂载在目录下。
# vgs
VG #PV #LV #SN Attr VSize VFree
VolGroup 2 2 0 wz--n- 22.50g10.00g
//可以通过#vgs命令查看vg信息统计,可以看到VFree还有10G。
将VG空余的空间化分为LV
#lvcreate -L 10G -n lv_oracle VolGroup

图四
//少了一点点空间…
//可以用-l 分,它是按pv块数来分的。一个pv默认是4M,可是从vgdisplay中去查vg中还剩多少pv以及总数是多少。

图五
//查到剩余2559个PE,于是执行
# lvcreate -l 2559 -n lv_oracle VolGroup
Logical volume "lv_oracle" created
提示创建成功后,用vgs和lvs命令分别查看。

图六
(五)挂载LV到目录下
接下来就是要把lv_oracle挂到/oracle,目录下
#cd /
#mkdir oracle
#chmod 777 /oracle
创建/oracle目录并修改权限
# vi /etc/fstab
可以看到目前挂载分区的情况

图七
//我们可以参照/的分区把oracle的加上去。加入这行:
/dev/mapper/VolGroup-lv_oracle /oracle ext4 defaults 0 0
然后把lv_oracle格式化成ext4
#mkfs.ext4 /dev/mapper/VolGroup-lv_oracle

图八
将lv_oracle mount到目录/oracle上
# mount /dev/mapper/VolGroup-lv_oracle /oracle之后查看一下分区情况

图九
可以重启系统检查一下是否正常。

图十
#df –h
挂载正常,可以收工了。
linux下 lvm 磁盘扩容的更多相关文章
- CentOS 下lvm 磁盘扩容
打算给系统装一个oracle,发现磁盘空间不足.在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区.为了保证系统后期的可用性,建议所有新系统安装都采用LVM,之后生产上的设备我也打算这 ...
- Linux下lvm在线扩容步骤
转 :https://jingyan.baidu.com/article/25648fc18f22b29191fd0011.html 图片看不清可以看原文 LVM是逻辑盘卷管理(Logical Vol ...
- 【转载】CentOS LVM磁盘扩容
转自:http://blog.sina.com.cn/s/blog_8882a6260101cpfs.html EXSI5.1主机有一个linux虚拟机,系统是centos运行httpd服务,因为是多 ...
- Linux下的磁盘分割和文件系统
一.各硬件装置在Linux下的文件名 1.IDE硬盘机 在Linux内的文件名: /dev/hd[a-d] (a-d 刚好是四个这个是有原因的具体如下) 解释:以 IDE 接口来说,由于一个 IDE ...
- linux下测试磁盘的读写IO速度-简易方法
linux下测试磁盘的读写IO速度-简易方法 参考资料:https://blog.csdn.net/zqtsx/article/details/25487185 一:使用hdparm命令 这是一个是用 ...
- Linux下查看磁盘挂载的几种方法
Linux下查看磁盘挂载的几种方法 第一种方法:df命令 # df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtm ...
- Linux下查看磁盘挂载的三种方法
Linux下查看磁盘挂载的三种方法 2009-06-05 23:17 好久没有更新日志了,呵呵.不是没有要写的东东.实在抽不出时间来写,要准备公司的考试呢,C++考试.已经有七个月没有写C++代码了, ...
- Linux:lvm磁盘分区,动态扩容
一.lvm磁盘分区: 1,查看新增的磁盘,需要使用root权限 fdisk -l 看到有一个新增的100G磁盘 2,对磁盘进行分区 fdisk /dev/xvdb 1,输入:n 表示创建一个新的分区( ...
- lvm 磁盘扩容
LVM磁盘管理 一.LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现.LVM将一个或多个硬盘 ...
随机推荐
- ASP.NET Aries 入门开发教程9:业务表单的开发
前言: 经过前面那么多篇的列表的介绍,终于到了大伙期待的表单开发了. 也是本系列的最后一篇文章了! 1:表单页面的权限设置与继承 对于表单页面,权限的设置有两种: 1:你可以选择添加菜单(设置为不显示 ...
- 我为NET狂官方面试题-数据库篇答案
题目:http://www.cnblogs.com/dunitian/p/6028838.html 汇总:http://www.cnblogs.com/dunitian/p/5977425.html ...
- Python的单元测试(一)
title: Python的单元测试(一) author: 青南 date: 2015-02-27 22:50:47 categories: Python tags: [Python,单元测试] -- ...
- ASP.NET Core 中文文档 第四章 MVC(4.6)Areas(区域)
原文:Areas 作者:Dhananjay Kumar 和 Rick Anderson 翻译:耿晓亮(Blue) 校对:许登洋(Seay) Areas 是 ASP.NET MVC 用来将相关功能组织成 ...
- Asp.Net Core + Dapper + Repository 模式 + TDD 学习笔记
0x00 前言 之前一直使用的是 EF ,做了一个简单的小项目后发现 EF 的表现并不是很好,就比如联表查询,因为现在的 EF Core 也没有啥好用的分析工具,所以也不知道该怎么写 Linq 生成出 ...
- 装饰者模式 Decoration
1.什么是装饰者模式 动态给对象增加功能,从一个对象的外部来给对象添加功能,相当于改变了对象的外观,比用继承的方式更加的灵活.当使用装饰后,从外部系统的角度看,就不再是原来的那个对象了,而是使用一系列 ...
- 【SAP业务模式】之ICS(一):业务详述
PS:本专题系列讲述如何在SAP系统中实现ICS的业务模式,本系列博文系原创,如要转载引用,请保持原文一致并注明出处! SAP系统自身功能非常强大,支持多种业务模式,通过前台后台的配置就可以实现多种效 ...
- Android开发学习——画横线竖线
画横线/竖线 竖线 <View android:layout_width="1dp" android:layout_height="match_parent&quo ...
- Configure a bridge interface over a VLAN tagged bonded interface
SOLUTION VERIFIED February 5 2014 KB340153 Environment Red Hat Enterprise Linux 6 (All Versions) Red ...
- chattr用法
[root@localhost tmp]# umask 0022 一.chattr用法 1.创建空文件attrtest,然后删除,提示无法删除,因为有隐藏文件 [root@localhost tmp] ...