Linux扩容根分区

Linux扩容根分区(LVM逻辑分区模式),其他分区类似操作

前提:保证系统分区是逻辑卷分区(LVM),非标准模式分区

查看系统分区情况fdisk -l,磁盘/dev/sdb是新增加且未使用的分区

[root@vm1 ~]# fdisk -l

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/sda:53.7 GB, 53687091200 字节,104857600 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x00000c4c

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200   104857599    51379200   8e  Linux LVM

磁盘 /dev/mapper/centos-root:50.5 GB, 50457477120 字节,98549760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

[root@vm1 ~]#

对/dev/sdb 进行分区,使用 fdisk /dev/sdb

根据提示依次输入 n 回车 回车 回车

[root@vm1 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

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

Device does not contain a recognized partition table
使用磁盘标识符 0x37ea3fbe 创建新的 DOS 磁盘标签。

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

将分区设置未Linux lvm ,输入8e

命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):L

 024  NEC DOS         81  Minix / 旧 Linu bf  Solaris        
 1  FAT12           27  隐藏的 NTFS Win 82  Linux 交换 / So c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 隐藏的 C:  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux 扩展      c7  Syrinx         
 5  扩展            41  PPC PReP Boot   86  NTFS 卷集       da  非文件系统数据 
 6  FAT16           42  SFS             87  NTFS 卷集       db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux 纯文本    de  Dell 工具      
 8  AIX             4e  QNX4.x 第2部分  8e  Linux LVM       df  BootIt         
 9  AIX 可启动      4f  QNX4.x 第3部分  93  Amoeba          e1  DOS 访问       
 a  OS/2 启动管理器 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O        
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad 休 eb  BeOS fs        
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT            
 f  W95 扩展 (LBA)  54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC  
11  隐藏的 FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor      
12  Compaq 诊断     5c  Priam Edisk     a9  NetBSD          f4  SpeedStor      
14  隐藏的 FAT16 <3 61  SpeedStor       ab  Darwin 启动     f2  DOS 次要       
16  隐藏的 FAT16    63  GNU HURD or Sys af  HFS / HFS+      fb  VMware VMFS    
17  隐藏的 HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE 
18  AST 智能睡眠    65  Novell Netware  b8  BSDI swap       fd  Linux raid 自动
1b  隐藏的 W95 FAT3 70  DiskSecure 多启 bb  Boot Wizard 隐  fe  LANstep        
1c  隐藏的 W95 FAT3 75  PC/IX           be  Solaris 启动    ff  BBT            
1e  隐藏的 W95 FAT1 80  旧 Minix       
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@vm1 ~]#

查看新分区的磁盘

[root@vm1 ~]# fdisk -l

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

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    41943039    20970496   8e  Linux LVM

对该分区进行格式化,需要将格式化成和要扩容的分区格式一致。我的为xfs

[root@vm1 ~]# df -hT
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  894M     0  894M    0% /dev
tmpfs                   tmpfs     910M     0  910M    0% /dev/shm
tmpfs                   tmpfs     910M   11M  900M    2% /run
tmpfs                   tmpfs     910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        47G  5.3G   42G   12% /
/dev/sda1               xfs      1014M  185M  830M   19% /boot
tmpfs                   tmpfs     182M   20K  182M    1% /run/user/0
/dev/sr0                iso9660   4.5G  4.5G     0  100% /run/media/root/CentOS 7 x86_64
[root@vm1 ~]# 

使用 mkfs.xfs -f /dev/sdb1

[root@vm1 ~]# mkfs.xfs -f /dev/sdb1 
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=1310656 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5242624, 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@vm1 ~]#

查看分区情况

[root@vm1 ~]# lsblk 
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   50G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   49G  0 part 
  ├─centos-root 253:0    0   47G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk 
└─sdb1            8:17   0   20G  0 part 
sr0              11:0    1  4.5G  0 rom  /run/media/root/CentOS 7 x86_64
[root@vm1 ~]# lsblk -f
NAME   FSTYPE   LABEL           UUID                                   MOUNTPOINT
sda                                                                    
├─sda1 xfs                      4c60cbf3-4379-4c66-8afc-fa6d7b519a13   /boot
└─sda2 LVM2_mem                 Nycf5w-dBRn-FF79-c1cw-8JoR-UgwU-Utqq29 
  ├─centos-root
       xfs                      21d2146d-2c9b-4ebc-be67-4b9cee8b2a88   /
  └─centos-swap
       swap                     23afcfc2-d862-40f8-a3a8-38d25de60526   [SWAP]
sdb                                                                    
└─sdb1 xfs                      9c903561-2115-4aa7-999e-82caef504ee9   
sr0    iso9660  CentOS 7 x86_64 2020-04-22-00-54-00-00                 /run/media/root/
[root@vm1 ~]# 

