[CentOS 7系列]LVM磁盘管理

LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。

与传统的磁盘与分区相比,LVM为计算机提供了更高层次的磁盘存储。它使系统管理员可以更方便的为应用与用户分配存储空间。在LVM管理下的存储卷可以按需要随时改变大小与移除(可能需对文件系统工具进行升级)。LVM也允许按用户组对存储卷进行管理,允许管理员用更直观的名称(如"sales'、 'development')代替物理磁盘名(如'sda'、'sdb')来标识存储卷。


1、创建LVM磁盘

[root@server02~]#fdisk/dev/sdb
欢迎使用fdisk(util-linux2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。


命令(输入m获取帮助):n
Partitiontype:
pprimary(0primary,0extended,4free)
eextended
Select(defaultp):p
分区号(1-4,默认1):
起始扇区(2048-41943039,默认为2048):
将使用默认值2048
Last扇区,+扇区or+size{K,M,G}(2048-41943039,默认为41943039):+1G
分区1已设置为Linux类型,大小设为1GiB

命令(输入m获取帮助):p

磁盘/dev/sdb:21.5GB,21474836480字节,41943040个扇区
Units=扇区of1*512=512bytes
扇区大小(逻辑/物理):512字节/512字节
I/O大小(最小/最佳):512字节/512字节
磁盘标签类型:dos
磁盘标识符:0xa71b8f53

设备BootStartEndBlocksIdSystem
/dev/sdb120482099199104857683Linux

命令(输入m获取帮助):t
已选择分区1
Hex代码(输入L列出所有代码):8e//LVM的分区类型为8e
已将分区“Linux”的类型更改为“LinuxLVM”

命令(输入m获取帮助):p

磁盘/dev/sdb:21.5GB,21474836480字节,41943040个扇区
Units=扇区of1*512=512bytes
扇区大小(逻辑/物理):512字节/512字节
I/O大小(最小/最佳):512字节/512字节
磁盘标签类型:dos
磁盘标识符:0xa71b8f53

设备BootStartEndBlocksIdSystem
/dev/sdb12048209919910485768eLinuxLVM

命令(输入m获取帮助):n
Partitiontype:
pprimary(1primary,3free)
eextended
Select(defaultp):p
分区号(2-4,默认2):
起始扇区(2099200-41943039,默认为2099200):
将使用默认值2099200
Last扇区,G}(2099200-41943039,默认为41943039):+1G
分区2已设置为Linux类型,大小设为1GiB

命令(输入m获取帮助):n
Partitiontype:
pprimary(2primary,2free)
eextended
Select(defaultp):p
分区号(3,4,默认3):
起始扇区(4196352-41943039,默认为4196352):
将使用默认值4196352
Last扇区,G}(4196352-41943039,默认为41943039):+1G
分区3已设置为Linux类型,大小设为1GiB

命令(输入m获取帮助):p

磁盘/dev/sdb:21.5GB,21474836480字节,41943040个扇区
Units=扇区of1*512=512bytes
扇区大小(逻辑/物理):512字节/512字节
I/O大小(最小/最佳):512字节/512字节
磁盘标签类型:dos
磁盘标识符:0xa71b8f53

设备BootStartEndBlocksIdSystem
/dev/sdb12048209919910485768eLinuxLVM
/dev/sdb220992004196351104857683Linux
/dev/sdb341963526293503104857683Linux

命令(输入m获取帮助):t
分区号(1-3,默认3):2
Hex代码(输入L列出所有代码):8e
已将分区“Linux”的类型更改为“LinuxLVM”

命令(输入m获取帮助):t
分区号(1-3,默认3):3
Hex代码(输入L列出所有代码):8e
已将分区“Linux”的类型更改为“LinuxLVM”

命令(输入m获取帮助):p

磁盘/dev/sdb:21.5GB,21474836480字节,41943040个扇区
Units=扇区of1*512=512bytes
扇区大小(逻辑/物理):512字节/512字节
I/O大小(最小/最佳):512字节/512字节
磁盘标签类型:dos
磁盘标识符:0xa71b8f53

设备BootStartEndBlocksIdSystem
/dev/sdb12048209919910485768eLinuxLVM
/dev/sdb22099200419635110485768eLinuxLVM
/dev/sdb34196352629350310485768eLinuxLVM

命令(输入m获取帮助):w
Thepartitiontablehasbeenaltered!

Callingioctl()tore-readpartitiontable.
正在同步磁盘。
[root@server02~]#pvcreate/dev/sdb1//使用pvcreate转换
WARNING:xfssignaturedetectedon/dev/sdb1atoffset0.Wipeit?[y/n]:y
Wipingxfssignatureon/dev/sdb1.
Physicalvolume"/dev/sdb1"successfullycreated.
[root@server02~]#pvcreate/dev/sdb2
WARNING:xfs_external_logsignaturedetectedon/dev/sdb2atoffset18432.Wipeit?[y/n]:y
Wipingxfs_external_logsignatureon/dev/sdb2.
Physicalvolume"/dev/sdb2"successfullycreated.
[root@server02~]#pvcreate/dev/sdb3
WARNING:dossignaturedetectedon/dev/sdb3atoffset510.Wipeit?[y/n]:y
Wipingdossignatureon/dev/sdb3.
Physicalvolume"/dev/sdb3"successfullycreated.
[root@server02~]#fdisk-l/dev/sdb

磁盘/dev/sdb:21.5GB,21474836480字节,41943040个扇区
Units=扇区of1*512=512bytes
扇区大小(逻辑/物理):512字节/512字节
I/O大小(最小/最佳):512字节/512字节
磁盘标签类型:dos
磁盘标识符:0xa71b8f53

设备BootStartEndBlocksIdSystem
/dev/sdb12048209919910485768eLinuxLVM
/dev/sdb22099200419635110485768eLinuxLVM
/dev/sdb34196352629350310485768eLinuxLVM
[root@server02~]#partprobe//使分区表生效
[root@server02~]#ls/dev/sdb1
/dev/sdb1
[root@server02~]#ls/dev/sdb2
/dev/sdb2
[root@server02~]#ls/dev/sdb3
/dev/sdb3
[root@server02~]#pvdisplay//查看已经存在的pv
"/dev/sdb3"isanewphysicalvolumeof"1.00GiB"
---NEWPhysicalvolume---
PVName/dev/sdb3
VGName
PVSize1.00GiB
AllocatableNO
PESize0
TotalPE0
FreePE0
AllocatedPE0
PVUUIDN7T8n5-Gc1a-bdO6-yFJy-PVTF-3HJM-Cy3gFD

"/dev/sdb2"isanewphysicalvolumeof"1.00GiB"
---NEWPhysicalvolume---
PVName/dev/sdb2
VGName
PVSize1.00GiB
AllocatableNO
PESize0
TotalPE0
FreePE0
AllocatedPE0
PVUUID0Y7myL-dyWh-iKbN-G82H-U5je-lsGD-03i7UL

"/dev/sdb1"isanewphysicalvolumeof"1.00GiB"
---NEWPhysicalvolume---
PVName/dev/sdb1
VGName
PVSize1.00GiB
AllocatableNO
PESize0
TotalPE0
FreePE0
AllocatedPE0
PVUUIDuWSpFE-KDDS-99nq-5jlc-NBAv-1JBi-PZgxC0

[root@server02~]#pvs
PVVGFmtAttrPSizePFree
/dev/sdb1lvm2---1.00g1.00g
/dev/sdb2lvm2---1.00g1.00g
/dev/sdb3lvm2---1.00g1.00g
[root@server02~]#vgcreatevg1/dev/sdb1/dev/sdb2//创建VG,同一VG下的一组PV构成一个VG
Volumegroup"vg1"successfullycreated
[root@server02~]#vgs
VG#PV#LV#SNAttrVSizeVFree
vg1200wz--n-1.99g1.99g
[root@server02~]#lvcreate-L100M-nlv1vg1
Logicalvolume"lv1"created.
[root@server02~]#mkfs.ext4/dev/vg1/lv1
mke2fs1.42.9(28-Dec-2013)
文件系统标签=
OStype:Linux
块大小=1024(log=0)
分块大小=1024(log=0)
Stride=0blocks,Stripewidth=0blocks
25688inodes,102400blocks
5120blocks(5.00%)reservedforthesuperuser
第一个数据块=1
Maximumfilesystemblocks=33685504
13blockgroups
8192blockspergroup,8192fragmentspergroup
1976inodespergroup
Superblockbackupsstoredonblocks:
8193,24577,40961,57345,73729

