Centos/Linux下调整分区大小(以home和根分区为例)

在安装新系统的时候,有时候无法预估或者说错误的划分了分区大小,经常会致使咱们后面的操做出现极大地不方便,好比某个分区分的过小了,致使
软件安装的时候会报安装空间不够,这就很麻烦。在这里我就记录一下错误分区后对home和根分区存储空间大小调整的整个过程!
1.查看咱们机器现有的分区情况
注意红色框中的信息,这是咱们后面要更改的分区路径。
经过上面咱们能够发现根分区和home分区产生极大的不合理性,home分区太大了,因此这里咱们将对home分区缩小存储空间并把压缩的存储空间添加到root下面。
2.卸载咱们的home分区,并压缩咱们的home分区大小
3.这个时候咱们从新装载咱们的home目录,经过运行结果能够看到咱们将home分区压缩到20G
这样对home的压缩并从新装载就完成了,以下图:
4.咱们上面的三步将home的块处理好了,可是咱们空闲的硬盘并无添加到root下,因此下面的步骤就是将压缩出来的磁盘空间添加到root下:
这个从新加载和挂载的过程当中须要花费一点时间,不过咱们也能够在这段时间中不断的查看盘符的大小,这个时候咱们会发现root盘符的大小会一点点的增长上来,以下图:
从上图最后的结果咱们能够看出咱们将home中的空闲盘符压缩出来812G添加到了root下面,这样咱们的root空间就瞬间增长了。这样咱们的目的就达到了。
 
空间无损调整实例

状况:node

  1. home:500G
  2. root:50G
  3. root分区不够用

思路:把home分区的空间划一部分到root分区centos

?
1
2
3
4
5
6
7
8
# 设置home分区大小为200G,释放300G空间
$ lvreduce -L 200G /dev/centos/home
 
# 将空闲空间扩展到root分区
$ lvextend -l +100%FREE /dev/centos/root
 
# 使用XFS文件系统自带的命令集增长分区空间
$ xfs_growfs /dev/mapper/centos-root

实例bash

situation服务器

挂载在根目录的分区 /dev/mapper/centos-root 爆满,占用100%app

?
1
2
3
4
5
6
7
8
9
10
$ df -h
Filesystem        Size Used Avail Use% Mounted on
/dev/mapper/centos-root  50G  50G  19M 100% /
devtmpfs         32G   0  32G  0% /dev
tmpfs           32G   0  32G  0% /dev/shm
tmpfs           32G 2.5G  29G  8% /run
tmpfs           32G   0  32G  0% /sys/fs/cgroup
/dev/mapper/centos-home 476G  33M 476G  1% /home
/dev/sda1        497M 238M 259M 48% /boot
tmpfs          6.3G   0 6.3G  0% /run/user/0

analyzespa

挂载在根目录的分区空间过小,只有50G,而服务器 home 目录为很是用目录,挂在了近500G的空间。.net

思路:从 centos-home 分区划出300G空间到 centos-root 分区。3d

operationcode

1.查看各分区信息htm

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$ lvdisplay
--- Logical volume ---
LV Path        /dev/centos/home
LV Name        home
VG Name        centos
LV UUID        1fAt1E-bQsa-1HXR-MCE2-5VZ1-xzBz-iI1SLv
LV Write Access    read /write
LV Creation host, time localhost, 2016-10-26 17:23:47 +0800
LV Status       available
# open         0
LV Size        475.70 GiB
Current LE       121778
Segments        1
Allocation       inherit
Read ahead sectors   auto
- currently set to   256
Block device      253:2
 
--- Logical volume ---
LV Path        /dev/centos/root
LV Name        root
VG Name        centos
LV UUID        lD64zY-yc3Z-SZaB-dAjK-03YM-2gM8-pfj4oo
LV Write Access    read /write
LV Creation host, time localhost, 2016-10-26 17:23:48 +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

2.减小/home分区空间

?
1
2
3
4
5
6
7
8
# 释放 /dev/centos/home 分区 300G 的空间
# 命令设置 /dev/centos/home 分区 200G空间
$ lvreduce -L 200G /dev/centos/home
WARNING: Reducing active logical volume to 200.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 475.70 GiB (121778 extents) to 200.00 GiB (51200 extents).
  Logical volume centos /home successfully resized.

3.增长/root分区空间

?
1
2
3
$ lvextend -l +100%FREE /dev/centos/root
Size of logical volume centos /root changed from 50.06 GiB (12816 extents) to 325.76 GiB (83394 extents).
Logical volume centos /root successfully resized.

4.扩展XFS文件空间大小

?
1
2
3
4
5
6
7
8
9
10
11
$ xfs_growfs /dev/mapper/centos-root
meta-data= /dev/mapper/centos-root isize=256  agcount=4, agsize=3276800 blks
      =            sectsz=512  attr=2, projid32bit=1
      =            crc=0    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=0
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 85395456
相关文章
相关标签/搜索