shell 自动创建磁盘分区 PV 、VG、 LV

news2024/11/19 5:50:53

设计思路:

1、创建磁盘分区变量集合

 devName=("vdb" "vdc" "vdd" "vde")

2、创建for循环,磁盘分区数量 /dev/vdb0~3,用于在for循环中if判断磁盘分区是否已经存在

if 判断条件 [[ -b "目录名称"]]

if [[ -b "/dev/${devName[$a]}1" ]];then

3、如磁盘分区不存在就创建磁盘分区 PV、VG、LV

 

在root用户下执行

cat diskcfg.sh

devName=("vdb" "vdc" "vdd" "vde")
for a in {0..3}
do
  echo "/dev/${devName[$a]}"
  # 判断磁盘是否存在
  ret0=`fdisk -l |grep /dev/${devName[$a]}`
  if [ "$ret0" == "" ];then
        echo "/dev/${devName[$a]} is not exit."
        continue;
  fi
    
  echo "$a"
  echo "/dev/${devName[$a]}1"
  if [[ -b "/dev/${devName[$a]}1" ]];then
     echo "这块磁盘已经分区,退出,请管理员检查"
  else
     echo "开始进行分区操作"
     echo "parted /dev/${devName[$a]} print"
        parted /dev/${devName[$a]} print
     echo "parted /dev/${devName[$a]} "mklabel gpt""
        parted /dev/${devName[$a]} "mklabel gpt ignore yes"
     echo "parted /dev/${devName[$a]} "mkpart primary xfs 1 -1""
        parted /dev/${devName[$a]} "mkpart primary xfs 1 -1 ignore"
     echo "parted /dev/${devName[$a]} "quit""
        parted /dev/${devName[$a]} "quit"
     echo "mkfs.xfs /dev/${devName[$a]}1"
       mkfs.xfs -f /dev/${devName[$a]}1
     echo "pvcreate /dev/${devName[$a]}1"
        pvcreate /dev/${devName[$a]}1 -y
     echo "mkdir /zol"
        if [ ! -d /zol ];then
            mkdir -p /zol
        fi

     echo "add /dev/${devName[$a]}1 to vgzol"
        vg=`vgs | awk '{if(NR>1){print $1}}' | grep "vgzol"`
        if [ "$vg" != "" ];then
            vgextend vgzol /dev/${devName[$a]}1 -f -y
        else
            vgcreate vgzol /dev/${devName[$a]}1 -f
        fi

     echo "add /dev/${devName[$a]}1 to lvzol"
        lv=`lvs | awk '{if(NR>1){print $1}}' | grep "lvzol"`
        if [ "$lv" != "" ];then
            lvresize -l +100%FREE -r /dev/vgzol/lvzol -f
        else
            lvcreate -n lvzol -L +2048G /dev/vgzol -y
            mkfs.xfs /dev/vgzol/lvzol
            mount /dev/vgzol/lvzol /zol
            echo "/dev/vgzol/lvzol /zol xfs defaults 0 0" >> /etc/fstab
        fi

     echo "df -h"
        df -h
     echo "----------------------------------------------------------------------------------"
  fi   
done
                                    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/830994.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LCD驱动深入分析

很多人都会说操纵lcd显示就是操纵framebuffer,表面上来看是这样的。实际上是frambuffer就是linux内核驱动申请的一片内存空间,然后lcd内有一片sram,cpu内部有个lcd控制器,它有个单独的dma用来将frambuffer中的数据拷贝到lcd的sram…

腾讯云 +WordPress 搭建个人网站

搭建个人网站 准备服务器配置宝塔面板开放端口权限 部署WordPress访问效果 准备服务器 腾讯云网址 购买腾讯云服务器有新人优惠,第一次购买会比较便宜(赚的是你续费的钱),我这里买了轻量的三年是408,还是比较实惠的&a…

端口映射教程vs快解析内网穿透

随着社会信息化的发展,很多人都开始关注网络问题,掌握一些基础的网络知识是非常有必要的。其中,端口映射作为一项重要的技术,在网络通信中起到了至关重要的作用。 端口映射在现实生活中有着广泛的应用。如果你是一位游戏爱好者&a…

Linux--打印到显示器的内容输出重定向到文件里的代码

// ./myproc hello int main(int argc, char* argv[]) {if (argc ! 2){return 2;}int fd open("log.txt", O_WRONLY | O_CREAT | O_TRUNC);if (fd < 0){perror("open");return 1;}dup2(fd, 1);fprintf(stdout, "%s\n", argv[1]); } 运行结果…

人工智能数据获取与数据管理指南

成功部署AI实践典范 人工智能的部署离不开大规模高质量训练数据的注入&#xff0c;大数据的管理制度也随着人工智能的发展而日益完善&#xff0c;数据采集与治理更是企业做AI部署策略时的两大复杂因素。 有几项最佳实践可以作为构建和部署有效的AI解决方案的典范。建立长期全面…

C语言笔试题训练【第一天】

目录 第一题 第二题 第三题 第四题 第五题 大家好&#xff0c;我是纪宁。 从今天开始博主会日更一些经典的C语言笔试题&#xff0c;持续20天左右。题目类型为5道选择题加2道编程题&#xff0c;希望能和大家一起进步。 第一题 1.读程序&#xff0c;下面程序正确的输出是&…