查看现有的物理卷pvdisplay

root@vm1 ~]# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos
  PV Size               <49.00 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              12543
  Free PE               1
  Allocated PE          12542
  PV UUID               Nycf5w-dBRn-FF79-c1cw-8JoR-UgwU-Utqq29
   
[root@vm1 ~]#

将分区/dev/sdb1转化为物理卷

[root@vm1 ~]# pvcreate /dev/sdb1
WARNING: xfs signature detected on /dev/sdb1 at offset 0. Wipe it? [y/n]: y
  Wiping xfs signature on /dev/sdb1.
  Physical volume "/dev/sdb1" successfully created

再次查看物理卷

[root@vm1 ~]# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos
  PV Size               <49.00 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              12543
  Free PE               1
  Allocated PE          12542
  PV UUID               Nycf5w-dBRn-FF79-c1cw-8JoR-UgwU-Utqq29
   
  "/dev/sdb1" is a new physical volume of "<20.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name               
  PV Size               <20.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               88Drki-HMg3-M9oH-L9L8-r5lH-XhPZ-YSLtOT

查看逻辑卷组的情况vgdisplay,关注 VG Name和 Free PE / Size,可以看到已无剩余的自由空间

[root@vm1 ~]# vgdisplay 
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <49.00 GiB
  PE Size               4.00 MiB
  Total PE              12543
  Alloc PE / Size       12542 / 48.99 GiB
  Free  PE / Size       1 / 4.00 MiB
  VG UUID               SCj6qw-FNuK-9qwO-6ozh-LEsp-F3tp-bNzop1

将刚才创建的物理卷添加到逻辑卷组(centos)中

[root@vm1 ~]# vgextend centos /dev/sdb1
  Volume group "centos" successfully extended
[root@vm1 ~]# vgdisplay 
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               68.99 GiB
  PE Size               4.00 MiB
  Total PE              17662
  Alloc PE / Size       12542 / 48.99 GiB
  Free  PE / Size       5120 / 20.00 GiB
  VG UUID               SCj6qw-FNuK-9qwO-6ozh-LEsp-F3tp-bNzop1

可以看到有68GB了,lvdisplay 查看逻辑卷情况,主要看 LV Path LV Size

root@vm1 ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                84EjeW-BKL6-HPkx-EsFq-OH2s-xeDj-jfl8Px
  LV Write Access        read/write
  LV Creation host, time localhost, 2022-10-24 22:25:35 +0800
  LV Status              available
  # open                 1
  LV Size                46.99 GiB
  Current LE             12030
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

开始扩容 /dev/centos/root

[root@vm1 ~]# lvextend -L +20G /dev/centos/root 
  Size of logical volume centos/root changed from 46.99 GiB (12030 extents) to 66.99 GiB (17150 extents).
  Logical volume centos/root successfully resized.
[root@vm1 ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                84EjeW-BKL6-HPkx-EsFq-OH2s-xeDj-jfl8Px
  LV Write Access        read/write
  LV Creation host, time localhost, 2022-10-24 22:25:35 +0800
  LV Status              available
  # open                 1
  LV Size                66.99 GiB
  Current LE             17150
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

可以看到扩容上了,此时注意,并非实际的挂载容量已经改变,依然是47G

[root@vm1 ~]# df -hT
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  894M     0  894M    0% /dev
tmpfs                   tmpfs     910M     0  910M    0% /dev/shm
tmpfs                   tmpfs     910M   11M  900M    2% /run
tmpfs                   tmpfs     910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        47G  5.3G   42G   12% /
/dev/sda1               xfs      1014M  185M  830M   19% /boot
tmpfs                   tmpfs     182M   20K  182M    1% /run/user/0
/dev/sr0                iso9660   4.5G  4.5G     0  100% /run/media/root/CentOS 7 x86_64
[root@vm1 ~]# 

挂载:xfs_growfs /dev/centos/root ; 磁盘类型为xfs 所以使用:xfs_frowfs 命令 磁盘类型为ext4类型则使用:resize2fs 命令【 resize2fs /dev/centos/root】

root@vm1 ~]# xfs_growfs /dev/centos/root 
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=3079680 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=12318720, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=6015, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 12318720 to 17561600

[root@vm1 ~]# df -hT
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  894M     0  894M    0% /dev
tmpfs                   tmpfs     910M     0  910M    0% /dev/shm
tmpfs                   tmpfs     910M   11M  900M    2% /run
tmpfs                   tmpfs     910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        67G  5.3G   62G    8% /
/dev/sda1               xfs      1014M  185M  830M   19% /boot
tmpfs                   tmpfs     182M   20K  182M    1% /run/user/0
/dev/sr0                iso9660   4.5G  4.5G     0  100% /run/media/root/CentOS 7 x86_64

此时,扩容成功了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值