LVM逻辑卷创建管理

      在虚拟机里面添加三个新的硬盘
                LVM是Logical Volume Manager(逻辑卷管理器)的简写,它为主机提供了更高层次的磁盘存储管理能力。LVM可以帮助系统管理员为应用与用户方便地分配存储空间。在LVM管理下的逻辑卷可以按需改变大小或添加移除。另外,LVM可以为所管理的逻辑卷提供定制的命名标识。因此,使用LVM主要是方便了对存储系统的管理,增加了系统的扩展性。

目前LVM在Linux下有两个版本,分别是LVM 1和LVM 2,LVM2不仅仅是Linux逻辑卷管理在版本与功能上的升级,而且是架构在一个新的内核存储子系统(DM,device-mapper)之上的。这个存储子系统提供了一个轻量级的、可扩展的卷管理设施。除了在原有LVM卷管理功能的基础上,Linux的逻辑卷管理将会为用户提供更多的存储管理方案,如镜像、加密卷、多路径技术。所以在本节将以LVM 2为例来详细介绍LVM的创建与管理。

                 [root@1 ~]# cat /etc/redhat-release         #查看系统版本

CentOS Linux release 7.2.1511 (Core)

[root@1 ~]# uname -r #查看系统内核版本

3.10.0-327.el7.x86_64

[root@1 ~]# uname -m #查看系统是否64位

x86_64

首先我们还是做服务之前先把奇葩的防火墙给关掉,因为很多规则会撞到墙,注意是服务端和客户端都要做这个操作

[root@1 ~]# iptables -F

[root@1 ~]# iptables -X

[root@1 ~]# iptables -Z

[root@1 ~]# iptables -L

[root@1 ~]# setenforce 0

[root@1 ~]#vi /etc/sysconfig/selinux #修改SELINUX

首先我们先添加一块3块硬盘,为了方便区分我们把每一块硬盘的大小做了区分,大小分别为5G、6G和7G,硬盘的类型还是默认的SCSI版本。

[root@02 dev]# fdisk -l #可以列出所有的分区,包括没有挂上的分区和usb设备,查看硬盘及分区信息;

我们可以看见下面就是挂载上的硬盘

由于硬盘的主引导记录中仅仅为分区表保留了64个字节的存储空间,而每个分区的参数占据16个字节,故主引导扇区中总计只能存储4个分区的数据。也就是说,一块物理硬盘只能划分为4个主分区磁盘。并且MBR最大仅支持2TB的硬盘,在现在这个连4T都不稀奇的时代,MBR出场的机会恐怕会越来越少。

sda和hda的区别:

sd代表的是SCSI,SATA接口硬盘

hd代表IDE接口的硬盘

sda和hda最后面的a都代表的是第一块硬盘

sda1和hda1则代表的是该硬盘的第一分区

[root@02 dev]# fdisk /dev/sdb #对sdb硬盘进行分区

Command (m for help): m #就会输出帮助;

a 切换可引导标志(活动分区/引导分区之间切换)

b 编辑BSD磁盘标签

c 设置DOS操作系统兼容标记(兼容/不兼容之间切换)

d 删除一个分区

g 创建一个新的空GPT分区表

G 创建一个ILIX(SGI)分区表

l 列出已知分区类型

m 显示帮助信息

n 添加新分区

o 创建一个新的空DOS分区表

p 显示磁盘当前的分区表

q 退出不保存更改

s 创建一个新的空白的Sun磁盘标签

t 更改分区的系统ID

u 显示/输入单元

v 验证磁盘分区表

w 将分区表写入磁盘并退出(保存并退出)

x 额外功能(仅专家)

Command (m for help): n #添加新分区;

Select (default p): p #添加一个主分区

分区号(1-4,默认1): #默认的分区账号

第一扇区(2044-1048 575,默认2048): #默认的话就自动分一个号码

使用默认值2048

最后扇区,+扇区或+大小{k,m,g}(20481085599,默认10485759): #像这里我打错了一个符号发现删除不了我们可以按住Ctrl+Backapace就可以了

Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759): +2G #+2G

我们再依照上面的步骤再加一个新的分区为1G。

Command (m for help): p #打印分区表

Command (m for help): w #写入磁盘,保存并退出,否则之前的操作都无效。

分区表已经更改了!

调用IOCLT()来重新读取分区表。

同步磁盘。

[root@02 ~]# pvcreate /dev/sdb1 /dev/sdb2 #将新创建的两个分区/dev/sdb1 /dev/sdb2转化成物理卷PV

[root@02 ~]# vgcreate vg01 /dev/sdb1 /dev/sdb2 #创建卷组 vg01 ,这个是个名字可以更改,并将刚才创建好的两个物理卷加入该卷组.

[root@02 ~]# vgdisplay #查看物理卷

以下就是显示的Vg的名字vg01、大小为2.99G

以及默认PE大小为4MB,PE是卷组的最小存储单元

