云上扩容 | 运维老司机带你一键实现linux磁盘分区​(四)

(四)linux云上磁盘扩容

参考华为云磁盘扩容文章:https://support.huaweicloud.com/usermanual-evs/evs_01_0109.html  

写成脚本如下:

#!/bin/bash​​​​​​​

# 安装必要的软件包which growpart pvcreate vgextend lvextend pvresize &>/dev/null || {
if type -p yum >/dev/null; thenyum install -y epel-release cloud-utils || exit 1elif type -p apt-get >/dev/null; thenapt-get install -y cloud-initramfs-growroot lvm2 || exit 1elseecho "Unsupported package manager."exit 1fi}# 获取所有磁盘并排序disks=$(fdisk -l | grep -oE "^Disk /dev/(sd[a-z]|vd[a-z]|nvme[0-9]n1)" | awk '{print $NF}' | sort -n)declare -A Afor SERVER in "${disks[@]}"; do # 忽略以#开头的磁盘 if [[ $SERVER == \#* ]]; thencontinue    fiA['SERVER_DISK']="$SERVER"# 普通磁盘分区增加磁盘空间 循环里面的数字是分区号for pn in $(seq 1 4); doLC_ALL=en_US.UTF-8  growpart ${A['SERVER_DISK']}  ${pn}(resize2fs ${A['SERVER_DISK']}${pn} || xfs_growfs ${A['SERVER_DISK']}${pn}) || (resize2fs ${A['SERVER_DISK']} || xfs_growfs ${A['SERVER_DISK']})done  done# LVM分区增加磁盘空间lvm=$(df -lTh | grep mapper | sed -n '$p' | awk '{print $1}')if [ -z "$lvm" ]; thenecho "There is no LVM partition."elsepvresize "${A['SERVER_DISK']}"lvextend -l +100%FREE -n "$lvm"xfs_growfs "$lvm" || resize2fs "$lvm"fi# 新增一块磁盘,增加LVM分区的空间if [[ "$(fdisk -l | grep -oE "^Disk /dev/(sd[a-z]|vd[a-z]|nvme[0-9]n1)" | wc -l)" -gt 2 ]]; thendisk=$(fdisk -l | grep -oE "^Disk /dev/(sd[a-z]|vd[a-z]|nvme[0-9]n1)"vgname=$(df -lTh | grep mapper | sed -n '$p' | awk -F "/" '{print $4}' | awk -F "-" '{print $1}')lvm=$(df -lTh | grep mapper | sed -n '$p' | awk '{print $1}')pvcreate "$disk" &>/dev/nullvgextend "$vgname" "$disk" &>/dev/nulllvresize -l +100%free "$lvm" -r &>/dev/nullxfs_growfs ${lvm} || resize2fs ${lvm}elseexit 0fi

【系列文章合集】

linux磁盘分区系列文章将分成4篇更新,老司机独家经验总结实用脚本,详细讲解如何一键实现linux磁盘分区:

(一)linux磁盘分区2种系统文件(已更新)

  1. 两种分区表(MBR 和GPT)

  2. liunx磁盘的两种文件系统优点、缺点、适用场景对比

3.ext4 和xfs 两种分区格式实操

(二)一个脚本搞定带数字盘符的liunx磁盘分区(已更新)

(三)一个脚本实现linux磁盘lvm 分区 (已更新)

(四)一个脚本实现linux磁盘云上扩容(已更新)

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值