Linux学习笔记(6)磁盘分区(LVM)
1.逻辑管理技术LVM的概念
1.1 LVM ,逻辑卷管理,以便扩展管理盘符。
PV:物理卷
VG:卷组
LV:逻辑卷
PE(physical Extend):物理扩展(默认4M),就是我们逻辑卷管理的最小单位。
1.2 关系如下:
(1)PV N=>1 VG
(2)VG 1=>N LV
N个PV组成一个VG,PE为VG的最小单位。
用VG为生成LV(这个过程就是分配多少个PE给这个LV),然后再挂载目录到LV,就可以用了,完成了逻辑分区的功能
2.LVM的基本操作
2.1 创建PV、创建VG、创建LV
2.2 格式化LV并且挂载文件系统使用
2.3 在线扩展、缩小文件系统
2.4 删除LV、删除VG、删除PV
3.演示
3.1 演示 创建PV、创建VG、创建LV
(1)查看磁盘情况,选定磁盘作为空间源(我们这里用sdc/sdd/sde来做演示,sdf作为我们的扩容)
fdisk -l |grep "Disk /dev/sd"
(2)创建PV:pvcreate /dev/sdc /dev/sdd /dev/sde
查看PV情况 :pvs 或者 pvdisplay
(3)创建名为mysql的VG:vgcreate mysql /dev/sdc /dev/sdd /dev/sde
并且用vgs和vsdisplay 可以查看
(4)创建名为lvmysql的LV,并分配给其2G空间 :lvcreate -n lvmysql -L 2G mysqlvg
查看
3.2 格式化LV并且挂载文件系统使用
(5)格式化:mkfs.ext4 /dev/mysql/lvmysql
(6)挂载目录.
mkdir /mysql #在根目录下创建mysql目录
mount /dev/mysql/lvmysql /mysql #把刚刚新建的 lvmysql 挂载到 /mysql 目录下
(7)直接映射挂载(修改 /etc/fstab 文件数据,这样下次重启就可以直接用)
验证,能直接挂载目录说明就成功了,如图
3.3 在线扩展、缩小文件系统
(8)在线扩展
扩展VG
把新磁盘加入到pv,然后再吧pv加入到vg(由(1)中可知,我们把 /dev/sdf 加进来)
pvcreate /dev/sdf
vgextend mysql /dev/sdf #mysql为vg名称,后面的/dev/sdf是需要加入vg的磁盘空间
扩展LV
首先看看当前是多大,是2G
然后开始扩展5个G,变成7G
lvextend -L +5G /dev/mysql/lvmysql
然后重新组织分配文件系统
resize2fs /dev/mysql/lvmysql
查验,看我们的 mysql-lvmysql 已经7个G了,挂载在 /mysql 目录
(9)在线缩小
卸载目录=》缩小文件系统=》缩小LV=》把盘符从VG和PV里面解放出来
卸载目录与缩小文件系统
resize2fs /dev/mysql/lvmysql 2G 缩小到2G
缩小LV
lvreduce -L -5G /dev/mysql/lvmysql
验证
把盘符从VG里面解放出来
提2G出来
vgreduce mysql /dev/sdf
把盘符从PV里面解放出来
pvremove /dev/sdf
验证
3.4 删除LV、删除VG、删除PV
步骤:卸载目录=》按顺序 删除LV,删除VG,删除 PV
#参考代码 #创建PV
pvcreate /dev/sdb /dev/sdc #创建VG
vgcreate mysqlvg /dev/sdb
vgcreate bakvg /dev/sdc #创建LV
lvcreate -n mysqllv -L 10G mysqlvg
lvcreate -n datalv -L 20G mysqlvg
lvcreate -n loglv -L 20G mysqlvg
lvcreate -n baklv -L 50G bakvg #格式化
mkfs.ext4 /dev/mysqlvg/mysqllv
mkfs.ext4 /dev/mysqlvg/datalv
mkfs.ext4 /dev/mysqlvg/loglv
mkfs.ext4 /dev/bakvg/baklv #建立目录
mkdir -p /mysql/app
mkdir -p /mysql/data
mkdir -p /mysql/log
mkdir -p /mysql/backup
#挂载
mount /dev/mysqlvg/mysqllv /mysql/app
mount /dev/mysqlvg/datalv /mysql/data
mount /dev/mysqlvg/loglv /mysql/log
mount /dev/bakvg/baklv /mysql/backup
#df -h 查看结果 #修改 /etc/fstab 以便可以重启自动挂载
/dev/mysqlvg/mysqllv /mysql/app ext4 defaults 0 0
/dev/mysqlvg/datalv /mysql/data ext4 defaults 0 0
/dev/mysqlvg/loglv /mysql/log ext4 defaults 0 0
/dev/bakvg/backuplv /mysql/backup ext4 defauls 0 0
#reboot 查看效果
Linux学习笔记(6)磁盘分区(LVM)的更多相关文章
- Linux学习笔记02—磁盘分区
下面介绍四种最常见的分区方式: (1) 最简单的分区方案. SWAP分区:即交换分区,建议大小是物理内存的1-2倍. /分区:建议大小在6GB以上. 使用以上的分区方案,所有的数据都在/分区上, ...
- Linux学习笔记:磁盘分区
本文更新于2019-12-30.操作系统为Debian 8.9 (jessie). 以下假设新磁盘为/dev/sdb,要创建一个分区/dev/sdb1,文件系统类型为xfs.请根据实际情况,自行选择. ...
- Linux学习之路—磁盘分区
1.各硬件设备在Linux中的文件名 在Linux系统中,每个设备都被当做一个文件来对待,同时在Linux系统中,几乎所有的硬件设备文件都在/dev这个目录中. 设备 设备在Linux内的文件名 ID ...
- linux学习笔记之硬盘分区
引用:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/03/2997098.html PS:本文仅对知识点作总结.详情请参考原文. 首先 ...
- Linux学习笔记12—磁盘管理
一.查看磁盘或目录的容量 1. df命令 作用:查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的 参数: -I : 查看inodes使用状况 -h: 使用合适的 ...
- Linux学习笔记之磁盘与文件系统的管理
三.Linux磁盘与文件系统的管理 MBR扇区(512B) 磁盘的分区组成 Boot sector 扇区(用来装引导程序) Super block 记录inode与Block的信息 Inod ...
- Linux学习笔记(4)磁盘分区(fdisk)、挂载与文件系统命令
Linux学习笔记(4)磁盘分区(fdisk).挂载与文件系统命令 1.磁盘分区是怎么表示的? 1.1 对于IDE接口,第一主盘为hda,第1从盘为hdb,第1从盘的第1个分区为hdb1 1.2 对于 ...
- Linux学习笔记(5)磁盘分区(parted)
Linux学习笔记(5)磁盘分区(parted) .演示: ()parted /dev/sdb :进入parted 分区命令(可以使用help来查看命令详细描述)(2)p :列出当前磁盘分区信息,可以 ...
- Linux 学习笔记 1 使用最小的系统,从分区安装系统开始
我们常用的linux系统在安装过程中大多都省略了对系统进行分区的操作,以至于后期,不了解什么是分区以及分区当中最基本的一些概念, 我们不说最细的知识,只求了解这个过程,那直接步入正题,开始第一节的学习 ...
- Linux学习笔记之LVM基本应用,扩展及缩减实现
0x00 LVM概述 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘 ...
随机推荐
- 跟着百度学PHP[17]-PHP扩展CURL的模拟登陆并获取数据
这两天也不知道怎么,学习效率低.很无奈. 如何知道要去URL该怎么填写呢?就是填写表单中的Action内容: tempnam() 函数创建一个具有唯一文件名的临时文件. <?php header ...
- Chrome开发者工具之Network面板
Chrome开发者工具面板 面板上包含了Elements面板.Console面板.Sources面板.Network面板. Timeline面板.Profiles面板.Application面板.Se ...
- 微信小程序,时间戳转为日期格式
//数据转化 function formatNumber(n) { n = n.toString() ] ? n : ' + n } /** * 时间戳转化为年 月 日 时 分 秒 * number: ...
- android打包library
最近在做开发时,遇到一个需求,就是要自定义一个控件,最后需要将其打包成android library库,然后供以后其他需求使用,由于以前很少打包library,所以这次特地学了下怎么打包. 首先先随便 ...
- <!>表格语法
<table aling=left>...</table>表格位置,置左 <table aling=center>...</table>表格位置,置中 ...
- 蓝桥杯 第四届C/C++预赛真题(2) 马虎的算式(穷举)
标题: 马虎的算式 小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了. 有一次,老师出的题目是:36 x 495 = ? 他却给抄成了:396 x 45 = ? 但结果却很戏剧性,他的答案 ...
- WPF验证之——必填验证
要事先必填验证,首先要重写ValidationRule类的Validate方法,然后在Binding中指定对应的ValidationRule. 第一步:重写ValidationRule的Validat ...
- npm中本地安装命令行类型的模块是不注册Path的
http://www.jianshu.com/p/c04dea6e46de 首先有必要解释下什么是命令行(Command Line)类型的模块.npm的模块一共分为三类: 绑定型(Binding):本 ...
- 红黑树C++实现
1 /* 2 * rbtree.h 3 * 1. 每个节点是红色或者黑色 4 * 2. 根节点是黑色 5 * 3. 每个叶子节点是黑色(该叶子节点就空的节点) 6 * 4. 如果一个节点是红色,则它的 ...
- mvc中使用uploadify批量上传的应用
网上找了很多资料都没有发现一个好用.可以用的uploadify批量上传的应用,这里通过官方和自己的一些项目需要整理了一个出来. 希望能帮助到需要的人. 效果图: