centos7 基于lvm的根目录扩容

centos7 在安装后,通常我们通过df -h 来查看磁盘空间的时候率。如下:

[root@oracle01 ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   46G   32G   14G  71% /
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G     0  1.9G   0% /dev/shm
tmpfs                    1.9G   17M  1.9G   1% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                497M  125M  372M  26% /boot
tmpfs                    379M     0  379M   0% /run/user/0

如上,在根目录 / 下,已经使用了71%,快没有空间了,这个时候,如果需要增加空间,如果你是实体机,则只能 增加磁盘,如果你是虚拟机或者云服务器,那么可以自由扩展,于是我将磁盘空间从50G增加至100G。
直接增加磁盘空间,但是,不管哪种方式,增加后,会发现,并没有生效,df -h 能用的空间并没有增加,而新增的空间使用 fdisk -l 则可以查看到,如下:
可以看到,虽然我的磁盘空间大小为107G ,但是下面使用了的只有50G 左右。 增加的空间并没有被使用。
下面,就需要将没使用到的空间,用来扩容在根目录下,或别的挂载目录下。 在开始之前,我们必须要对linux的磁盘管理有一定的认识:
在centos中,对于储存和磁盘空间的管理是lvm , 我们常用的 fdisk -l 命令,显示的就是物理分区,相当于直接作用于磁盘上的。

在物理分区中,我们可以在不同的磁盘中,划分去分区,而这个分区必须要设置为lvm 分区格式,只有设置为lvm分区格式,才可以将这些分区,提取出来创建成物理卷,
这些在不通物理磁盘中的物理卷,就可以组成一个大的卷组,这个卷组就相当于逻辑上的磁盘,然后可以在卷组上进行分区,分为逻辑卷。而这些逻辑卷就是我们常用的 df -h 来查看的磁盘使用锁显示的,例如 根目录 /home目录等就是常用的逻辑卷。
你可能会问为什么要这样做,因为一般的物理磁盘进行的物理分区,一旦确定,是不能修改大小的,也就无法很好的就行扩容。而且当容量大于一般磁盘的需求时,就没有像lvm一样可以通过组合多个物理磁盘来形成一个大的卷组使用。当然,也为了更好的管理。

好的。下面就开始对根目录进行扩容。

[root@oracle01 ~]# fdisk /dev/sda  ## /dev/sda为通过fdisk -l 查看到的物理磁盘(第一行)
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
 
Command (m for help): n  ## n为创建一个新的分区
Partition type:   ## 这里需要选择时创建主分区还是扩展分区,都可以,这里直接选了主分区
   p   primary (2 primary, 0 extended, 2 free)   
   e   extended
Select (default p): p  ## 选择创建一个主分区,主分区只能有4个,编号为1-4,下面的全部直接回车就好了,会自动将剩余所用空间都创建
Partition number (3,4, default 3):   
First sector (104857600-209715199, default 104857600): 
Using default value 104857600
Last sector, +sectors or +size{K,M,G} (104857600-209715199, default 209715199): 
Using default value 209715199
Partition 3 of type Linux and of size 50 GiB is set
 
Command (m for help): t   ## t为修改分区类型
Partition number (1-3, default 3): 3  ## 刚才创建的分区编号为3
Hex code (type L to list all codes): 8e  ## 8e就是 lvm格式的分区
Changed type of partition 'Linux' to 'Linux LVM'
 
Command (m for help): w  ## w保存并写入磁盘。
The partition table has been altered!
 
Calling ioctl() to re-read partition table.
 
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

这里,在保存后,会发现,可能会出现报错,显示繁忙,无法重新读取分区信息。下面有解决办法。可以用过重启或者执行 partprobe or kpartx。所以,这里直接执行partprobe

[root@oracle01 ~]# partprobe
  1. 创建了物理分区后,就需要将物理分区创建为物理卷:

将物理分区3 创建物理卷,这里这个/dev/sda3是第一步创建的物理分区,通过fdisk -l 就可以看到
是在第一个物理磁盘/dev/sda下面的分区(一个磁盘可以有多个分区),原本已有/dev/sda1,/dev/sda2
通过第一步创建生成/dev/sda3这个分区,然后将这个分区 创建成物理卷

[root@oracle01 ~]# pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created.
[root@oracle01 ~]# pvdisplay  ## 查看物理卷
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos
  PV Size               49.51 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              12674
  Free PE               11
  Allocated PE          12663
  PV UUID               8T9dpf-SrDj-maVi-IlAb-tpPb-Lzyt-WLeRHG
  "/dev/sda3" is a new physical volume of "50.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sda3
  VG Name               
  PV Size               50.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               uRRJtJ-Ds7J-dvqs-y5Lb-W95H-FXeh-C2QNtl
  1. 物理卷创建成功后,则需要将物理卷添加到卷组中,这样才能在卷组中进行分配。
[root@oracle01 ~]# vgdisplay  ## 查看卷组
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <49.51 GiB
  PE Size               4.00 MiB
  Total PE              12674
  Alloc PE / Size       12663 / 49.46 GiB
  Free  PE / Size       11 / 44.00 MiB   ## 可以看到这个卷组只剩下44M的剩余空间了,其他的都划分为逻辑卷了,类似于已分区
  VG UUID               3TMbc1-A7aP-DAMv-QtUU-VTjC-4tOf-iAxDkc
[root@oracle01 ~]# vgextend centos /dev/sda3   ## 将物理卷加入到卷组
  Volume group "centos" successfully extended
[root@oracle01 ~]# vgdisplay  ## 加入后,再次查看卷组
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               99.50 GiB
  PE Size               4.00 MiB
  Total PE              25473
  Alloc PE / Size       12663 / 49.46 GiB
  Free  PE / Size       12810 / <50.04 GiB   ## 可以看到,加入成功后,卷组的剩余空间变大了,这样就有更多的空间可以进行分配,或新创建新的逻辑卷
  VG UUID               3TMbc1-A7aP-DAMv-QtUU-VTjC-4tOf-iAxDkc
  1. 添加进卷组后,就是将剩余空间对逻辑卷进行扩容。
[root@oracle01 ~]# lvdisplay     ## 查看逻辑卷
  --- Logical volume ---
  LV Path                /dev/centos/root    ## 逻辑卷名称
  LV Name                root
  VG Name                centos
  LV UUID                RaEygR-53tg-UaJQ-5dJs-e8V4-by51-fcp1DQ
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2017-09-30 19:12:05 +0800
  LV Status              available
  # open                 1
  LV Size                45.46 GiB   ## 增加前,逻辑卷大小
  Current LE             11639
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
[root@oracle01 ~]# lvextend -l +100%FREE /dev/centos/root   ## 将剩余百分百空间都添加到逻辑卷中
  Size of logical volume centos/root changed from 45.46 GiB (11639 extents) to 95.50 GiB (24449 extents).
  Logical volume centos/root successfully resized.
[root@oracle01 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                RaEygR-53tg-UaJQ-5dJs-e8V4-by51-fcp1DQ
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2017-09-30 19:12:05 +0800
  LV Status              available
  # open                 1
  LV Size                95.50 GiB    ## 增加后,逻辑卷大小
  Current LE             24449
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
  1. 然后重新识别一下分区大小,就可以通过df -h看到新增的容量了
[root@oracle01 ~]# xfs_growfs /dev/centos/root    ## 命令,后面跟的是逻辑卷的path
meta-data=/dev/mapper/centos-root isize=256    agcount=4, agsize=2979584 blks
        =                       sectsz=512   attr=2, projid32bit=1
        =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=11918336, imaxpct=25
        =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               bsize=4096   blocks=5819, version=2
        =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 11918336 to 25035776
[root@oracle01 ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   96G   32G   64G  34% /      ## 这里可以看到,已成功扩容
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G     0  1.9G   0% /dev/shm
tmpfs                    1.9G   17M  1.9G   1% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                497M  125M  372M  26% /boot
tmpfs                    379M     0  379M   0% /run/user/0
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容

  • 前一篇文章学习了磁盘分区、格式化、挂载等相关知识,本文将讲解RAID和LVM技术。 磁盘管理操作主要是运维人员用的...
    黑马腾云阅读 636评论 0 0
  • 前言 LVM 逻辑卷管理,是对磁盘分区进行管理的一种机制,建立在硬盘和分区之上,文件系统之下的一个逻辑层,可以提高...
    Alliny阅读 399评论 0 0
  • 1 概述 本文对配额,RAID,LVM的概念和具体创建过程做了介绍 2 配额 2.1 配额概念 在内核中执行 以文...
    ghbsunny阅读 2,637评论 0 1
  • 一、目的 在使用CentOS6.3版本linux系统的时候,发现根目录(/)的空间不是很充足,而其他目录空间有很大...
    jadn阅读 5,677评论 0 1
  • “长跑的目标不是更快,而是更强。” “明明这么痛苦,这么难过,为什么就是不能放弃跑步?因为全身细胞都在蠢蠢欲动,想...
    克里泽阅读 3,423评论 0 6