centos7中使用LVM管理磁盘和挂载磁盘
centos7使用LVM管理一块新的磁盘
注意!文中凡是带#的都是命令标志。
一些重要概念:
LV(Logical Volume)- 逻辑卷,
VG(Volumne Group)- 卷组,
PV(Physical Volume)- 物理卷,
的关系图

PE(Physical Extent)- 物理块
LVM 默认使用4MB的PE区块,而LVM的LV最多仅能含有65534个PE (lvm1 的格式),因此默认的LVM的LV最大容量为4M*65534/(1024M/G)=256G。PE是整个LVM 最小的储存区块,也就是说,其实我们的资料都是由写入PE 来处理的。简单的说,这个PE 就有点像文件系统里面的block 大小。所以调整PE 会影响到LVM 的最大容量!p在 CentOS 6.x 以后,由于直接使用 lvm2 的各项格式功能,因此这个限制已经不存在了。
简单指令:
1. pv相关:pvdisplay、pvs、pvscan,pvcreate
2. vg相关:vgdisplay、vgs、vgscan,vgcreate
3. lv相关:lvdisplay、lvs、lvscan,lvcreate
# fdisk -l 查看磁盘信息

/dev/sdb是我们需要管理的新的磁盘。
虚拟机中可以通过设置来添加新的磁盘,添加后重启后使用# fdisk -l 就会看到有一块新的磁盘。
1、创建系统分区
选择/dev/sdb创建分区;
将整个sdb磁盘划分为一个sdb1分区,格式为Linux LVM;
# fdisk /dev/sdb
进入磁盘后然后按照如下操作为磁盘划分分区:
|
Command (m for help): n (创建新分区) Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p (选择创建主分区,e是扩展分区) Partition number (1-4, default 1): 1 (分区号选择1) First sector (2048-31457279, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-31457279, default 31457279): Using default value 31457279 Partition 1 of type Linux and of size 15 GiB is set Command (m for help): p (查看已经创建的分区) Disk /dev/sdb: 16.1 GB, 16106127360 bytes, 31457280 sectors Device Boot Start End Blocks Id System /dev/sdb1 2048 31457279 15727616 83 Linux (系统默认为83,即:Linux) Command (m for help): t (修改分区格式) Selected partition 1 Hex code (type L to list all codes): 8e (8e为Linux LVM格式) Changed type of partition 'Linux' to 'Linux LVM' Command (m for help): p (查看已经创建的分区) Disk /dev/sdb: 16.1 GB, 16106127360 bytes, 31457280 sectors Device Boot Start End Blocks Id System /dev/sdb1 2048 31457279 15727616 8e Linux LVM Command (m for help): w (保存) |
2、创建PV
# pvcreate /dev/sdb1 (创建PV根据磁盘的分区)
# pvdisplay (查看所有的pv详情)
# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb1 lvm2 --- 10.00g 10.00g
# pvscan
PV /dev/sdb1 lvm2 [10.00 GiB]
3、创建VG
(1)根据某个或几个PV创建VG
# vgcreate vg_01 /dev/sdb1 -s 64M(指定PE大小,可以不指定)
# vgcreate vg_01 /dev/sdb1 /dev/sdb1
(2)根据某个磁盘创建VG
# vgcreate vg_01 /dev/sdb1 /dev/sdb
(3)重命名VG
# vgrename 旧名 新名
4、创建LV-->格式化LV-->挂载LV
(1)根据VG创建LV,从VG中取出8g
# lvcreate -L 8G -n lv_01 vg_01
(2) 根据VG创建LV,从VG中取出全部free部分
# lvcreate -l 100%FREE -n lv_01 vg_01
(3)使用xfs文件系统对LV进行格式化
# mkfs.xfs /dev/vg_01/lv_01
(4)挂载
# mkdir /sinotrans-cms
# mount /dev/vg_01/lv_01 /sinotrans-cms
# df -Th
开机自动挂载,编辑vim /etc/fstab,在最后加入以下内容
|
/dev/vg_01/lv_01 /sinotrans-cms xfs defaults 0 0 |

|
第一列:要挂载的磁盘 第二列:挂载点 第三列:文件类型 第四列:挂载选项,详细参考man mount. 下面列出一些常用的选项: auto: 系统自动挂载,fstab默认就是这个选项 ro: read-only rw: read-write defaults: rw, suid, dev, exec, auto, nouser, and async. 第五列:为dump选项,设置是否让备份程序dump备份文件系统,0为忽略,1为备份。 第六列:为fsck选项,告诉fsck程序以什么顺序检查文件系统,0为忽略。 |
5、VG扩容
首先需要有空闲的PV、空闲的磁盘或空闲的分区
(1)创建PV
(2)扩容VG
# vgextend vg_01 磁盘/PV
# vgextend vg_01 /dev/sdc1 (PV方式)
# vgextend vg_01 /dev/sdc (磁盘方式)
6、LV扩容
# lvextend -L +3G /dev/vg_01/lv_01
使用vgs和lvs查看会看到vg_01的free减少了3g,lv_01增加了3g
# resize2fs /dev/vg_01/lv_01
执行此命令后目录容量才会改变

