CentOS 调整分区容量大小

本文适用于CentOS 6,其他系统未经测试


目的:

缩小/home目录大小(193G → \rightarrow 50G),将剩余容量扩展给/根目录(193G → \rightarrow 336G)

命令介绍

[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol01	193G  5.4G  177G   3% / # 根目录信息
tmpfs                  16G   68K   16G   1% /dev/shm
/dev/sdb1             477M   71M  381M  16% /boot
/dev/mapper/VolGroup-LogVol00	193G  202M  183G   1% /home # /home目录信息
1、 df 命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计
从左到右每一列分别代表: 文件系统的名称总磁盘空间大小已使用空间大小可用空间大小使用的磁盘空间百分比"安装在"指定的文件系统的挂载点
2、 umount 命令用于卸载已经加载的文件系统
例:卸载/home分区(命令参数可以是 系统名称挂载点
# 通过挂载点卸载
umount /home
# 通过系统名称卸载
umount /dev/mapper/VolGroup-LogVol00
3、 e2fsck 命令用于检查文件系统是否正常工作
-a: 检查,如发现问题会自动修复
-f : 强制检查
# 检查 /home 分区是否正常
e2fsck -f /dev/mapper/VolGroup-LogVol00
4、 resize2fs 命令用于调整 ext2 文件系统的空间大小
-p: 为了每一个resize2fs操作打印一个百分比完成条,用户可以保持注意程序正在运作的动态
# 调整 /home 分区为50G
resize2fs -p /dev/mapper/VolGroup-LogVol00 50G
5、 mount 命令用于加载文件系统到指定的加载点
例:重新挂载/home分区(命令参数可以是 系统名称挂载点
# 挂载 /home分区
mount /home
6、 lvreduce 命令用于减少指定的LVM逻辑卷的空间大小
-L -10G: 缩小分区 10G
-L +10G: 扩展分区 10G
-L 10G: 扩展 或 缩小 10G
# 缩小 /home 的空间到50G
lvreduce -L 50G /dev/mapper/VolGroup-LogVol00

介绍LVM

LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性

LVM结构:
磁盘 => 分区 => PV => VG => LV => 文件系统
扩展分区:
先扩LV再扩文件系统
lvextend -L +100M /dev/mapper/VolGroup-LogVol00 # 逻辑卷的大小增加100M
resize2fs /dev/mapper/VolGroup-LogVol00 # 文件系统增到逻辑卷的大小
缩小分区:
先减文件系统再减LV
resize2fs /dev/mapper/VolGroup-LogVol00 100M # 减小文件系统到100M
lvreduce -L 100M /dev/mapper/VolGroup-LogVol00 # 减小逻辑卷到100M
  • 修改LV及文件系统的大小,必须先将LV及文件系统卸载(umount),然后才可以操作

完整操作记录

  • 命令加了注释,方便大家理解,实际操作的时候请勿连同注释一起复制
[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol01	193G  5.4G  177G   3% /
tmpfs                  16G   68K   16G   1% /dev/shm
/dev/sdb1             477M   71M  381M  16% /boot
/dev/mapper/VolGroup-LogVol00	193G  202M  183G   1% /home
[root@localhost ~]# umount /home/ # 卸载挂载分区
[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol01	193G  5.4G  177G   3% /
tmpfs                  16G   68K   16G   1% /dev/shm
/dev/sdb1             477M   71M  381M  16% /boot
[root@localhost ~]# e2fsck -f /dev/mapper/VolGroup-LogVol00 # 检查分区文件的错误性,-f 即使文件系统没有错误迹象,仍强制地检查正确性
e2fsck 1.41.12 (17-May-2010)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/mapper/VolGroup-LogVol00: 21/12804096 files (9.5% non-contiguous), 887832/51200000 blocks
[root@localhost ~]# resize2fs -p /dev/mapper/VolGroup-LogVol00 50G # 调整分区大小为50G
resize2fs 1.41.12 (17-May-2010)
Resizing the filesystem on /dev/mapper/VolGroup-LogVol00 to 13107200 (4k) blocks.
Begin pass 2 (max = 32770)
Relocating blocks             XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 1563)
Scanning inode table          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 4 (max = 9)
Updating inode references     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/mapper/VolGroup-LogVol00 is now 13107200 blocks long.

[root@localhost ~]# mount /home # 重新挂载分区
[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol01	193G  5.4G  177G   3% /
tmpfs                  16G   68K   16G   1% /dev/shm
/dev/sdb1             477M   71M  381M  16% /boot
/dev/mapper/VolGroup-LogVol00	50G  194M   47G   1% /home
[root@localhost ~]# lvreduce -L 50G /dev/mapper/VolGroup-LogVol00 # 缩小空间到50G。使用lvreduce指令用于减少LVM逻辑卷占用的空间大小。可能会删除逻辑卷上已有的数据,所以在操作前必须进行确认。记得输入 “y” 
  WARNING: Reducing active and open logical volume to 50.00 GiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce VolGroup/LogVol00? [y/n]: y
  Size of logical volume VolGroup/LogVol00 changed from 195.31 GiB (50000 extents) to 50.00 GiB (12800 extents).
  Logical volume LogVol00 successfully resized.
[root@localhost ~]# vgdisplay # 查看剩余空间
  --- Volume group ---
  VG Name               VolGroup
  System ID             
  Format                lvm2
  Metadata Areas        2
  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                2
  Act PV                2
  VG Size               409.38 GiB
  PE Size               4.00 MiB
  Total PE              104802
  Alloc PE / Size       67602 / 264.07 GiB # 已经分配的空间大小
  Free  PE / Size       37200 / 145.31 GiB # 可分配的空间大小
  VG UUID               dmX651-3dqe-YCyO-qUYl-ZBX6-1BZe-b7xkVD
   
[root@localhost ~]# lvextend -L +145.31G /dev/mapper/VolGroup-LogVol01 # 分配可用空间
  Rounding size to boundary between physical extents: 145.31 GiB.
  Size of logical volume VolGroup/LogVol01 changed from 195.31 GiB (50000 extents) to 340.62 GiB (87200 extents).
  Logical volume LogVol01 successfully resized.
[root@localhost ~]# resize2fs -p /dev/mapper/VolGroup-LogVol01 # 分区重设大小
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/VolGroup-LogVol01 is mounted on /; on-line resizing required
old desc_blocks = 13, new_desc_blocks = 22
Performing an on-line resize of /dev/mapper/VolGroup-LogVol01 to 89292800 (4k) blocks.
The filesystem on /dev/mapper/VolGroup-LogVol01 is now 89292800 blocks long.

[root@localhost ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol01	336G  5.4G  313G   2% /
tmpfs                  16G   68K   16G   1% /dev/shm
/dev/sdb1             477M   71M  381M  16% /boot
/dev/mapper/VolGroup-LogVol00	50G  194M   47G   1% /home
[root@localhost ~]# 

你可能感兴趣的:(centos)