首页 > 解决方案 > 扩展 LVM 卷和调整文件系统大小的脚本

问题描述

在我的服务器上,我必须不时扩展 lvm 卷以腾出更多空间。为此,我使用命令lvextendresize2fs. 我想要一个命令,它会显示一个 LVM 卷列表以供选择并要求增加大小。

请注意,使用 lvm 和 resize2fs 您可以可靠地调整文件系统的大小而不会中断任何内容。报告的可用大小只会增加。

标签: linuxfilesystemsext4lvmext3

解决方案


我最终编写并用于在线调整大小的脚本是:

#!/bin/bash
# 2020-04-11 Initial Version

function error()
{
   echo "*** $*"
   exit 1
}

if [ "$1" == "" ] ; then
    echo "Please select the partition from the list"

    i=1
    for j in /dev/mapper/kalypso*
    do
        echo "$i.$j"
        file[i]=$j
        i=$(( i + 1 ))
    done

    echo "Enter number"
    read input
    partition=${file[$input]}
    echo "You selected partition $partition"

    df -h $partition
    echo "Enter size to add, to $partition e.g. 50G:"
    read size
    echo "You choose to increase file $partition by $size"
    sudo lvextend -L +$size $partition || error "lvextend $partition failed"
    sudo resize2fs $partition || error "resize2fs $partition failed"
    echo "lvextend/resize2fs completed"
    df -h $partition | tail -n 1
fi

推荐阅读