记一次Linux磁盘分区及扩容操作

在这里插入图片描述

一、磁盘分区

1)查看磁盘信息
# fdisk -l
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.

Disk /dev/sda: 1919.0 GB, 1918999986176 bytes, 3748046848 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 262144 bytes / 262144 bytes
Disk label type: gpt
Disk identifier: 4DA8CF29-067C-4696-8630-4E24516E0D46


#         Start          End    Size  Type            Name
 1         2048      1050623    512M  EFI System      EFI System Partition
 2      1050624      2099199    512M  Microsoft basic
 3      2099200   3479406591    1.6T  Microsoft basic
 4   3479406592   3747842047    128G  Linux swap

Disk /dev/sdb: 15352.0 GB, 15351999889408 bytes, 29984374784 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 262144 bytes / 1048576 bytes

# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        252G     0  252G   0% /dev
tmpfs           252G     0  252G   0% /dev/shm
tmpfs           252G   20M  252G   1% /run
tmpfs           252G     0  252G   0% /sys/fs/cgroup
/dev/sda3       1.7T  5.8G  1.7T   1% /
/dev/sda2       506M  227M  280M  45% /boot
/dev/sda1       512M  9.9M  502M   2% /boot/efi
tmpfs            51G   44K   51G   1% /run/user/1000
tmpfs            51G     0   51G   0% /run/user/0

经查看,发现 sdb 盘没有分区。

2)分盘
--创建物理卷(使用pvcreate)
# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created.

--查看物理卷
# pvdisplay
 "/dev/sdb" is a new physical volume of "13.96 TiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb
  VG Name
  PV Size               13.96 TiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               5EMfd6-TPtv-a5Sv-ItGx-rIUk-fzfI-nRR3in

--创建卷组并给卷组增加分区(使用vgcreate)
# vgcreate vgdata /dev/sdb
Volume group "vgdata" successfully created

--查看卷组
#vgdisplay
 --- Volume group ---
  VG Name               vgdata
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               13.96 TiB
  PE Size               4.00 MiB
  Total PE              3660201
  Alloc PE / Size       0 / 0
  Free  PE / Size       3660201 / 13.96 TiB
  VG UUID               bHLMlb-KWB7-KQ1q-G7Mr-fdsv-djd2-wIjazy

--创建新的逻辑卷(使用lvcreate)
#lvcreate -l 100%free -n lvdata vgdata
  Logical volume "lvdata" created.

--查看逻辑卷
# lvdisplay
  --- Logical volume ---
  LV Path                /dev/vgdata/lvdata
  LV Name                lvdata
  VG Name                vgdata
  LV UUID                mRjXg9-0BX8-QkV0-08r2-VyXM-sQqm-SOQUBv
  LV Write Access        read/write
  LV Creation host, time plmprddb02, 2021-03-21 23:45:39 +0800
  LV Status              available
  # open                 0
  LV Size                13.96 TiB
  Current LE             3660201
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
3)格式化
# mkfs -t xfs /dev/vgdata/lvdata
meta-data=/dev/vgdata/lvdata     isize=512    agcount=32, agsize=117126464 blks
         =                       sectsz=4096  attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=3748045824, imaxpct=5
         =                       sunit=64     swidth=256 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
4)挂载
--创建挂载目录
# mkdir /oradata

--挂载
# mount /dev/vgdata/lvdata /oradata

--查看挂载情况
# df -h
Filesystem                 Size  Used Avail Use% Mounted on
devtmpfs                   252G     0  252G   0% /dev
tmpfs                      252G     0  252G   0% /dev/shm
tmpfs                      252G   20M  252G   1% /run
tmpfs                      252G     0  252G   0% /sys/fs/cgroup
/dev/sda3                  1.7T  5.8G  1.7T   1% /
/dev/sda2                  506M  227M  280M  45% /boot
/dev/sda1                  512M  9.9M  502M   2% /boot/efi
tmpfs                       51G   40K   51G   1% /run/user/1000
tmpfs                       51G     0   51G   0% /run/user/0
/dev/mapper/vgdata-lvdata   14T   34M   14T   1% /oradata

