• SUSE linux 使用LVM安装系统和管理


    引出

    在我们安装好linux系统后会发现在需要修改磁盘分区的时候会比较困难,系统安装的/目录的文件系统要更改基本不太可能,其他目录如/home目录也比较困难。但是系统安装时要是采用的LVM管理的方式安装的话就会截然不通。

    一、首先普及下LVM的基础知识

    LVM(Logical Volume Manager)逻辑卷管理,简单的说它可以将多个物理硬盘组合成一个VG然后给不同的文件系统(如:/home,/opt等)使用。
    引用一个图:
    image

    这里分享一篇比较全面介绍的文章,Linx卷管理详解

    二、linux系统采用LVM的方式安装

    下面针对使用LVM安装操作系统做一个详细讲解,这里使用suse系统演示,为了方便演示文件系统也只分化/和/home。

    1. 安装到需要划分磁盘这步时,选择自定义(专家模式划分)。

    2. 由于系统启动目录不能有LVM来管理,这里将磁盘划分成两部分,一部分给/boot目录,选择ext3格式;剩余的空间文件系统ID设置为LVM。

      最后的划分后如下图:

    3. 增加卷组

    4. 增加文件系统/和/home,还有swap。

    5. 完成磁盘划分后完成系统的安装。

    三、系统文件系统的管理

    系统安装VG(Volume Group)卷组有剩余空间

    在我们日常使用系统的时候肯定会碰到文件系统不够用的情况,而我们之前安装系统的时候卷组还有剩余的空间,这是我们就可以利用剩余的空间对文件系统进行扩充。

    • 查看文件系统使用情况
      查看fstab情况:

      查看VG情况,图中红框就是VG剩余容量:

    • 扩充/文件系统
      查看LV情况:


      扩充2G到/文件系统:
      命令:

      linux:~ # lvextend -L +2G /dev/local/root
        Extending logical volume root to 7.00 GB
        Logical volume root successfully resized
      linux:~ # resize2fs /dev/local/root 
      resize2fs 1.41.9 (22-Aug-2009)
      Filesystem at /dev/local/root is mounted on /; on-line resizing required
      old desc_blocks = 1, new_desc_blocks = 1
      Performing an on-line resize of /dev/local/root to 1835008 (4k) blocks.
      The filesystem on /dev/local/root is now 1835008 blocks long.
      
      linux:~ # 
      

    查看扩充后大小:


    扩充/home也是如此简单,只要使用如下命令即可:
    ``` shell
    lvextend -L +1G /dev/local/home
    resize2fs /dev/local/home

    lvextend -L +1G /dev/local/swap
    resize2fs /dev/local/swap
    ```
    

    swap的操作略有不同,使用如下命令:
    shell swapoff -v /dev/local/swap # 关闭swap lvextend -L +1G /dev/local/swap # 扩大1G mkswap /dev/local/swap # 重新建立交换分区 swapon -va # 再打开swap

    卷组无剩余空间,需要新增物理磁盘

    然而很多时候我们会碰到的场景是我们安装系统盘的容量已经用完,需要我们新增物理硬盘再进行扩充。

    1. 完成物理磁盘增加后,可以采取重启的方式识别硬盘(如果有业务在运行不能重启我们可以采用增加磁盘信息到/proc/scsi/scsi配置文件的方式)。图中红框内为新增磁盘:

    2. 创建分区

      linux:~ # fdisk /dev/sdb 
      ...
      Command (m for help): n            # 输入n进行新建
      Command action
         e   extended
         p   primary partition (1-4)
      e                                 # 输入e选择新建扩展分区
      Partition number (1-4): 1         # 输入要建立分区的个数,这里选择只建立一个
      First cylinder (1-2610, default 1): 
      Using default value 1             # 输入分区开始位置,选择默认,回车
      Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610):  # 输入分区结束位置,选择默认,回车
      Using default value 2610
      
      Command (m for help): t                   # 输入t修改分区格式
      Partition number (1-8): 1                 # 选择需要修改的分区
      Hex code (type L to list codes): 8e       # 输入格式8e,即LVM管理
      Changed system type of partition 1 to 8e (Linux LVM)
      
      Command (m for help): w           # 输入w保存退出
      The partition table has been altered!
      
      Calling ioctl() to re-read partition table.
      Syncing disks.
      
    3. 创建PV

      linux:~ # pvcreate /dev/sdb1        # 输入命令
        No physical volume label read from /dev/sdb1
        Found duplicate PV lBQnQ7fULctTErXBCxMFeAJbIX00M2F6: using /dev/sdb not /dev/sdb1
        Physical volume "/dev/sdb1" successfully created
      linux:~ # 
      
    4. 扩充VG
      先使用vgdisplay查看已存在vg;

      linux:~ # vgextend local /dev/sdb1        # 输入命令进行扩充
        Found duplicate PV lBQnQ7fULctTErXBCxMFeAJbIX00M2F6: using /dev/sdb1 not /dev/sdb
        Volume group "local" successfully extended
      linux:~ # 
      

    使用vgdisplay命令可以查看扩容后的大小。

    1. 扩充文件系统
      扩充文件系统就跟上一节介绍的一样的操作,这里就不再赘述了。

    总结

    从上面的操作就可以看出种种使用LVM安装系统的好处了,可以动态的更改包括根目录在内的所有文件系统。但使用lvm分区的话因为增加了一层管理,应该是会一定影响,所以我们可以采取折中的办法,就是/boot和/文件系统可以使用普通逻辑分区,而且其余文件系统使用LVM分区管理,以方便后期动态管理。

  • 相关阅读:
    在vi或者vim中显示行号
    Ubuntu 14.10 下进程实时IO监控iotop命令详解
    Ubuntu 14.10 下网络流量实时监控ifstat iftop命令详解
    Ubuntu 14.10 下运行进程实时监控pidstat命令详解
    Ubuntu 14.10 下CPU实时监控mpstat命令详解
    Ubuntu 14.10 下awk命令详解
    Ubuntu 14.10 下sort,uniq,cut,wc命令详解
    Ubuntu 14.10 下sed命令详解
    Ubuntu 14.10 下grep命令详解
    Ubuntu 14.10 下Ganglia监控Spark集群
  • 原文地址:https://www.cnblogs.com/liuchengcc/p/5533788.html
Copyright © 2020-2023  润新知