[root@02 ~]# lvcreate -n lv01 -l 100 vg01 #创建一个名字为Lv01大小为100的逻辑卷

逻辑卷“LV01”创建。

lvcreate主要参数:

-L 指定逻辑卷的大小,单位为“kKmMgGtT”字节

-l 指定逻辑卷的大小(LE数)

-n 后面跟逻辑卷名

-s 创建快照

[root@02 ~]# lvdisplay #显示逻辑卷属性显示LVM逻辑卷空间大小、读写状态和快照信息等属性。

下面显示就是LV的详细参数

[root@02 ~]# pvscan #扫描当前系统中所有硬盘的物理卷

[root@02 ~]# mkfs -t ext4 /dev/vg01/lv01 #使用mkfs在逻辑卷LV01上创建ext4文件系统.

MKE2FS 1.42.9(23-DEC-2013)

文件系统标签=

操作系统类型:Linux

块大小=1024(log=0)

片段大小=1024(log=0)

步长=0个块,条带宽度=0个块

102400个节点,409600个块

为超级用户保留的20480个块(5%)

第一数据块=1

最大文件系统块=34078720

50方块群

每组8192个块,每组8192个片段

每组2048个节点

存储在块上的超级块备份:

8193, 24577, 40961、57345, 73729, 204801、221185, 401409

分配组表:完成

写入索引表:完成

创建日志(8192个块):完成

编写超级块和文件系统会计信息:完成

[root@02 ~]# df -Th #查看挂载

[root@02 ~]# mkdir /mnt/lv01 #创建一个挂载的目录随便命名LV01

[root@02 ~]# mount /dev/vg01/lv01 /mnt/lv01/ #挂载到新创建的目录下面

[root@02 ~]# vim /etc/fstab

为了查看/mnt/LV01是否设置正确,可以先卸载逻辑卷LV01,然后使用mount –a 使内核重新读取/mnt/LV01,看是否能够自动挂载.

当逻辑卷不够用了,如何扩展。

[root@02 ~]# fdisk /dev/sdc #为了实验接着我们又在另外一块硬盘上面下手

添加分区步骤同上,为了方便我分别创建了两个1G的分区,看一下图片

[root@02 ~]# pvcreate /dev/sdc{1,2} #创建一个pv

[root@02 ~]# lsblk -f #列出所有块设备信息

通过partx工具让内核重读磁盘分区表,partx命令告用来诉内核当前磁盘的分区情况

选项

-a 增加制定的分区或读磁盘新增的分区

-d 删除制定或所有的分区

-l 列出分区

--type 指定分区类型。dos,bsd,solaris,unix,或者gpt

--nr M-N 指定分区范围

[root@02 ~]# partx -s /dev/sdc #显示磁盘分区信息

partprobe: 用于重读分区表,当出现删除文件后,出现仍然占用空间。可以partprobe在不重启的情况下重读分区。将磁盘分区表变化信息通知内核,请求操作系统重新加载分区表。

-d 不更新内核

-s 显示磁盘分区汇总信息

-h 显示帮助信息

-v 显示版本信息

[root@02 ~]# vgcreate -s 8M kk /dev/sdc1 /dev/sdc2 #创建名为kk卷组上的物理卷的8MPE大小

[root@02 ~]# vgdisplay 查看一下

[root@02 ~]# lvcreate -L 1.98G kk /dev/sdc1 /dev/sdc2 #因为上面vg大小为1.98G所以只能创建这么大 的LV卷

[root@02 ~]# mkfs -t ext4 /dev/kk/lvol0 #指定格式

[root@02 ~]# mkdir /mnt/lv02 #创建一个挂载目录

[root@02 ~]# mount /dev/kk/lvol0 /mnt/lv02 #挂载目录

[root@02 ~]# df -Th #看一下挂载

[root@02 ~]# lvreduce -L -400M /dev/kk/lvol0 #缩小逻辑卷400M

//警告:将活动逻辑卷减少到1.59 GIB

//这可能破坏您的数据(文件系统等)。

//你真的想减少LVOL0吗?[Y/N]:Y

//逻辑卷KK/LVOL0的大小从1.98 GIB(254个扩展)变为1.59个GIB(204个扩展)。

//逻辑卷LVOL0成功调整大小。

[root@02 ~]# lvdisplay #查看一下逻辑卷发现已经变成了1.59GiB了

[root@02 ~]# mount /dev/mapper/kk-lvol0 /mnt/lv02 #我挂载一下发现除了问题

安装:错误的FS类型,坏的选项,坏的超级块/DEV/MAPPER/KK-LVRO0,

缺少代码页或辅助程序或其他错误

在某些情况下,在SysLog-Type中找到有用的信息。

尾巴等。

[root@02 ~]# resize2fs -f /dev/mapper/kk-lvol0 1500M #这种情况我又重新缩小了一下逻辑卷

[root@02 ~]# mount /dev/mapper/kk-lvol0 /mnt/lv02 #重新挂载一下

[root@02 ~]# df -h #看一下发现已经挂载上了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章