5)设置开机自动挂载
#vi /etc/fstab

添加如下内容:
/dev/vgdata/lvdata      /oradata        xfs     defaults        0 0

必要步骤总结:
 
–创建物理卷(使用pvcreate)
# pvcreate /dev/sdb
 
–创建卷组并给卷组增加分区(使用vgcreate)
# vgcreate vgdata /dev/sdb
 
–创建新的逻辑卷(使用lvcreate)
# lvcreate -l 100%free -n lvdata vgdata
 
–格式化
# mkfs -t xfs /dev/vgdata/lvdata
 
–创建挂载目录
# mkdir /oradata
 
–挂载
# mount /dev/vgdata/lvdata /oradata
 
–设置开机自动挂载
# vi /etc/fstab
添加如下内容:
/dev/vgdata/lvdata /oradata xfs defaults 0 0

二、扩容

如下展示的扩容步骤为另一台机器上的操作。
背景:因 /oradata 路径空间不足,现需对其扩容500G 。

1)查看磁盘信息
# fdisk -l

Disk /dev/sda: 161.1 GB, 161061273600 bytes, 314572800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disk label type: dos
Disk identifier: 0x000dc28e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     4196351     2097152   83  Linux
/dev/sda2         4196352   138414079    67108864   82  Linux swap / Solaris
/dev/sda3       138414080   314572799    88079360   8e  Linux LVM

Disk /dev/sdb: 3758.1 GB, 3758096384000 bytes, 7340032000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes


Disk /dev/mapper/rootvg-root: 90.2 GB, 90190118912 bytes, 176152576 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes


Disk /dev/mapper/vg_data-lv_data: 3221.2 GB, 3221221277696 bytes, 6291447808 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes

通过如上信息可以看出,/dev/sdb 盘当前有3758.1 GB,而逻辑卷/dev/mapper/vg_data-lv_data只有3221.2 GB,新加的500G需要进行配置。

具体操作如下文。

2)扩容
--查看物理卷信息
# pvscan
  PV /dev/sdb    VG vg_data         lvm2 [<2.93 TiB / 0    free]
  PV /dev/sda3   VG rootvg          lvm2 [<84.00 GiB / 0    free]
  Total: 2 [3.01 TiB] / in use: 2 [3.01 TiB] / in no VG: 0 [0   ]
--扩充物理卷
# pvresize /dev/sdb
  Physical volume "/dev/sdb" changed
  1 physical volume(s) resized or updated / 0 physical volume(s) not resized
--再次查看物理卷信息
# pvscan
  PV /dev/sdb    VG vg_data         lvm2 [<3.42 TiB / 0    free] --已修改成功
  PV /dev/sda3   VG rootvg          lvm2 [<84.00 GiB / 0    free]
--查看vg信息
# vgs
  VG      #PV #LV #SN Attr   VSize   VFree
  rootvg    1   1   0 wz--n- <84.00g      0
  vg_data   1   1   0 wz--n-  <3.42t 500.00g --已扩容
--查看lv信息
# lvscan
  ACTIVE            '/dev/vg_data/lv_data' [<2.93 TiB] inherit
  ACTIVE            '/dev/rootvg/root' [<84.00 GiB] inherit
--扩充lv
# lvextend -L +500G /dev/vg_data/lv_data  --500G
  Size of logical volume vg_data/lv_data changed from <2.93 TiB (767999 extents) to <3.42 TiB (895999 extents).  
  Logical volume vg_data/lv_data successfully resized.
--再次查看lv信息
# lvscan
  ACTIVE            '/dev/vg_data/lv_data' [<3.42 TiB] inherit  --已扩至3.42G
  ACTIVE            '/dev/rootvg/root' [<84.00 GiB] inherit
--查看磁盘信息
# fdisk -l

Disk /dev/sda: 161.1 GB, 161061273600 bytes, 314572800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disk label type: dos
Disk identifier: 0x000dc28e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     4196351     2097152   83  Linux
/dev/sda2         4196352   138414079    67108864   82  Linux swap / Solaris
/dev/sda3       138414080   314572799    88079360   8e  Linux LVM

