centos 扩展root根分区的大小

本文详细介绍了如何在Linux环境下调整VolGroup-lv_home分区大小至125GB,将剩余空间分配给VolGroup-lv_root分区。通过执行一系列命令,包括卸载、调整分区大小、重新挂载及利用lvreduce指令来实现空间优化,最终验证调整结果。操作过程中还涉及了使用e2fsck、resize2fs和lvextend等工具,确保磁盘空间的有效管理和合理分配。

目标:将VolGroup-lv_home缩小到125G,并将剩余的空间添加给VolGroup-lv_root
 
1.首先查看磁盘使用情况
[root@localhost ~]# df -h
文件系统    容量  已用 可用  已用% 挂载点    
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_hostname-lv_root
                       20G  8.7G  9.6G  48% /
tmpfs                 6.9G   72K  6.9G   1% /dev/shm
/dev/sda1             485M   38M  422M   9% /boot
/dev/mapper/vg_hostname-lv_home
                      171G  110G   53G  68% /home
/dev/sdb5             2.0T  805G  1.1T  43% /xxxx_sdb5
/dev/sdc5             1.7T  197M  1.6T   1% /xxxx_sdc5

 
2、卸载/home
[root@localhost ~]# umount /home
umount: /home: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))

umount /home 如果提示无法卸载,则是有进程占用/home,使用如下命令来终止占用进程:
[root@localhost ~]# fuser -m /home  
/home:               31112m
top
kill -9 31112
 
3、调整分区大小
[root@localhost ~]# resize2fs -p /dev/mapper/vg_hostname-lv_home 125G
resize2fs 1.41.12 (17-May-2010)
Please run 'e2fsck -f /dev/mapper/vg_hostname-lv_home' first.

如果提示运行“e2fsck -f /dev/mapper/VolGroup-lv_home”,则执行相关命令:
[root@localhost ~]# e2fsck -f /dev/mapper/vg_hostname-lv_home 然后重新执行命令:
[root@localhost ~]# resize2fs -p /dev/mapper/vg_hostname-lv_home 125G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/mapper/vg_hostname-lv_home to 32768000 (4k) blocks.
Begin pass 2 (max = 7110485)
Relocating blocks             XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 1385)
Scanning inode table          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 4 (max = 3237)
Updating inode references     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/mapper/vg_hostname-lv_home is now 32768000 blocks long.

注:resize2fs 为重新设定磁盘大小,只是重新指定一下大小,并不对结果有影响,需要下面lvreduce的配合
 
