yoyo 发表于 2017-11-21 22:43:39

CentOS Linux如何无损调整分区大小(XFS文件系统)

系统环境: CentOS 7.2 64-bit
情况:
/home:873GB
/:50GB
/ 分区不够用
思路:
把home分区的空间划一部分到root分区

操作:
1、通过df -h查看分区情况

# df -h
Filesystem         SizeUsed Avail Use% Mounted on
/dev/mapper/cl-root   50G   31G   20G62% /
devtmpfs             7.8G   07.8G   0% /dev
tmpfs                7.8G   07.8G   0% /dev/shm
tmpfs                7.8G817M7.0G11% /run
tmpfs                7.8G   07.8G   0% /sys/fs/cgroup
/dev/mapper/cl-home   873G   31M   873G1% /home
/dev/sda2         1014M131M884M13% /boot
/dev/sda1            200M9.5M191M   5% /boot/efi
tmpfs                1.6G   01.6G   0% /run/user/0


2、lvdisplay 查看各分区的信息

# lvdisplay
--- Logical volume ---
LV Path                /dev/cl/swap
LV Name                swap
VG Name                cl
LV UUID                DDpjMZ-SFwL-IVud-cewL-yqeK-TFqe-tAS9b4
LV Write Access      read/write
LV Creation host, time localhost.localdomain, 2017-10-17 16:48:55 +0800
LV Status            available
# open               2
LV Size                7.88 GiB
Current LE             2016
Segments               1
Allocation             inherit
Read ahead sectors   auto
- currently set to   256
Block device         253:1

--- Logical volume ---
LV Path                /dev/cl/home
LV Name                home
VG Name                cl
LV UUID                21q7cu-zJyg-R6W5-gpEt-ctb3-CqH7-TyoGOH
LV Write Access      read/write
LV Creation host, time localhost.localdomain, 2017-10-17 16:48:56 +0800
LV Status            available
# open               1
LV Size                872.43 GiB
Current LE             223343
Segments               1
Allocation             inherit
Read ahead sectors   auto
- currently set to   256
Block device         253:2

--- Logical volume ---
LV Path                /dev/cl/root
LV Name                root
VG Name                cl
LV UUID                paz3dp-GQ9T-VqAT-gPGT-Q2Go-tMro-zSpDLQ
LV Write Access      read/write
LV Creation host, time localhost.localdomain, 2017-10-17 16:48:59 +0800
LV Status            available
# open               1
LV Size                50.00 GiB
Current LE             12800
Segments               1
Allocation             inherit
Read ahead sectors   auto
- currently set to   256
Block device         253:0



3、减少/dev/centos/home的空间

# 命令设置 /dev/centos/home 分区 50G空间
# lvreduce -L 50G /dev/cl/home
WARNING: Reducing active logical volume to 50.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce cl/home? : y
Size of logical volume cl/home changed from 872.43 GiB (223343 extents) to 50.00 GiB (12800 extents).
Logical volume cl/home successfully resized.

4、增加/dev/centos/root的空间

# lvextend -l +100%FREE /dev/cl/root
Size of logical volume cl/root changed from 50.00 GiB (12800 extents) to 872.44 GiB (223344 extents).
Logical volume cl/root successfully resized.

5、扩展XFS文件空间大小

# xfs_growfs /dev/mapper/cl-root
meta-data=/dev/mapper/cl-root    isize=512    agcount=4, agsize=3276800 blks
         =                     sectsz=4096attr=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=4096sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 13107200 to 228704256


到此/dev/centos/root的扩展结束,不过还有一些后遗症,调整后的/dev/mapper/cl-home 显示的大小一直不正常,这样也会导致重启的时候无法根据/etc/fstab里面的规则挂载正确的/home,直接进入紧急模式(welcome to emergency mode),由于我们/home里面没有什么文件,所以我们用格式化的办法,进行了修复。

# mkfs.xfs /dev/mapper/cl-home
这样再卸载和挂载就没有问题了
# umount /home

# mount /home

至此整个的调整分区圆满结束。

留下一个小问题做思考,就是如果同时想保留/dev/mapper/centos-home里面的数据的话,如何无损调整分区?

yoyo 发表于 2017-11-27 15:28:55

http://bbs.cuwww.com/thread-17540-1-1.html

这里是EXT3/EXT4文件系统的分区调整方法

yoyo 发表于 2018-1-17 17:46:43

一直没有找到把调整小了的分区(/dev/mapper/centos-home)里面的数据完整保留下来的办法,谁有办法,请在下面留言。
页: [1]
查看完整版本: CentOS Linux如何无损调整分区大小(XFS文件系统)