Disk /dev/sdb: 3758.1 GB, 3758096384000 bytes, 7340032000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes


Disk /dev/mapper/rootvg-root: 90.2 GB, 90190118912 bytes, 176152576 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes


Disk /dev/mapper/vg_data-lv_data: 3758.1 GB, 3758092189696 bytes, 7340023808 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes

可看到/dev/mapper/vg_data-lv_data已变成3758.1 GB 。

--查看磁盘挂载情况
# df -h
Filesystem                   Size  Used Avail Use% Mounted on
devtmpfs                      24G     0   24G   0% /dev
tmpfs                         24G     0   24G   0% /dev/shm
tmpfs                         24G   18M   24G   1% /run
tmpfs                         24G     0   24G   0% /sys/fs/cgroup
/dev/mapper/rootvg-root       84G   33G   52G  40% /
/dev/sda1                    2.0G  182M  1.9G   9% /boot
/dev/mapper/vg_data-lv_data  3.0T  2.7T  333G  89% /oradata
tmpfs                        4.7G     0  4.7G   0% /run/user/0
--卸载磁盘
# umount /dev/vg_data/lv_data
umount: /oradata: target is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))

--查看磁盘挂载情况
# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                  24G     0   24G   0% /dev
tmpfs                     24G     0   24G   0% /dev/shm
tmpfs                     24G   18M   24G   1% /run
tmpfs                     24G     0   24G   0% /sys/fs/cgroup
/dev/mapper/rootvg-root   84G   33G   52G  40% /
/dev/sda1                2.0G  182M  1.9G   9% /boot
tmpfs                    4.7G     0  4.7G   0% /run/user/0

--重新挂载磁盘
# umount /dev/vg_data/lv_data

--查看磁盘挂载情况
# df -h
Filesystem                   Size  Used Avail Use% Mounted on
devtmpfs                      24G     0   24G   0% /dev
tmpfs                         24G     0   24G   0% /dev/shm
tmpfs                         24G   18M   24G   1% /run
tmpfs                         24G     0   24G   0% /sys/fs/cgroup
/dev/mapper/rootvg-root       84G   33G   51G  40% /
/dev/sda1                    2.0G  182M  1.9G   9% /boot
tmpfs                        4.7G     0  4.7G   0% /run/user/0
/dev/mapper/vg_data-lv_data  3.0T  2.7T  333G  89% /oradata

发现 /oradata 的空间依然是3.0T,并没有变化。

问题出在那里呢?
通过搜索资料找到了解决方法,执行如下命令:

# xfs_growfs  /dev/vg_data/lv_data
meta-data=/dev/mapper/vg_data-lv_data isize=512    agcount=4, agsize=196607744 blks
         =                       sectsz=4096  attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=786430976, imaxpct=5
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=383999, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 786430976 to 917502976

再次查看,发现 /oradata空间已增加500G 。

# df -h
Filesystem                   Size  Used Avail Use% Mounted on
devtmpfs                      24G     0   24G   0% /dev
tmpfs                         24G     0   24G   0% /dev/shm
tmpfs                         24G   18M   24G   1% /run
tmpfs                         24G     0   24G   0% /sys/fs/cgroup
/dev/mapper/rootvg-root       84G   33G   51G  40% /
/dev/sda1                    2.0G  182M  1.9G   9% /boot
tmpfs                        4.7G     0  4.7G   0% /run/user/0
/dev/mapper/vg_data-lv_data  3.5T  2.7T  833G  77% /oradata

必要操作总结:
 
–扩充物理卷
# pvresize /dev/sdb
 
–扩充lv
# lvextend -L +500G /dev/vg_data/lv_data --扩500G
 
–resize lv
# xfs_growfs /dev/vg_data/lv_data
 
–卸载磁盘
# umount /dev/vg_data/lv_data
 
–重新挂载磁盘
# umount /dev/vg_data/lv_data

本文通过真是案例展示了Linux磁盘分区及扩容的方法,希望对各位有所帮助。
在这里插入图片描述

相关文章:
Linux—磁盘配额,管理LVM逻辑卷

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值