Linux下调整根目录和home目录的空间大小教程

作者:admin 发布:2019-08-12 浏览:3027次

当安装完 Linux 操作系统,发现磁盘分区大小错误,或者后期使用过程发现 /home 还剩余很多空间,/ 下空间不足,需要将 /home 下空间重新分配给 /目录下,方法如下:

1、查看分区空间和格式

[root@mongodb-1 ~]# df -hT
文件系统                类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root xfs        50G   49G  1.4G   98% /
devtmpfs                devtmpfs  5.8G     0  5.8G    0% /dev
tmpfs                   tmpfs     5.8G     0  5.8G    0% /dev/shm
tmpfs                   tmpfs     5.8G  602M  5.3G   11% /run
tmpfs                   tmpfs     5.8G     0  5.8G    0% /sys/fs/cgroup
/dev/sda1               xfs      1014M  153M  862M   16% /boot
/dev/mapper/centos-home xfs        44G   36M   44G    1% /home
tmpfs                   tmpfs     1.2G     0  1.2G    0% /run/user/0

这里我想要将 /home 的空闲空间分给 / 目录一部分


可以看到 /home 分区是 xfs 格式,这里特别注意

1)ext2/ext3/ext4文件系统的调整命令是resize2fs(增大和减小都支持)

lvextend -L 120G /dev/mapper/centos-home     //增大至120G
lvextend -L +20G /dev/mapper/centos-home     //增加20G
lvreduce -L 50G /dev/mapper/centos-home      //减小至50G
lvreduce -L -8G /dev/mapper/centos-home      //减小8G
resize2fs /dev/mapper/centos-home            //执行调整

2)xfs文件系统的调整命令是xfs_growfs(只支持增大)

lvextend -L 120G /dev/mapper/centos-home    //增大至120G
lvextend -L +20G /dev/mapper/centos-home    //增加20G
xfs_growfs /dev/mapper/centos-home          //执行调整

 

就是说:xfs文件系统只支持增大分区空间的情况,不支持减小的情况(切记!!!!!)。

硬要减小的话,只能在减小后将逻辑分区重新通过 mkfs.xfs 命令重新格式化才能挂载上,这样的话这个逻辑分区上原来的数据就丢失了。如果有重要文件,那这种方案就不能采用了~~~


这里我的 /home 下是没有数据的,所以仍然可以使用此方法。

2、卸载 /home 分区

[root@mongodb-1 /]# umount /home

查看分区

[root@mongodb-1 /]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   50G   49G  1.4G   98% /
devtmpfs                 5.8G     0  5.8G    0% /dev
tmpfs                    5.8G     0  5.8G    0% /dev/shm
tmpfs                    5.8G  602M  5.3G   11% /run
tmpfs                    5.8G     0  5.8G    0% /sys/fs/cgroup
/dev/sda1               1014M  153M  862M   16% /boot
tmpfs                    1.2G     0  1.2G    0% /run/user/0

卸载成功


3、将 /home 分区减小40G(根据自己实际情况设定大小) :

[root@mongodb-1 /]# lvreduce -L -40G /dev/mapper/centos-home
  WARNING: Reducing active logical volume to <3.12 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 <43.12 GiB (11038 extents) to <3.12 GiB (798 extents).
  Logical volume centos/home successfully resized.

因为 xfs文件系统不能执行分区减小的调整!所以这里我们要执行格式化操作,

[root@mongodb-1 /]# mkfs.xfs /dev/mapper/centos-home -f
meta-data=/dev/mapper/centos-home isize=512    agcount=4, agsize=204288 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=817152, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

重新挂载 /home 分区:

mount /dev/mapper/centos-home /home/

验证:

[root@mongodb-1 /]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   50G   49G  1.4G   98% /
devtmpfs                 5.8G     0  5.8G    0% /dev
tmpfs                    5.8G     0  5.8G    0% /dev/shm
tmpfs                    5.8G  602M  5.3G   11% /run
tmpfs                    5.8G     0  5.8G    0% /sys/fs/cgroup
/dev/sda1               1014M  153M  862M   16% /boot
tmpfs                    1.2G     0  1.2G    0% /run/user/0
/dev/mapper/centos-home  3.2G   33M  3.1G    2% /home

4、查看剩余空间:

[root@mongodb-1 /]# vgdisplay
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  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                1
  Act PV                1
  VG Size               <99.00 GiB
  PE Size               4.00 MiB
  Total PE              25343
  Alloc PE / Size       15102 / 58.99 GiB
  Free  PE / Size       10241 / 40.00 GiB
  VG UUID               0gGHwG-Sd0c-4L0f-LNYo-5dnB-8SrH-q76ctU

image.png

5、将上面空余的 40G 分到 / 分区下

[root@mongodb-1 /]# lvextend -L +40G /dev/mapper/centos-root
  Size of logical volume centos/root changed from 50.00 GiB (12800 extents) to 90.00 GiB (23040 extents).
  Logical volume centos/root successfully resized.
[root@mongodb-1 /]# xfs_growfs /dev/mapper/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 23592960

验证:

[root@mongodb-1 /]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   90G   49G   42G   55% /
devtmpfs                 5.8G     0  5.8G    0% /dev
tmpfs                    5.8G     0  5.8G    0% /dev/shm
tmpfs                    5.8G  602M  5.3G   11% /run
tmpfs                    5.8G     0  5.8G    0% /sys/fs/cgroup
/dev/sda1               1014M  153M  862M   16% /boot
tmpfs                    1.2G     0  1.2G    0% /run/user/0
/dev/mapper/centos-home  3.2G   33M  3.1G    2% /home

调整分区完成。


常见问题:

(一)卸载 /home 分区提示:

umount: /home: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))

提示无法卸载,则是有进程占用 /home,

解决:

1、有可能你在 /home 目录下,跳出 /home 再执行卸载。

2、有进程使用 /home ,使用如下命令终止进程,再卸载。

 fuser -m -k /home

(二)挂载 /home 分区提示:

[root@rbtnode1 ~]# xfs_growfs /dev/mapper/centos-home
xfs_growfs: /dev/mapper/centos-home is not a mounted XFS filesystem

解决:需要格式化 /home ,再挂载。


(三)resize2fs: Bad magic number in super-block 当尝试打开 /dev/mapper/centos-root 时

找不到有效的文件系统超级块.

[root@mongodb-1 /]# resize2fs -p /dev/mapper/centos-root
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block 当尝试打开 /dev/mapper/centos-root 时
找不到有效的文件系统超级块.

解决:

查看类型

image.png


xfs 系统需要 xfs_growfs 执行。



Comments (0)