note: 小编的vmware是16pro, 虚拟机是Centos7;
Linux磁盘扩容分为三个步骤:
1. 虚拟机添加一块物理磁盘
2. 磁盘分区
3. 挂载
一.扩容虚拟机磁盘(虚拟机添加一块物理磁盘)
1.在虚拟机关机状态下,点击虚拟机->设置
2.点击添加
3.下一步
4.选择SCSI
5.选择创建新虚拟磁盘
6.大小选择4G。(大小根据个人喜好选择)
7.给磁盘命名,默认即可
8.点击确定完成 硬盘的添加
二. 磁盘分区
linux磁盘有2种类型,一种是MBR, 这种磁盘最大空间为2T, 用fdisk指令分区。
另外一种是GPT, 这种磁盘可以大于2T,用parted指令分区。
2.1 MBR方式分区
开机之后用指令lsblk,可以看到磁盘sdb就是刚刚添加的磁盘;sda是虚拟机之前安装时候设置的磁盘,有三个分区 sda1, sda2, sda3;
[shuai@192 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
也可以在root用户下,用fdisk -l 查看磁盘信息
[root@192 ~]# fdisk -l
磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000c6f11
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 411647 204800 83 Linux
/dev/sda2 411648 4605951 2097152 82 Linux swap / Solaris
/dev/sda3 4605952 25577471 10485760 83 Linux
磁盘 /dev/sdb:4294 MB, 4294967296 字节,8388608 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
接下来用MBR的方式进行分区,用到指令 fdisk;
要求:给4G的新磁盘分区,要求为P(1G)+P(1G)+L(1G)+L(1G);
即,两个主分区,每个1G,两个逻辑分区,每个1G,之前说过逻辑分区不能单独存在,必须搭载扩展分区,所以实际情况应该是两个主分区,每个1G,一个扩展分区2G,扩展分区里面两个逻辑分区,每个1G;
操作如下:
fdisk /dev/sdb 指令进入分区操作的交互命令行
[root@192 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0xe36a8520 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):m
命令操作
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
#根据提示输入n add a new partition
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
# 这里p是主分区,e为扩展分区,先来个主分区,选择p
Select (default p): p
分区号 (1-4,默认 1):1
# 这里跳转到选择分区号,之前理论讲的MBR只能有4个主或扩展分区(2<=扩展分区+主分区<=4),因为是新的分区,所以这里选择1;
# 选择起始扇区,选择默认即可
起始 扇区 (2048-8388607,默认为 2048):
将使用默认值 2048
# 这里选择结束的扇区,如果你选择默认的,那么就是将整块磁盘给到一个分区,
# 这里磁盘有4G,所以来个1G的,选择+1G,就是给第一个分区1G的空间
Last 扇区, +扇区 or +size{K,M,G} (2048-8388607,默认为 8388607):+1G
分区 1 已设置为 Linux 类型,大小设为 1 GiB
# 还须要写入w,则完成分区1分区;
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
# 完成后会自动退出
[root@192 ~]#
再次使用lsblk,发现已经多了sdb1
[root@192 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
└─sdb1 8:17 0 1G 0 part
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
接着创建第二个主分区
[root@192 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
# 选择p表示第二个主分区
Select (default p): p
# 这里自动选择序号2,因为1已经被第一个分区占用
分区号 (2-4,默认 2):2
# 起始位置选择默认即可
起始 扇区 (2099200-8388607,默认为 2099200):
将使用默认值 2099200
# 结束扇区选择1G
Last 扇区, +扇区 or +size{K,M,G} (2099200-8388607,默认为 8388607):+1G
分区 2 已设置为 Linux 类型,大小设为 1 GiB
# w指令保存磁盘修改
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
再次使用lsblk,发现第二块主分区sdb2
[root@192 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 1G 0 part
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
接下来创建扩展分区和逻辑分区
[root@192 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
# 选择e表示扩展分区,编号可以选择默认的3
Select (default p): e
分区号 (3,4,默认 3):3
# 起始扇区选择默认的位置
起始 扇区 (4196352-8388607,默认为 4196352):
将使用默认值 4196352
# 剩下的所有磁盘分给这个扩展分区,所以默认回车即可
Last 扇区, +扇区 or +size{K,M,G} (4196352-8388607,默认为 8388607):
将使用默认值 8388607
分区 3 已设置为 Extended 类型,大小设为 2 GiB
# 写入w保存磁盘更改
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
扩展分区是不能单独存在的,必须要有逻辑分区在里面,接下来再来俩次,创建逻辑分区
[root@192 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):n
# 这里多了个l(logical)的选项,即逻辑分区的意思,这里记得选l
Partition type:
p primary (2 primary, 1 extended, 1 free)
l logical (numbered from 5)
Select (default p): l
添加逻辑分区 5
# 选择默认的起始分区
起始 扇区 (4198400-8388607,默认为 4198400):
将使用默认值 4198400
# 第一个逻辑分区为1G
Last 扇区, +扇区 or +size{K,M,G} (4198400-8388607,默认为 8388607):+1G
分区 5 已设置为 Linux 类型,大小设为 1 GiB
# 保存磁盘更改,写入w
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
再来一次,创建第二块逻辑分区
[root@192 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):n
Partition type:
p primary (2 primary, 1 extended, 1 free)
l logical (numbered from 5)
Select (default p): l
添加逻辑分区 6
起始 扇区 (6297600-8388607,默认为 6297600):
将使用默认值 6297600
# 使用默认的结束扇区,即将剩下的扩展分区的空间全部给到第二个逻辑分区
Last 扇区, +扇区 or +size{K,M,G} (6297600-8388607,默认为 8388607):
将使用默认值 8388607
分区 6 已设置为 Linux 类型,大小设为 1021 MiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
到此,主分区,扩展分区,逻辑分区的分区已经操作完了;分区使用之前还需要进行格式化;
再次lsblk查看MBR分区,符合预期
[root@192 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
├─sdb1 8:17 0 1G 0 part
├─sdb2 8:18 0 1G 0 part
├─sdb3 8:19 0 1K 0 part
├─sdb5 8:21 0 1G 0 part
└─sdb6 8:22 0 1021M 0 part
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
2.2 GPT分区
要求:给4G的新磁盘分区,要求为P(1G)+P(1G)+L(1G)+L(1G);
即,两个主分区,每个1G,两个逻辑分区,每个1G,之前说过逻辑分区不能单独存在,必须搭载扩展分区,所以实际情况应该是两个主分区,每个1G,一个扩展分区2G,扩展分区里面两个逻辑分区,每个1G;
用 目录一.扩容虚拟机磁盘(虚拟机添加一块物理磁盘)同样的方法扩容虚拟机磁盘,扩容4G;
lsblk查看,多了一块sdc磁盘
[shuai@192 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
├─sdb1 8:17 0 1G 0 part
├─sdb2 8:18 0 1G 0 part
├─sdb3 8:19 0 1K 0 part
├─sdb5 8:21 0 1G 0 part
└─sdb6 8:22 0 1021M 0 part
sdc 8:32 0 4G 0 disk
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
进行parted分区;
使用parted /dev/sdc进入交互的parted命令行;
使用mklabel gpt指令将MBR磁盘转换成GPT磁盘类型;
[root@192 ~]# parted /dev/sdc
GNU Parted 3.1
使用 /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
# 输入p查看当前分区,发现unrecognised disk label
(parted) p
错误: /dev/sdc: unrecognised disk label
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:
# 将MBR磁盘转换成GPT(此虚拟机默认创建磁盘为MBR类型)
(parted) mklabel gpt
# 输入p查看当前分区,发现为0个分区
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
创建第一个主分区
# 创建第一个主分区
(parted) mkpart primary 0 1G
警告: The resulting partition is not properly aligned for best performance.
忽略/Ignore/放弃/Cancel? Ignore
# 查看当前磁盘分区情况,发现第一个主分区成功
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 17.4kB 1000MB 1000MB primary
创建第二个主分区
# 创建第二个主分区
(parted) mkpart primary 1G 2G
# 输入p查看第二个主分区
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 17.4kB 1000MB 1000MB primary
2 1000MB 2000MB 999MB primary
创建第一个逻辑分区,GPT分区,逻辑分区不需要以扩展分区为载体,所以这里没有扩展分区
(parted) mkpart logic 2G 3G
(parted) p
# 输入p查看第一个逻辑分区
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 17.4kB 1000MB 1000MB primary
2 1000MB 2000MB 999MB primary
3 2000MB 3000MB 1000MB logic
创建第二个逻辑分区
(parted) mkpart logic 3G 4G
(parted) p
# 输入p查看第二个逻辑分区
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 17.4kB 1000MB 1000MB primary
2 1000MB 2000MB 999MB primary
3 2000MB 3000MB 1000MB logic
4 3000MB 4294MB 1294MB logic
# 也可以用print查看当前分区
(parted) print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 17.4kB 1000MB 1000MB primary
2 1000MB 2000MB 999MB primary
3 2000MB 3000MB 1000MB logic
4 3000MB 4294MB 1294MB logic
退出parted交互命令行 quit
(parted) quit
信息: You may need to update /etc/fstab.
[root@192 ~]#
用lsblk命令查看刚刚的gpt分区
[root@192 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
├─sdb1 8:17 0 1G 0 part
├─sdb2 8:18 0 1G 0 part
├─sdb3 8:19 0 1K 0 part
├─sdb5 8:21 0 1G 0 part
└─sdb6 8:22 0 1021M 0 part
sdc 8:32 0 4G 0 disk
├─sdc1 8:33 0 953.7M 0 part
├─sdc2 8:34 0 953M 0 part
├─sdc3 8:35 0 954M 0 part
└─sdc4 8:36 0 1.2G 0 part
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
# 下面是parted分区指令的其他命令
# 划分所有空间到一个分区
(parted) mkpart primary 0-1
# 如果要反过来,将GPT磁盘转化为MBR磁盘
(parted) mklable msdos
三. 挂载
磁盘挂载之前,要先格式化;
在根目录下新建一个file目录作为挂载的目录;
# 在根目录新建一个file目录作为挂载的目录
[root@192 /]# cd /
[root@192 /]# mkdir file
# 格式化sdc2分区,选用文件系统问目前最优的xfs
# 注意,/dev/sdc2一定要带上2,一定要带上2,一定要带上2
# 不带上什么意思,就是格式化整个磁盘,结果就是你之前做的sdc的分区全部白费了
[root@192 /]# mkfs.xfs /dev/sdc2
meta-data=/dev/sdc2 isize=512 agcount=4, agsize=60992 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=243968, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=855, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
# 手动挂载
[root@192 /]# mount /dev/sdc2 /file
# 查看挂载情况,发现sdc2后面已经挂在了/file
[root@192 /]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
├─sdb1 8:17 0 1G 0 part
├─sdb2 8:18 0 1G 0 part
├─sdb3 8:19 0 1K 0 part
├─sdb5 8:21 0 1G 0 part
└─sdb6 8:22 0 1021M 0 part
sdc 8:32 0 4G 0 disk
├─sdc1 8:33 0 953.7M 0 part
├─sdc2 8:34 0 953M 0 part /file
├─sdc3 8:35 0 954M 0 part
└─sdc4 8:36 0 1.2G 0 part
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
磁盘卸载(这只是卸载指令,此处不需要操作)
# 磁盘卸载
# 使用umount卸载分区时,可以指定挂载点,也可以指定挂载的路径
umount /dev/sdc1
# 或者等价于
umount /file
# 此时关机重启下,再lsblk指令,返现该手动挂载的目录失效了
此时关机重启下,再lsblk指令,发现该手动挂载的目录失效了
[shuai@192 ~]$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
├─sdb1 8:17 0 1G 0 part
├─sdb2 8:18 0 1G 0 part
├─sdb3 8:19 0 1K 0 part
├─sdb5 8:21 0 1G 0 part
└─sdb6 8:22 0 1021M 0 part
sdc 8:32 0 4G 0 disk
├─sdc1 8:33 0 953.7M 0 part
├─sdc2 8:34 0 953M 0 part
├─sdc3 8:35 0 954M 0 part
└─sdc4 8:36 0 1.2G 0 part
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
因此要实现自动挂载,需要将磁盘的UUID添加到配置文件/etc/fstab里
[root@192 ~]# blkid /dev/sdc2
/dev/sdc2: UUID="96235e8c-b67b-4341-bc0b-05227e6742f0" TYPE="xfs" PARTLABEL="primary" PARTUUID="f059d92a-4a59-4757-94d4-28c4e2476831"
# 编辑/etc/tstab文件,加入新的分区挂载
[root@192 ~]# vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Sat Aug 10 16:37:50 2024
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=054d83d4-4be7-4a4e-8c9c-bc3623607b57 / xfs defaults 0 0
UUID=1d6735cc-c03e-4320-b79b-625fed572702 /boot xfs defaults 0 0
UUID=91bfb5a7-4d6d-465c-b19f-9b827756d1f5 swap swap defaults 0 0
# 上面为系统自带,别理,下面添加这句
UUID="96235e8c-b67b-4341-bc0b-05227e6742f0" /file xfs defaults 0 0
# 注意,如果不用UUID,用磁盘名称也可以,以下信息等价
/dev/sdc1 /file xfs defailts 0 0
# 以上完成了磁盘的自动挂载
四. 将上述创建的2块容量分别是4G的sdb, sdc磁盘空间合二为一,并挂载到同一目录下,实现扩容;
操作/dev/sdb磁盘
# 这里采用GPT的分区方法,使用parted指令
[root@192 ~]# parted /dev/sdb
GNU Parted 3.1
使用 /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
# 将磁盘转换成gpt
(parted) mklabel gpt
警告: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
是/Yes/否/No? Yes
# 这里反正要合并,就设置一个主分区包含整个磁盘
(parted) mkpart primary 0 100%
警告: The resulting partition is not properly aligned for best performance.
忽略/Ignore/放弃/Cancel? Ignore
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 17.4kB 4295MB 4295MB primary
(parted) quit
信息: You may need to update /etc/fstab.
同理 对/dev/sdc磁盘执行相同的操作
[root@192 ~]# parted /dev/sdc
GNU Parted 3.1
使用 /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
警告: The existing disk label on /dev/sdc will be destroyed and all data on this disk will be lost. Do you want to continue?
是/Yes/否/No? Yes
(parted) mkpart primary 0 100%
警告: The resulting partition is not properly aligned for best performance.
忽略/Ignore/放弃/Cancel? Ignore
(parted) p
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdc: 4295MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name 标志
1 17.4kB 4295MB 4295MB primary
(parted) quit
信息: You may need to update /etc/fstab.
得到目前的磁盘分布如下
[root@192 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
└─sda3 8:3 0 10G 0 part /
sdb 8:16 0 4G 0 disk
└─sdb1 8:17 0 4G 0 part
sdc 8:32 0 4G 0 disk
└─sdc1 8:33 0 4G 0 part
sr0 11:0 1 4.4G 0 rom /run/media/shuai/CentOS 7 x86_64
创建物理卷,添加卷组,合并磁盘空间
# 创建物理卷的命令为pvcreate;利用该命令将希望添加到卷组的所有分区或磁盘创建为物理卷;
# 将分区/dev/sdb1和/dev/sdc1分区创建为物理卷:
[root@192 ~]# pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created.
[root@192 ~]# pvcreate /dev/sdc1
Physical volume "/dev/sdc1" successfully created.
#创建卷组的命令为vgcreate;用此命令将使用pvcreate建立的物理卷创建为一个完整的卷组;
#将物理卷/dev/sdb1创建为一个名为vgmygroup1的卷组:
[root@192 ~]# vgcreate vgmygroup1 /dev/sdb1
Volume group "vgmygroup1" successfully created
#此步即为将2块磁盘空间合二为一的关键步骤;当系统中新增了磁盘或新建了物理卷,而要将其添加到已有卷组时,就可使用vgextend命令;
# 将物理卷/dev/sdc1添加到vgmygroup1卷组中:
[root@192 ~]# vgextend vgmygroup1 /dev/sdc1
Volume group "vgmygroup1" successfully extended
# 查看卷组用vgs,从vgs命令的回显结果来看,卷组vgmygroup1成功添加
# 并且其总空间为两块物理磁盘的总大小(因换算单位不同,所以不是精确的4G)。
[root@192 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vgmygroup1 2 0 0 wz--n- 7.99g 7.99g
# 创建逻辑卷的命令为lvcreate;用此命令将在使用vgcreate建立的卷组上创建逻辑卷;
# 在卷组vgmygroup1上创建一个名为lvmygroup的逻辑卷,起大小为 7.99G;
# -n:指定逻辑卷名
# -L:指定逻辑卷大小
[root@192 ~]# lvcreate -L 7.99g -n lvmygroup vgmygroup1
Rounding up size to full physical extent 7.99 GiB
Logical volume "lvmygroup" created.
# 将创建的lvmygroup逻辑卷格式化为xfs
[root@192 ~]# mkfs -t xfs /dev/vgmygroup1/lvmygroup
meta-data=/dev/vgmygroup1/lvmygroup isize=512 agcount=4, agsize=523776 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2095104, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
# 切换到根目录,在根目录下新建文件夹
[root@192 ~]# cd /
[root@192 /]# mkdir mydata
# 挂载刚刚的逻辑组到新建目录下
[root@192 /]# mount /dev/vgmygroup1/lvmygroup /mydata/
# 查看磁盘大小和挂载磁盘查看,容量为8G
[root@192 /]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 975M 0 975M 0% /dev
tmpfs 991M 0 991M 0% /dev/shm
tmpfs 991M 11M 980M 2% /run
tmpfs 991M 0 991M 0% /sys/fs/cgroup
/dev/sda3 10G 4.3G 5.7G 43% /
/dev/sda1 197M 147M 50M 75% /boot
tmpfs 199M 20K 199M 1% /run/user/1000
/dev/sr0 4.4G 4.4G 0 100% /run/media/shuai/CentOS 7 x86_64
/dev/mapper/vgmygroup1-lvmygroup 8.0G 33M 8.0G 1% /mydata
# 创建开机自动挂载
[root@192 /]# echo /dev/mapper/vgmygroup1-lvmygroup /mydata/ xfs defaults 0 0 >> /etc/fstab
# 重启重新查看挂载的磁盘,确认成功自动开机挂载
[root@192 /]# sync
[root@192 /]# reboot
# 使用df -h指令再次查看,发现完成自动挂载
[shuai@192 ~]$ df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 975M 0 975M 0% /dev
tmpfs 991M 0 991M 0% /dev/shm
tmpfs 991M 11M 980M 2% /run
tmpfs 991M 0 991M 0% /sys/fs/cgroup
/dev/sda3 10G 4.3G 5.7G 43% /
/dev/sda1 197M 147M 50M 75% /boot
/dev/mapper/vgmygroup1-lvmygroup 8.0G 33M 8.0G 1% /mydata
tmpfs 199M 8.0K 199M 1% /run/user/42
tmpfs 199M 24K 199M 1% /run/user/1000
/dev/sr0 4.4G 4.4G 0 100% /run/media/shuai/CentOS 7 x86_64