Allocatinggrouptables:完成
正在写入inode表:完成
Creatingjournal(4096blocks):完成
Writingsuperblocksandfilesystemaccountinginformation:完成
[root@server02~]#mount/dev/vg1/lv1/mnt/
[root@server02~]#mkdir/mnt/123
[root@server02~]#touch/mnt/1.txt
[root@server02~]#echo"1234">/mnt/1.txt
[root@server02~]#df-h
文件系统容量已用可用已用%挂载点
/dev/sda328G1.1G27G4%/
devtmpfs483M0483M0%/dev
tmpfs493M0493M0%/dev/shm
tmpfs493M6.8M486M2%/run
tmpfs493M0493M0%/sys/fs/cgroup
/dev/sda1197M109M88M56%/boot
tmpfs99M099M0%/run/user/0
/dev/mapper/vg1-lv193M1.6M85M2%/mnt
[root@server02~]#cat/mnt/1.txt
1234


2、磁盘扩容

[root@server02~]#umount/mnt/
[root@server02~]#lvresize-L300M/dev/vg1/lv1
Sizeoflogicalvolumevg1/lv1changedfrom100.00MiB(25extents)to300.00MiB(75extents).
Logicalvolumevg1/lv1successfullyresized.
[root@server02~]#e2fsck-f/dev/vg1/lv1
e2fsck1.42.9(28-Dec-2013)
第一步:检查inode,块,和大小
第二步:检查目录结构
第3步:检查目录连接性
Pass4:Checkingreferencecounts
第5步:检查簇概要信息
/dev/vg1/lv1:13/25688files(7.7%non-contiguous),8899/102400blocks
[root@server02~]#mount/dev/vg1/lv1/mnt/
[root@server02~]#resize2fs/dev/vg1/lv1
resize2fs1.42.9(28-Dec-2013)
Filesystemat/dev/vg1/lv1ismountedon/mnt;on-lineresizingrequired
old_desc_blocks=1,new_desc_blocks=3
Thefilesystemon/dev/vg1/lv1isnow307200blockslong.

[root@server02~]#df-h
文件系统容量已用可用已用%挂载点
/dev/sda328G1.1G27G4%/
devtmpfs483M0483M0%/dev
tmpfs493M0493M0%/dev/shm
tmpfs493M6.8M486M2%/run
tmpfs493M0493M0%/sys/fs/cgroup
/dev/sda1197M109M88M56%/boot
tmpfs99M099M0%/run/user/0
/dev/mapper/vg1-lv1287M2.1M270M1%/mnt

如果是xfs格式时,不需要卸载,但需要执行xfs_growfs /dev/vg1/lv1命令。


3、磁盘缩减

[root@server02~]#umount/mnt/
[root@server02~]#e2fsck-f/dev/vg1/lv1
e2fsck1.42.9(28-Dec-2013)
第一步:检查inode,和大小
第二步:检查目录结构
第3步:检查目录连接性
Pass4:Checkingreferencecounts
第5步:检查簇概要信息
/dev/vg1/lv1:13/75088files(7.7%non-contiguous),15640/307200blocks
[root@server02~]#resize2fs/dev/vg1/lv1100M
resize2fs1.42.9(28-Dec-2013)
Resizingthefilesystemon/dev/vg1/lv1to102400(1k)blocks.
Thefilesystemon/dev/vg1/lv1isnow102400blockslong.

[root@server02~]#lvresize-L100M/dev/vg1/lv1
WARNING:Reducingactivelogicalvolumeto100.00MiB.
THISMAYDESTROYYOURDATA(filesystemetc.)
Doyoureallywanttoreducevg1/lv1?[y/n]:y
Sizeoflogicalvolumevg1/lv1changedfrom300.00MiB(75extents)to100.00MiB(25extents).
Logicalvolumevg1/lv1successfullyresized.
[root@server02~]#mount/dev/vg1/lv1/mnt/
[root@server02~]#df-h
文件系统容量已用可用已用%挂载点
/dev/sda328G1.1G27G4%/
devtmpfs483M0483M0%/dev
tmpfs493M0493M0%/dev/shm
tmpfs493M6.8M486M2%/run
tmpfs493M0493M0%/sys/fs/cgroup
/dev/sda1197M109M88M56%/boot
tmpfs99M099M0%/run/user/0
/dev/mapper/vg1-lv193M1.6M86M2%/mnt

磁盘缩减是一个很危险的操作,在操作过程中,需要注意每一步的提示信息是否正常。以防缩减导致的数据缺损和丢失的问题。强烈建议做磁盘缩减前,做一次数据完整备份,并且每一步操作在实验虚拟机上模拟一遍。

注意:xfs格式不支持缩减。


4、扩展卷组