4、挂载上/home,查看磁盘使用情况
[root@localhost ~]# mount /home
[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_hostname-lv_root
                       20G  8.7G  9.6G  48% /
tmpfs                 6.9G   72K  6.9G   1% /dev/shm
/dev/sda1             485M   38M  422M   9% /boot
/dev/sdb5             2.0T  805G  1.1T  43% /xxxx_sdb5
/dev/sdc5             1.7T  197M  1.6T   1% /xxxx_sdc5
/dev/mapper/vg_hostname-lv_home
                      124G  110G  7.4G  94% /home

 
5、设置空闲空间
使用lvreduce指令用于减少LVM逻辑卷占用的空间大小。可能会删除逻辑卷上已有的数据,所以在操作前必须进行确认。记得输入 “y”
[root@localhost ~]# lvreduce -L 125G /dev/mapper/vg_hostname-lv_home
  WARNING: Reducing active and open logical volume to 125.00 GiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lv_home? [y/n]: y
  Reducing logical volume lv_home to 125.00 GiB
  Logical volume lv_home successfully resized

注:lvreduce -L 125G的意思为设置当前文件系统为125G,如果lvreduce -l 125G是指从当前文件系统上减少125G
使用lvreduce减小逻辑卷的大小。注意:减小后的大小不能小于文件的大小,否则会丢失数据。
 
可以使用vgdisplay命令等查看一下可以操作的大小。也可以是用fdisk -l命令查看详细信息。
[root@localhost ~]# vgdisplay
  --- Volume group ---
  VG Name               vg_hostname
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               3
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               199.51 GiB
  PE Size               4.00 MiB
  Total PE              51074
  Alloc PE / Size       38758 / 151.40 GiB
  Free  PE / Size       12316 / 48.11 GiB
  VG UUID               zk1eHH-QXe8-sdm8-cKfF-StSl-yffz-Dfe9sF
注:vgdisplay为显示LVM卷组的元数据信息
 
6.把闲置空间挂在到根目录下
[root@localhost ~]# lvextend -L +48G /dev/mapper/vg_hostname-lv_root
  Extending logical volume lv_root to 67.53 GiB
  Logical volume lv_root successfully resized
注:lvextend -L +48G为在文件系统上增加48G
[root@localhost ~]# resize2fs -p /dev/mapper/vg_hostname-lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/vg_hostname-lv_root is mounted on /; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 5
Performing an on-line resize of /dev/mapper/vg_hostname-lv_root to 17702912 (4k) blocks.
The filesystem on /dev/mapper/vg_hostname-lv_root is now 17702912 blocks long.

7、检查调整结果
[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_hostname-lv_root
                       67G  8.7G   55G  14% /
tmpfs                 6.9G   72K  6.9G   1% /dev/shm
/dev/sda1             485M   38M  422M   9% /boot
/dev/sdb5             2.0T  805G  1.1T  43% /xxxx_sdb5
/dev/sdc5             1.7T  197M  1.6T   1% /xxxx_sdc5
/dev/mapper/vg_hostname-lv_home
                      124G  110G  7.4G  94% /home

<think>好的,我现在需要帮用户解决在CentOS系统中扩展分区磁盘的问题。用户提到使用fdisk或lvextend,说明他们可能对这两种工具有所了解,但不确定具体步骤。首先,我得回忆一下CentOS磁盘管理的相关知识,尤其是关于标准分区和LVM分区的区别,因为不同的分区方式扩容步骤不同。 根据用户提供的引用内容,引用[1]和引用[2]提到了使用fdisk重新分区以及LVM下的管理。用户可能已经尝试过查看分区信息,但不确定后续步骤。我需要先确定用户的分区类型是标准分区还是LVM,这会影响后续操作。 首先,应该指导用户使用lsblk或df -Th来查看当前分区情况。比如,标准分区在df输出中可能直接显示/dev/sdaX,而LVM分区则显示为/dev/mapper/xxx。比如引用[2]中的例子,LVM分区显示为/dev/mapper/centos-root,而标准分区是/dev/sda4等。 接下来,如果用户使用的是标准分区,可能需要使用fdisk删除旧分区并创建新分区,但这样有数据丢失的风险,所以需要提醒备份。然后调整文件系统大小,比如使用resize2fs或xfs_growfs。但如果是LVM,步骤就不同,可以使用lvextend扩展逻辑卷,再调整文件系统。 需要注意的是,XFS文件系统和ext4在调整时命令不同,xfs用xfs_growfs,而ext用resize2fs。用户可能不清楚自己文件系统的类型,所以步骤中需要包含如何检查文件系统类型的部分。 另外,用户可能对分区调整的具体命令不熟悉,比如使用fdisk时,删除分区后新建分区是否保留相同起始扇区,否则可能导致数据丢失。这需要详细说明步骤,比如在fdisk中使用删除分区但不保存,然后新建分区时保持起始扇区一致,这样不会丢失数据,但需要确认内核重新读取分区表,可能需要partprobe或重启。 对于LVM的情况,需要确认VG是否有足够的空闲空间,如果没有,可能需要先扩展物理卷,再扩展VG,最后扩展LV。用户可能没有意识到需要先检查PV和VG的空间,所以步骤里要包含vgdisplay或vgs命令。 此外,用户的问题可能涉及根分区扩容,这在操作时需要特别小心,可能需要使用Live CD或救援模式,尤其是在调整标准分区时。但如果是LVM,可能可以在线扩容,无需重启。 最后,生成相关问题时要考虑用户可能的后续疑问,比如如何检查分区类型、不同文件系统的处理、备份方法等,这些都能帮助用户更全面地了解磁盘管理。</think>在CentOS系统中扩展分区磁盘需要根据存储管理方式选择对应方法,以下是两种常见场景的操作指南: --- ### 一、标准分区扩展(使用fdisk) **适用场景**:直接通过物理分区管理,未使用LVM逻辑卷管理[^2] 1. **查看分区信息** ```bash lsblk fdisk -l /dev/vda #替换为实际磁盘设备名 ``` 确认磁盘总容量和现有分区情况,注意**起始扇区位置**。 2. **备份数据** 操作分区可能导致数据丢失,建议提前通过`dd`或`rsync`备份关键数据。 3. **删除并重建分区** ```bash fdisk /dev/vda ``` - 输入`d`删除需扩展分区(如`/dev/vda2`) - 输入`n`新建分区,**起始扇区必须与原分区一致**(通过`fdisk -l`查看原值) - 输入`t`设置分区类型(需与原类型一致) - 输入`w`保存修改 4. **刷新分区表** ```bash partprobe /dev/vda # 或重启系统 ``` 5. **扩展文件系统** ```bash # XFS文件系统 xfs_growfs /mount_point # ext4文件系统 resize2fs /dev/vda2 ``` --- ### 二、LVM逻辑卷扩展(使用lvextend) **适用场景**:使用LVM管理的分区 1. **确认逻辑卷路径** ```bash df -Th | grep -i '/mount_point' # 示例输出:/dev/mapper/centos-root xfs 32G 3.1G 29G 8% / ``` 2. **扩展物理卷(如需)** 若磁盘已扩容但未分配空间: ```bash fdisk /dev/vda #创建新分区并设置为LVM类型(8e) pvcreate /dev/vda3 #将新分区初始化为物理卷 vgextend centos /dev/vda3 #扩展卷组 ``` 3. **扩展逻辑卷** ```bash lvextend -L +20G /dev/mapper/centos-root #增加20G # 或使用全部剩余空间 lvextend -l +100%FREE /dev/mapper/centos-root ``` 4. **调整文件系统** ```bash # XFS文件系统 xfs_growfs /mount_point # ext4文件系统 resize2fs /dev/mapper/centos-root ``` --- ### 关键验证命令 ```bash lsblk #查看块设备层级 vgs; pvs; lvs #检查LVM组件状态 df -Th #验证文件系统容量 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值