linux-磁盤縮容


由於項目規定程序目錄在根目錄,在安裝系統時沒有及時規划分區,導致根分區空間太小,現決定對根分區進行擴容,准備將home目錄所在的分區進行縮容,將縮容的空間擴容到根分區.

1.查看現有磁盤分區

[root@service1 cloud]# df -Th
Filesystem              Type      Size  Ued Avail Use% Mounted on
/dev/mapper/centos-root xfs        50G 1006M   49G   2% /
devtmpfs                devtmpfs  7.8G     0  7.8G   0% /dev
tmpfs                   tmpfs     7.8G     0  7.8G   0% /dev/shm
tmpfs                   tmpfs     7.8G  9.2M  7.8G   1% /run
tmpfs                   tmpfs     7.8G     0  7.8G   0% /sys/fs/cgroup
/dev/xvda1              xfs      1014M  145M  870M  15% /boot
/dev/mapper/centos-home xfs        42G   33M   42G   1% /home
tmpfs                   tmpfs     1.6G     0  1.6G   0% /run/user/0

2.卸載磁盤home目錄的掛載分區

[root@service1 cloud]# umount /dev/mapper/centos-home 

3.將卸載的磁盤分區重新進行格式化成ext4格式.

[root@service1 cloud]# mkfs.ext4 /dev/mapper/centos-home 
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
2695168 inodes, 10778624 blocks
538931 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2160066560
329 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done 

4.強制檢查 /dev/mapper/centos-home 是否正常,如果有異常便自動修復

[root@service1 cloud]# e2fsck -f /dev/mapper/centos-home 
e2fsck 1.42.9 (28-Dec-2013)
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/centos-home: 11/2695168 files (0.0% non-contiguous), 214252/10778624 block

5.resize2fs擴展文件系統,將/dev/mapper/centos-home文件系統指定為20G大小.

[root@service1 cloud]# resize2fs /dev/mapper/centos-home 20G
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/mapper/centos-home to 5242880 (4k) blocks.
The filesystem on /dev/mapper/centos-home is now 5242880 blocks long.

6.掛載文件系統到home目錄,我們發現為20G.

[root@service1 cloud]# mount /dev/mapper/centos-home /home/
[root@service1 cloud]# df -Th
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs        50G 1006M   49G   2% /
devtmpfs                devtmpfs  7.8G     0  7.8G   0% /dev
tmpfs                   tmpfs     7.8G     0  7.8G   0% /dev/shm
tmpfs                   tmpfs     7.8G  9.2M  7.8G   1% /run
tmpfs                   tmpfs     7.8G     0  7.8G   0% /sys/fs/cgroup
/dev/xvda1              xfs      1014M  145M  870M  15% /boot
tmpfs                   tmpfs     1.6G     0  1.6G   0% /run/user/0
/dev/mapper/centos-home ext4       20G   45M   19G   1% /home

7.lvreduce縮小邏輯卷,/dev/mapper/centos-home文件系統對應的邏輯卷為/dev/mapper/centos-home,縮小邏輯區22G。

[root@service2 ~]# lvreduce -L 22G /dev/mapper/centos-home
  WARNING: Reducing active and open logical volume to 22.00 GiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce centos/home? [y/n]: y
  Size of logical volume centos/home changed from <41.12 GiB (10526 extents) to 22.00 GiB (5632 extents).
  Logical volume centos/home successfully resized.

8.查看卷組

[root@service1 cloud]# vgs
  VG     #PV #LV #SN Attr   VSize   VFree 
  centos   1   3   0 wz--n- <99.00g 19.12g

9. lvextend是擴展邏輯卷,將縮小的22G邏輯卷擴展到根目錄分區的邏輯卷中.

[root@service1 cloud]# lvextend -L +19G /dev/mapper/centos-root 
  Size of logical volume centos/root changed from 50.00 GiB (12800 extents) to 69.00 GiB (17664 extents).
  Logical volume centos/root successfully resized.

10.因為根目錄的文件系統類型為xfs文件類型,使用xfs_growfs同步根分區.

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

#查看后發現,根分區的目錄以擴展了19G.
#由於home目錄也是xfs文件類型,所以需要將home目錄卸載到重新格式化成xfs,然后再掛載即可.

#格式化為xfs文件系統並重新掛載.
mkfs.xfs -f /dev/mapper/centos-home
mount /dev/mapper/centos-home /home
#
[root@service1 cloud]# df -Th
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs        69G 1006M   68G   2% /
devtmpfs                devtmpfs  7.8G     0  7.8G   0% /dev
tmpfs                   tmpfs     7.8G     0  7.8G   0% /dev/shm
tmpfs                   tmpfs     7.8G  9.2M  7.8G   1% /run
tmpfs                   tmpfs     7.8G     0  7.8G   0% /sys/fs/cgroup
/dev/xvda1              xfs      1014M  145M  870M  15% /boot
tmpfs                   tmpfs     1.6G     0  1.6G   0% /run/user/0
/dev/mapper/centos-home xfs        22G   33M   22G   1% /home
[root@service1 cloud]# 

 

參考文檔:https://www.cnblogs.com/happy-king/p/9070496.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM