linux下分区容量不足了如何进行扩容


本文摘自PHP中文网,作者齐天大圣,侵删。

日常工作中,经常会遇到某个分区剩余容量不足的问题,所以我们需要掌握如何在linux服务器下对分区进行扩容。对于分区扩容,这里分为了两个情况

  • LVM分区的扩容

  • 非LVM分区的扩容

LVM分区的扩容

一般,我们都建议使用LVM,这样方便分区的弹性伸缩。关于LVM的介绍,物理卷、逻辑组、逻辑卷等这里就不细说了,大家可以去看看我另外的两篇关于LVM的文章。

场景:/www 目录是我们的和网站相关的目录,这个目录所挂载的分区采用了LVM,本来这个目录有1G空间大小,但是随着系统的运行,剩余空间只剩下不到100M了。现在需对该分区进行扩容。

准备工作,实现场景

1

2

3

4

5

6

7

8

9

# pvcreate /dev/sdb1

# vgcreate vgwww /dev/sdb1

# lvcreate -l 255 vgwww

# mkfs.ext4 /dev/vgwww/lvol0

# mount /dev/vgwww/lvol0 /www

# dd if=/dev/zero of=/www/bigfile bs=1M count=900

# df -h

……

/dev/mapper/vgwww-lvol0  988M  903M   19M   98% /www

分区扩容

首先,我们要看vgwww还有没有剩余空间,如果没有的话,则需要先在vgwww中添加pv。

1

2

3

4

# vgdisplay vgwww

 ……

  Free  PE / Size       0 / 0   <=== 没哟剩余空间了

  VG UUID               xdw96k-xZNv-tmVf-Pkcx-SX7T-C1tz-ZZq3HG

通过上面信息可以得知,该vg没有剩余空间了。那么就需要对此vg增加pv了。现在我们看看有没有没有被使用的pv,如果没有的话,先需要创建pv。

1

2

3

# pvscan

  PV /dev/sdb1   VG vgwww           lvm2 [1020.00 MiB / 0    free]

  Total: 1 [1020.00 MiB] / in use: 1 [1020.00 MiB] / in no VG: 0 [0   ]

可以看到,没有可用的pv。那么,先创建pv

1

2

3

4

5

6

# pvcreate /dev/sdc1

  Physical volume "/dev/sdc1" successfully created.

# pvscan

  PV /dev/sdb1   VG vgwww           lvm2 [1020.00 MiB / 0    free]

  PV /dev/sdc1                      lvm2 [1023.00 MiB]

  Total: 2 [<2.00 GiB] / in use: 1 [1020.00 MiB] / in no VG: 1 [1023.00 MiB]

pv已经有了,那么将新的pv加到vgwww逻辑卷组中。

1

2

3

4

5

6

# vgextend vgwww /dev/sdc1

  Volume group "vgwww" successfully extended

# vgdisplay vgwww

 ……

  Free  PE / Size       255 / 1020.00 MiB

  VG UUID               xdw96k-xZNv-tmVf-Pkcx-SX7T-C1tz-ZZq3HG

现在vg多出了255个PE没有被使用。接下来,就是对LV进行扩容了

1

2

3

4

5

6

7

8

9

# lvresize -l +255 /dev/vgwww/lvol0

  Size of logical volume vgwww/lvol0 changed from 1020.00 MiB (255 extents) to 1.99 GiB (510 extents).

  Logical volume vgwww/lvol0 successfully resized.

   

# lvdisplay

  --- Logical volume ---

  ……

  LV Size                1.99 GiB  <=== lv已经变为了1.99G了

  ……

这个时候,虽然lv大小变大了,但是/dev/mapper/vgwww-lvol0文件系统并没有变大。

1

2

3

4

# df -h

文件系统                 容量  已用  可用 已用% 挂载点

……

/dev/mapper/vgwww-lvol0  988M  903M   19M   98% /www

这个时候,我们还需要xfs_growfs (针对xfs文件系统)或resize2fs (针对ext文件系统)来处理下。

1

2

3

4

5

6

# 该主机使用的是ext4文件系统

# resize2fs /dev/vgwww/lvol0

# df -h

文件系统                 容量  已用  可用 已用% 挂载点

……

/dev/mapper/vgwww-lvol0  2.0G  904M  982M   48% /www

至此,对于该文件系统的扩容完成了。

阅读剩余部分

相关阅读 >>

Linux系统关机命令是什么

Linux下的抓包tcpdump

Linux查看cpu核数命令是什么?

Linux中apache设置压缩及缓存的方法实例

Linux中shell脚本怎么运行

Linux 环境下如何通过 mtr 命令行工具进行链路测试

Linux下怎么通过命令行方式获取ip

Linux下“/”和“~”有什么区别

Linux系统启动失败的原因

怎么修改Linux文件

更多相关阅读请进入《Linux》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...