美文网首页Linux学习之路我用 LinuxLinux
Fedora使用逻辑分区(lvm)以实现动态扩展目录空间

Fedora使用逻辑分区(lvm)以实现动态扩展目录空间

作者: 泰克尼客 | 来源:发表于2017-12-13 10:55 被阅读210次

    原载于博客
    在安装Linux时,如果选择了逻辑分区的方式,那么后续新增硬盘后,可以弹性扩展目录空间。本文以Fedora为例。

    1. 查看逻辑分区情况

    1.1 查看vg(volume group)

    可以将vg看作是一个“硬盘池”,也即硬盘的虚拟化。所有的物理硬盘,分区后加入到vg中,作为虚拟空间统一分配。

    [root@localhost ~]# vgscan 
      Reading volume groups from cache.
      Found volume group "fedora" using metadata type lvm2
    
    

    可以看到,系统已经有了一个名为fedora的vg,这是安装系统时自动建立的vg,当然也可以通过vgcreate命令自己创建新的vg,此处略过。

    1.2 查看lv(logical volume)

    lv就是所谓的逻辑卷,将其挂载到某个目录后再格式化,便可以直接使用。所谓弹性扩展,就是扩展lv,使之对应的目录空间大小发生变化。

    [root@localhost ~]# lvscan
      ACTIVE            '/dev/fedora/swap' [<11.76 GiB] inherit
      ACTIVE            '/dev/fedora/home' [<0.8 TiB] inherit
      ACTIVE            '/dev/fedora/root' [50.00 GiB] inherit
    [root@localhost ~]# df -h
    ...
    /dev/mapper/fedora-home  1.8T  302M  0.8G  1% /home
    ...
    
    

    可以看到系统分成了三个lv,其中/dev/fedora/home这个lv挂载到了/home这个目录。
    假设我们要做的工作就是扩展/home这个目录的空间。

    2. 安装新硬盘并分区

    拿到一块硬盘后,首先还是分区,这里我们使用gdisk命令来进行分区。

    [root@localhost ~]# gdisk /dev/sdb
    GPT fdisk (gdisk) version 1.0.3
    
    Partition table scan:
      MBR: protective
      BSD: not present
      APM: not present
      GPT: present
    
    Found valid GPT with protective MBR; using GPT.
    
    Command (? for help): n
    Partition number (2-128, default 2): 
    First sector (34-2047, default = 34) or {+-}size{KMGTP}: 
    Last sector (34-2047, default = 2047) or {+-}size{KMGTP}: 
    Current type is 'Linux filesystem'
    Hex code or GUID (L to show codes, Enter = 8300): 8E00
    Changed type of partition to 'Linux LVM'
    
    Command (? for help): w
    
    

    两个注意点:

    1. 分区编码部分,输入8E00,表示是逻辑分区。
    2. 分区结束后记得输入w,以写入。

    3. 新建pv(pysical volume)

    硬盘分区后,需要建立pv,将分区转成pv后,才能加入到vg硬盘池中。

    [root@localhost ~]# pvcreate /dev/sdb1
      Physical volume "/dev/sdb1" successfully created
    

    4. 将新的pv加入到vg中

    接下来,通过vgextend命令,可以将pv加入到vg中。

    vgextend vbirdvg /dev/sdb1
    

    可以通过vgdisplay命令查看vg的情况

    [root@localhost ~]# vgdisplay fedora
      --- Volume group ---
      VG Name               fedora
      System ID             
      Format                lvm2
      Metadata Areas        2
      Metadata Sequence No  7
      VG Access             read/write
      VG Status             resizable
      ...
     Free  PE / Size      */* GiB 
      VG UUID               VPKdDe-z60K-lEXZ-430w-Plts-Tv2X-jUTyqG
    
    

    可以看到,vg的可用空间发生了变化(Free PE/Size)。

    5. 扩展lv

    使用lvresize命令可以动态弹缩逻辑分区的空间,也就是上文提及的/dev/fedora/home这个分区的空间。
    这里我们把vg里多出来的空间都新增到该分区(亦即新硬盘的大小)

    lvresize -L +931G /dev/fedora/home
    

    6. 文件系统格式化

    要想使用lv多出来的空间,还需要将其格式化。
    首先查看系统文件系统情况:

    [root@localhost ~]# cat /etc/fstab
    /dev/mapper/fedora-home /home                   ext4    defaults        1 2
    

    该系统使用了ext4文件格式。对于ext4的文件格式,通过如下命令,便可以动态格式化新的lv(保留原有文件):

    resize2fs /dev/fedora/home
    

    如果是xfs文件格式,则可以使用xfs_growfs命令。

    如此,便实现了目录空间的动态扩展。

    相关文章

      网友评论

        本文标题:Fedora使用逻辑分区(lvm)以实现动态扩展目录空间

        本文链接:https://www.haomeiwen.com/subject/btzoixtx.html