centos7中使用LVM管理磁盘和挂载磁盘的更多相关文章
- Ubuntu 开机自动挂载磁盘
Ubuntu 磁盘挂载 1.使用命令查看分区 sudo fdisk -l 1 可以根据上图提供的磁盘信息确定想挂载的磁盘,以及确定挂载的位置. 我此次的目的是将/dev/sda2 磁盘挂载到/mnt/ ...
- Centos7中磁盘管理及扩展
前提要求: 虚拟机:centos7 虚拟机软件:VMware Workstation 12 在安装Centos系统时,磁盘选择为LVM逻辑卷.当选择为LVM后才能创建逻辑卷等(必须) 数据格式选择的是 ...
- Linux权限及归属管理 磁盘管理 文件系统 LVM管理
第五六七章 alias 查看系统别名 67 chmod 设置文件或目录的权限 -R表示以递归的方式设置目录及目录下的所有子目录及文件的权限 u:属主 g:属组 o:其他人 a:所有人 +:添加 ...
- Centos7 LVM管理的逻辑卷根目录扩容和/var目录扩容
Centos7 LVM管理的逻辑卷根目录扩容 fdisk /dev/sdb #对新加磁盘进行分区操作pvcreate /dev/sdb1 #创建一个物理卷vgs #查看现有的卷组vgextend ce ...
- linux 挂载磁盘LVM
最近又有个坑逼任务: 在客户给的三台虚拟机上在安装集群环境,,虚拟机没挂载磁盘 要配置成LV卷:大致理解逻辑之后理解为:LV卷后续方便做扩容 理论参考:https://www.cnblogs.com/ ...
- #学习笔记:CentOS7学习之十三(2):磁盘介绍与管理
1.磁盘分区工具与挂载 1.1 硬盘分区符认识: MBR概述:全称为Master Boot Record,即硬盘的主引导记录. 硬盘的0柱面.0磁头.1扇区称为主引导扇区(也叫主引导记录MBR).它由 ...
- LVM实现将2块磁盘总空间“合二为一”并挂载到同一目录
需求场景 将MySQL主机的2块18T的数据盘空间全部"合并"后挂载到/mysql_data目录下,要求文件系统格式化为xfs:已有关键信息梳理如下: 需要挂载的数据盘 /dev/ ...
- CentOS 7 增加磁盘分区挂载(lvm)
1.查看主机现有磁盘情况 # fdisk -l 现在主机中存在一块8G的磁盘sdb,尚未分区挂载,所以需将磁盘进行分区挂载. 2.对磁盘进行分区 # fdisk /dev/sdb (选择要操作分区 ...
- 03、磁盘管理+swap分区创建+磁盘配额+自动挂载
磁盘管理 分区标识 一般用4位标识,前两位,磁盘类型,第3位,磁盘编号,第4位,分区编号 如: /dev/sda1 sd 磁盘类型 a 磁盘编号 1 分区编号 [root@s1 ...
随机推荐
- PHP Redis锁
一.什么是 Redis Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库 二.什么是 Redis 分布式锁 分布式锁其实可以理解为:控 ...
- 在HEXO主题中添加数学公式支持
在markdown中书写数学符号的方式参考Latex常用数学符号 Mathjax 安装 npm uninstall hexo-renderer-marked --save npm install he ...
- postman将上一个请求的结果作为下一个请求的数据
需要在Tests中写入如下代码: var jsonData = JSON.parse(responseBody); postman.setGlobalVariable("token" ...
- 存储过程 jdbc
package com.itheima.procedure; import java.sql.CallableStatement; import java.sql.Connection; import ...
- Kotlin容器
1. 容器 可变/不可变 List<out T> 只读list; MutableList<T>; Set<out T>/MutableSet<T> Ma ...
- SQL Server收缩数据库
USE[master]GOALTER DATABASE CCPG_SFY SET RECOVERY SIMPLE WITH NO_WAITGOALTER DATABASE CCPG_SFY SET R ...
- JavaSE之Java基础(3)
11.什么是值传递和引用传递? 值传递:方法调用时,实际参数把它的值传递给对应的形式参数,方法执行中形式参数值的改变不影响实际参数的值. 引用传递:也称为传地址.方法调用时,实际参数的引用被传递给方法 ...
- Laravel事件监听器listener与事件订阅者Subscriber的区别
其实就一句话: Each event can have multiple listeners, but a listener can't listen to more than a single ev ...
- javascript中call()、apply()、bind()的用法理解
一.bind的用法 第一个:obj.showInfo('arg','arg_18');中传的2个参数通过showInfo方法改变的是obj下中的name和age 第二个:obj.showInfo.bi ...
- bootstrap标签tab切换
<ul class="nav nav-tabs" id="myTab"> <li class="active">&l ...