CentOS7 多硬盘合成卷组并创建LVM,挂载到同一目录下

​​​​​​

一、需求场景

将主机的2块数据盘(253T + 253T)"合并" 后挂载到 /bio 目录下,要求文件系统格式化为 xfs。

  • 数据盘

/dev/sdb:256T

/dev/sdc:256T

  • 文件系统:ext4
  • 挂载目录:/bio
  • OS版本:CentOS 7.6

  • lvm版本:lvm2

二、实现方法

使用 LVM 逻辑卷管理来实现。

二、实现步骤

1. 磁盘分区(parted,非必须)

在将磁盘或者磁盘分区用作物理卷(PV)之前,需要对其进行初始化工作,即进行磁盘分区操作;因磁盘分区需求大于2T,所以 fdisk 命令无法实现管理,需要使用 parted 命令来做磁盘分区管理。

/dev/sdb :256T

# 新建/dev/sdb 的磁盘标签类型为 GPT
[root@module ~]# parted /dev/sdb mklabel gpt 
Warning: 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? Y
Information: You may need to update /etc/fstab.
 
# 将/dev/sdb 整个空间分给同一个分区
[root@module ~]# parted /dev/sdb mkpart primary 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I                                                          
Information: You may need to update /etc/fstab.

/dev/sdc:256T

# 新建/dev/sdc 的磁盘标签类型为 GPT
[root@module ~]# parted /dev/sdc mklabel gpt 

# 将/dev/sdc 整个空间分给同一个分区
[root@module ~]# parted /dev/sdc mkpart primary 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I                                                          
Information: You may need to update /etc/fstab.

2.创建物理卷(pvcreate)

创建物理卷的命令为 pvcreate,利用该命令将希望添加到卷组的所有分区或磁盘创建为物理卷。
将分区 /dev/sdb 和 /dev/sdc 分区创建为物理卷:

[root@module ~]#  pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created.
[root@module ~]#  pvcreate /dev/sdc
  Physical volume "/dev/sdc" successfully created.

3.创建卷组(vgcreate)

创建卷组的命令为 vgcreate,用此命令将使用物理卷创建为一个完整的卷组。

将物理卷 /dev/sdb 创建为一个名为 vg_data 的卷组:

[root@module ~]# vgcreate vg_data /dev/sdb
  Volume group "vg_data" successfully created
4.添加新的物理卷到卷组中(vgextend)

此步即为将2块磁盘空间合二为一的关键步骤。当系统中新增了磁盘或新建了物理卷,而要将其添加到已有卷组时,就可使用 vgextend 命令。

将物理卷 /dev/sdc添加到 vg_data 卷组中:

[root@module ~]# vgextend vg_data /dev/sdc
  Volume group "vg_data" successfully extended

5.查看卷组(vgs)

查看卷组用 vgs

[root@localhost /]# vgs
  VG      #PV #LV #SN Attr   VSize   VFree
  centos    1   3   0 wz--n- 556.66g 4.00m
  vg_data   2   1   0 wz--n- 465.66t 1.30g

从 vgs 命令的回显结果来看,卷组 vg_data 成功添加,并且其总空间为两块物理磁盘的总大小

6.创建逻辑卷(lvcreate)

创建逻辑卷的命令为 lvcreate。用此命令将在使用 vgcreate 建立的卷组上创建逻辑卷。
在卷组 vg_data 上创建一个名为 lv_data 的逻辑卷,指定大小为 465.66T

-n:指定逻辑卷名

-L:指定逻辑卷大小

lvcreate -l 100%VG -n lvm_data vg_data

7.格式化逻辑卷

将创建的 lvjenkins 逻辑卷格式化为 xfs。

[root@module ~]# mkfs -t xfs /dev/mapper/vg_data-lvm_data
 meta-data=/dev/vgmysql/lvmysql   isize=512    agcount=33, agsize=268435328 blks
         =                       sectsz=4096  attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=0, rmapbt=0, reflink=0
data     =                       bsize=4096   blocks=8777839616, imaxpct=5
         =                       sunit=64     swidth=64 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=521728, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Allocating group tables: completed                          
writing into inode table: completed                            
Creating journal (32768 blocks): 
Writing superblocks and filesystem accounting information: completed 

格式化2:mkfs.xfs /dev/vg_data/lvm_data

8.创建挂载目录并挂载
  • 创建挂载目录 /bio
[root@module ~]# mkdir /bio
  • 挂载
[root@module ~]# mount /dev/mapper/vg_data-lvm_data /bio
  • 配置开机自动挂载
[root@module ~]# echo "mount /dev/mapper/vg_data-lvm_data /bio xfs     defaults 0 0" > /etc/fstab

 

