CentOS Linux如何无损调整分区大小(XFS文件系统)
来源:中国U网 日期:2018-01-17 类别:服务器问题 点击:9066
“Windows 2008以前,一般都没有什么好办法在不重装系统的情况下调整分区,很多都是重装或者用像Patition Tool这样的工具来操作,稍不留神还容易出错;Windows 2008系统自己加入了调整分区的功能,相对来说就容易多了。但是一直都没有接触过CentOS Linux系统不重装的情况下调整分区的,今天研究了一下,实现了Linux XFS文件系统上的分区调整。”
系统环境: CentOS 7.2 64-bit
情况:
/home:873GB
/:50GB
/ 分区不够用
分区类型:XFS (分区类别可以用命令blkid 来查看,输出结果第一行最后就可以看到)
思路:
把home分区的空间划一部分到root分区
操作:
1、通过df -h查看分区情况
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl-root 50G 31G 20G 62% /
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 817M 7.0G 11% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/mapper/cl-home 873G 31M 873G 1% /home
/dev/sda2 1014M 131M 884M 13% /boot
/dev/sda1 200M 9.5M 191M 5% /boot/efi
tmpfs 1.6G 0 1.6G 0% /run/user/0
2、lvdisplay 查看各分区的信息
[root@localhost ~]# 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空间
[root@localhost ~]# 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/n]: 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的空间
[root@localhost ~]# 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文件空间大小
[root@localhost ~]# xfs_growfs /dev/mapper/cl-root
meta-data=/dev/mapper/cl-root isize=512 agcount=4, agsize=3276800 blks
= sectsz=4096 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=4096 sunit=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里面没有什么文件,所以我们用格式化的办法,进行了修复。
[root@localhost ~]# mkfs.xfs /dev/mapper/cl-home
这样再卸载和挂载就没有问题了
[root@localhost ~]# umount /home
[root@localhost ~]# mount /home
至此整个的调整分区圆满结束。
留下一个小问题做思考,就是如果同时想保留/dev/mapper/centos-home里面的数据的话,如何无损调整分区?
2018年1月17日更新:暂时没有找到把调整小了的分区(/dev/mapper/centos-home)里面的数据完整保留下来的办法。
关键词:CentOS调整分区,Linux调整分区,XFS调整分区
CentOS Linux如何无损调整分区大小(XFS文件系统)为中国U网原创文章,在不经过允许的情况下,禁止用于商业用途或随意转载,转载请注明出处,并加上本页链接地址:
http://www.cuwww.com/help/detail-78.html
CentOS Linux如何无损调整分区大小(XFS文件系统)为中国U网原创文章,在不经过允许的情况下,禁止用于商业用途或随意转载,转载请注明出处,并加上本页链接地址:
http://www.cuwww.com/help/detail-78.html
服务器推荐
香港服务器租用:
E3-1230 / 8G / 1TB / 10M = 700元
美国洛杉矶服务器租用:
i3-4130 / 4G / 1TB / 30M=500元
荷兰服务器租用:
E3-1230/8G/4x1T/1G/100TB=680元
瑞典斯德哥尔摩服务器租用:
E3-1240 / 16G / 1T或250GB SSD / 1Gbps=950元
香港服务器租用:
E3-1230 / 8G / 1TB / 10M = 700元
美国洛杉矶服务器租用:
i3-4130 / 4G / 1TB / 30M=500元
荷兰服务器租用:
E3-1230/8G/4x1T/1G/100TB=680元
瑞典斯德哥尔摩服务器租用:
E3-1240 / 16G / 1T或250GB SSD / 1Gbps=950元
- 宝塔安装PHP的Swoole扩展的时候,CentOS 7提示No package 'libbrotlienc' found的解决方法
- ModuleNotFoundError: No module named 'PIL'解决方法
- 在Linux服务器上手动生成自签名证书
- Python数据类型中比较有趣的事情
- CentOS Linux下更换为阿里云的源repo
- Linux上安装宝塔BT面板企业版破解版(开心版9.0.0/9.1.0/9.2.0)
- Linux上如何卸载宝塔(BT)面板?
- 宝塔(BT)忘记BasicAuth身份验证密码怎么办?
- Windows11家庭版 出现身份验证错误。要求的函数不受支持,这可能是由于 CredSSP 加密数据库修正 错误解决办法
- 宝塔(BT)面板打不开,但网站可以打开的解决办法
- 如何调整Linux系统的inode大小?
- 如何在小米手机澎湃OS(Xiaomi Hyper OS)上安装Google Play Store