[root@server02~]#pvs
PVVGFmtAttrPSizePFree
/dev/sdb1vg1lvm2a--1020.00m920.00m
/dev/sdb2vg1lvm2a--1020.00m1020.00m
/dev/sdb3lvm2---1.00g1.00g
[root@server02~]#vgextendvg1/dev/sdb3
Volumegroup"vg1"successfullyextended
[root@server02~]#lvresize-L100M/dev/vg1/lv1
Newsize(25extents)matchesexistingsize(25extents).
[root@server02~]#pvs
PVVGFmtAttrPSizePFree
/dev/sdb1vg1lvm2a--1020.00m920.00m
/dev/sdb2vg1lvm2a--1020.00m1020.00m
/dev/sdb3vg1lvm2a--1020.00m1020.00m

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


linux下开机自启: 在/etc/init.d目录下新建文件elasticsearch 并敲入shell脚本: 注意, 前两行必须填写,且要注释掉。 第一行为shell前行代码,目的告诉系统使用shell。 第二行分别代表运行级别、启动优先权、关闭优先权,且后面添加开机服务会用到。 shell脚本
1、因为在centos7中/etc/rc.d/rc.local的权限被降低了,所以需要赋予其可执行权 chmod +x /etc/rc.d/rc.local 2、赋予脚本可执行权限假设/usr/local/script/autostart.sh是你的脚本路径,给予执行权限 chmod +x /usr
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB、MB等为单位进行显示,这样比较直观一些。 通过命令du -h –max-depth=1 *,可以查看当前目录下各文件、文件夹的大小,这个比较实用。 查询当前目录总大小可以使用d
ASP.NET Core应用程序发布linux在shell中运行是正常的。可一但shell关闭网站也就关闭了,所以要配置守护进程, 用的是Supervisor,本文主要记录配置的过程和过程遇到的问题 安装Supervisor 1 yum install python-setuptools
设置时区(CentOS 7) 先执行命令timedatectl status|grep 'Time zone'查看当前时区,如果不是时区(Asia/Shanghai),则需要先设置为中国时区,否则时区不同会存在时差。 #已经是Asia/Shanghai,则无需设置 [root@xia
vim /etc/sysconfig/network-scripts/ifcfg-eth0 BOOTPROTO="static" ONBOOT=yes IPADDR=192.168.8.106 NETMASK=255.255.252.0 GATEWAY=192.168.
一、安装gcc依赖 由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v),如果没有安装,执行以下命令进行安装 [root@localhost local]# yum install -y gcc 二、下载并解压安装包 [root@localhost local
第一步 On CentOS/RHEL 6.*: $ sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm On CentOS/RHEL 7: $
/// <summary> /// 取小写文件名后缀 /// </summary> /// <param name="name">文件名</param> /// <returns>返回小写后缀,不带“.”</ret
which nohup .bash_profile中并source加载 如果没有就安装吧 yum provides */nohup nohup npm run start & nohup ./kibana &
1.1 MySQL安装 1.1.1 下载wget命令 yum -y install wget 1.1.2 在线下载mysql安装包 wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 1.1.3 安装My
重启 reboot shutdown -r now init 6 关闭 init 0 shutdown -h now shutdown -h 20:25 #8点25关机查看内存 free CPU利用率 top 日期 date 设置时间 date 033017002015 #月日时间年 日历 cal
1、firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status firewalld 开机禁用 : systemctl disable firewalld 开机启用 :
1 下载并安装MySQL官方的 Yum Repository wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 使用上面的命令就直接下载了安装用的Yum Repository,大概
CentOS6.x CentOS6中转用Upstrat代替以前的init.d/rcX.d的线性启动方式。 一、相关命令 通过initctl help可以查看相关命令 [root@localhost ~]# initctl help Job commands: start Start job. sto
1、使用命令:df -lk 找到已满磁盘 2、使用命令:du --max-depth=1 -h 查找大文件,删除
ifconfig:查看网卡信息 网卡配置文件位置: /etc/sysconfig/network-scripts/文件夹 nmtui:配置网卡 netstat -tlunp:查看端口信息 端口信息存储位置: /etc/services文件 route:查看路由信息 wget:下载网路文件,例如 wg
ps -ef:查看所有进程, ps -ef |grap firewalld 查看与firewalld相关的进程 which :查看进程:which firewalld kill 进程id:杀掉进程 kill 640,强制杀:kill -9 640 man:查看帮助,例如 man ps 查看
useradd:添加用户 useradd abc,默认添加一个abc组 vipw:查看系统中用户 groupadd:添加组groupadd ccna vigr:查看系统中的组 gpasswd:将用户abc添加到ccna组 gpasswd -a abc ccna groups abc:查看用户abc属