码迷,mamicode.com
首页 > 其他好文 > 详细

lvm自动创建脚本

时间:2018-04-08 16:36:03      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:shell   lvm   

注1:此脚本适用于新机器的lvm逻辑卷创建,仅支持系统中只有一个未格式化的新的数据盘,适用于centos6,centos7未测试

注2:当系统中需要同时对2个及以上的新磁盘做lvm时,此脚本将不再适用;一般来说,此脚本在新机器做lvm时最为实用

lvm_create.sh

#!/bin/bash
##############################################
#Author: Liuzhengwei - 1135960569@qq.com
#QQ:1135960569
#Last modified: 2018-04-08 15:24
#Filename: test.sh
#Description: 适用于新机器的lvm逻辑卷创建,仅支持新添加了一个数据盘且系统中之前无lvm,适用于centos6,不适用于centos7
##############################################
#识别新添加的磁盘
echo "- - -" > /sys/class/scsi_host/host0/scan
echo "- - -" > /sys/class/scsi_host/host1/scan
echo "- - -" > /sys/class/scsi_host/host2/scan
#检测新加磁盘的盘符及容量
DIVISOR=1073741824
DISK_NAME=`fdisk -l | grep "Disk /dev/sd" | awk -F '[ :]+' '{print $2}'`
for disk in ${DISK_NAME[*]};do
        df_disk=`df -h | grep $disk | wc -l`
        if [[ $df_disk -eq 0 ]];then
                pvs_disk=`pvs | grep $disk | wc -l`
                if [[ $pvs_disk -eq 0 ]];then
                        new_disk_size=`fdisk -l | grep "$disk" | awk -F '[ ,:]+' '{print $5}'`
                        new_disk_size_G=$(($new_disk_size/$DIVISOR))
                        echo "检测到新磁盘:$disk        容量为:${new_disk_size_G}G"
                        echo "开始创建lvm逻辑卷"
                        #创建lvm
                        pvcreate $disk
                        vgcreate `hostname` $disk
                        lvcreate -L $(($new_disk_size_G-1))G -n data `hostname`
                        mkdir /data
                        /bin/chown -R staplesapp.admin /data
                        mkfs.ext4 /dev/`hostname`/data
                        echo "/dev/`hostname`/data /data ext4 defaults 0 0" >> /etc/fstab
                        mount -a
                fi
        fi
done
echo "lvm逻辑卷已经创建完成,请检查确认~"




lvm自动创建脚本

标签:shell   lvm   

原文地址:http://blog.51cto.com/liuzhengwei521/2095693

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!