GD32F103VE侵入事件

GD32F103VE的TAMPER引脚(PC13)&#xff0c;当PC13输入低电平时&#xff0c;会产生一个侵入检测事件。它会将所有“数据备份寄存器”内容清除。 这个功能有什么用&#xff1f; 一是防止被人开壳&#xff0c;抄袭。二是自毁功能。 直奔主题&#xff0c;多一句就是浪费时间。测试…

nsqd的架构及源码分析

文章目录 一 nsq的整体代码结构 二 回顾nsq的整体架构图 三 nsqd进程的作用 四 nsqd启动流程的源码分析 五 本篇博客总结 在博客 nsq整体架构及各个部件作用详解_YZF_Kevin的博客-CSDN博客 中我们讲了nsq的整体框架&#xff0c;各个部件的大致作用。如果没看过的&…

cloudstack远程调试

前置条件&#xff1a;服务器安装好cloudstack的management、agent; 1、managemeng、agent启动服务文件 packaging/systemd cloudstack-agent.default # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTIC…

openmp和avx配置

实际场景&#xff1a; 项目中数据拷贝慢&#xff08;使用的是memcpy&#xff09;&#xff0c;希望能加速拷贝&#xff0c;所以尝试了使用avx的流方式&#xff0c;和openmp方式处理 问题1&#xff1a; 调用avx是报错 error: inlining failed in call to always_inline ‘__m512…

亲测有效!帮你更方便更舒服使用ubuntu20.04!!!

今天要记录的是如何更舒服的使用ubuntu20.04&#xff0c;全部内容就在上面这张图里&#xff0c;包括三方面&#xff1a;1、ubuntu美化&#xff1b;2、ubuntu扩展&#xff1b;3、必备软件。 1、ubuntu美化 这部分内容可以直接参考&#xff1a;这位大佬&#xff0c;讲的很详细也…

gRPC三种Java客户端性能测试实践

本篇文章只做性能测试实践&#xff0c;不会测试各类状况下极限性能&#xff0c;所以硬件配置和软件参数就不单独分享了。 服务端 依旧采用了fun_grpc项目的SDK内容。服务端代码如下&#xff1a; package com.funtester.grpc;import com.funtester.frame.execute.ThreadPoolU…

Python实现GA遗传算法优化卷积神经网络分类模型(CNN分类算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 遗传算法&#xff08;Genetic Algorithm&#xff0c;GA&#xff09;最早是由美国的 John holland于20世…

验证码安全志:AIGC+集成环境信息信息检测

目录 知己知彼&#xff0c;黑灰产破解验证码的过程 AIGC加持&#xff0c;防范黑灰产的破解 魔高一丈&#xff0c;黑灰产AIGC突破常规验证码 双重防护&#xff0c;保障验证码安全 黑灰产经常采用批量撞库方式登录用户账号&#xff0c;然后进行违法违规操作。 黑灰产将各种方…

RL — 强化学习算法概述

一、说明 在本系列中&#xff0c;我们检查了许多强化学习&#xff08;RL&#xff09;算法&#xff0c;例如&#xff0c;MoJoCo任务的策略梯度方法&#xff0c;Atari游戏的DQN和机器人控制的基于模型的RL。虽然许多算法都是针对特定领域引入的&#xff0c;但这种联系只能是遗留的…

BKTEM-3A型热电材料性能测试仪(动态法)

BKTEM-3A型热电材料性能测试仪(动态法) 关键词&#xff1a;塞贝克&#xff08;seebeck&#xff09;&#xff0c;波尔贴&#xff08;Peltier&#xff09;效应&#xff0c;热电系数 BKTEM-3型热电材料性能测试仪热电材料也称温差电材料&#xff08;thermoelectric materials&…

c语言const修饰的说明

1、const修饰的为常量&#xff0c;不可以直接修改&#xff0c;但是可以通过指针修改 #include "stdio.h" #include <stdlib.h>int main() {//1、constconst int a 10;//a 100;//err 左值不可修改&#xff0c;const修饰的为常量&#xff0c;不可以直接修改&a…

WSL2安装CentOS7和CentOS8

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、下载ZIP包&#xff1f;二、安装1.打开Windows子系统支持2.安装到指定位置3.管理虚拟机4.配置虚拟机1.配置国内源2.安装软件3.安装第三方源 5.配置用户1.创建…

iNav飞控之FAILSAFE机制

iNav飞控之FAILSAFE机制 1. 源由2. 设计2.1 触发场景2.1.1 上锁时触发2.1.2 解锁时触发 2.2 FAILSAFE策略2.2.1 DROP2.2.2 LAND2.2.3 SET-THR2.2.4 RTH2.2.5 NONE 2.3 异常场景2.3.1 救援上锁2.3.2 救援后解锁2.3.3 FAILSAFE地面预判2.3.4 RTH丢失定位2.3.5 RC链路恢复 3. 重要…

怎样做好字幕翻译服务?

我们知道&#xff0c;字幕泛指影视作品后期加工的文字&#xff0c;往往显示在电视、电影、舞台作品中。字幕翻译就是将外国影片配上本国字幕或者是将本国影片配上外国字幕。那么&#xff0c;字幕翻译的主要流程是什么&#xff0c;怎样做好字幕翻译服务&#xff1f; 据了解&…