CentOS 查看块设备命令lsblk详解

lsblk命令可以列出所有可用块设备的信息,比如我们说的逻辑磁盘,而df -h查看的是文件系统级别的信息。

lsblk命令包含在util-linux包中,yum安装util-linux包即可,util-linux包含多个命令工具。

lsblk命令默认情况下将以树状列出所有块设备。

1、NAME:块设备名
2、MAJ:MIN:本栏显示主要和次要设备号
3、RM:显示可移动设备。0表示非移动设备,1表示可移动设备
4、SIZE:块设备的空间大小
5、RO:是否只读,0表示非只读,1表示只读
6、TYPE:块设备类型,比如disk磁盘,part分区,lvm逻辑卷,rom只读存储
7、MOUNTPOINT:设备挂载点

df命令可以获取硬盘被占用了多少空间,目前还剩下多少空间等信息,它也可以显示所有文件系统对i节点和磁盘块的使用情况。

Linux lsblk命令详解

1. 概述

lsblk命令用于显示系统中所有可用的块设备信息。相比于blkid命令,lsblk提供了更多的信息和输出格式控制。它从udev读取信息,因此非root用户也可以使用。lsblk命令显示设备名、主次设备号、设备是否可以删除、设备文件大小、设备是否为只读、设备类型和挂载路径等信息。

2. 语法

lsblk [选项]

常用选项包括:

  • -a, --all:显示所有设备,包括空设备。
  • -b, --bytes:以字节为单位显示大小。
  • -d, --nodeps:仅列出块设备,不显示它们的依赖关系(例如分区)。
  • -e, --exclude <列表>:排除指定的设备。
  • -f, --fs:显示文件系统信息。
  • -h, --help:显示帮助信息并退出。
  • -i, --ascii:以ASCII字符显示树形结构。
  • -J, --json:以JSON格式输出。
  • -l, --list:以列表格式输出设备信息。
  • -n, --noheadings:不显示标题。
  • -o, --output <列>:指定显示的列,用逗号分隔。
  • -P, --pairs:以键值对格式输出。
  • -r, --raw:以原始格式显示。
  • -t, --topology:显示设备拓扑信息。
  • -V, --version:显示版本信息并退出。

3. 示例

3.1 显示所有设备的信息
# lsblk

  • NAME:设备名称。
  • MAJ:MIN:主次设备号。
  • RM:设备是否为可移动设备(1表示是,0表示否)。
  • SIZE:设备大小。
  • RO:设备是否为只读设备(1表示是,0表示否)。
  • TYPE:设备类型,如disk(磁盘)、part(分区)、lvm(逻辑卷)等。
  • MOUNTPOINT:设备的挂载点。
3.2 以列表格式显示设备信息
# lsblk -l
 

以列表形式显示块设备信息。

3.3 显示文件系统信息
# lsblk -f
 
  • FSTYPE:文件系统类型。
  • LABEL:文件系统标签。
  • UUID:文件系统的UUID。
  • MOUNTPOINT:文件系统的挂载点。
3.4 仅列出块设备,不显示分区
# lsblk -d
 

仅显示块设备,不显示其分区信息。

3.5 以JSON格式输出
# lsblk -J
{
   "blockdevices": [
      {"name":"sda", "maj:min":"8:0", "rm":false, "size":"20G", "ro":false, "type":"disk", "mountpoint":null,
         "children":[
            {"name":"sda1", "maj:min":"8:1", "rm":false, "size":"500M", "ro":false, "type":"part", "mountpoint":"/boot"},
            {"name":"sda2", "maj:min":"8:2", "rm":false, "size":"1G", "ro":false, "type":"part", "mountpoint":null,
               "children":[
                  {"name":"lvm-root", "maj:min":"253:0", "rm":false, "size":"15G", "ro":false, "type":"lvm", "mountpoint":"/"}
               ]
            },
            {"name":"sda3", "maj:min":"8:3", "rm":false, "size":"18.5G", "ro":false, "type":"part", "mountpoint":null,
               "children":[
                  {"name":"lvm-root", "maj:min":"253:0", "rm":false, "size":"15G", "ro":false, "type":"lvm", "mountpoint":"/"}
               ]
            }
         ]
      },
      {"name":"sr0", "maj:min":"11:0", "rm":true, "size":"1024M", "ro":false, "type":"rom", "mountpoint":null}
   ]
}

以JSON格式输出块设备信息,适合进一步的自动化处理。

4. 详细示例

示例1:显示所有设备的信息,并包含文件系统类型
# lsblk -f

显示设备及其文件系统类型、标签、UUID和挂载点。

示例2:以键值对格式输出设备信息
# lsblk -P

 

 

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值