shell习题-自动挂载磁盘


我们使用的云主机,购买一块云盘后,默认并不是挂载状态的,用shell写一个脚本,只要把盘符和挂载点以参数的形式提供给脚本,该脚本就可以自动格式化、挂载。

要求:

1 不用分区,直接格式化

2 格式化为ext4文件系统类型

 

参考答案:

#!/bin/bash

echo "Useage $0 盘符 挂载点, 如: $0 /dev/xvdb /data"

if [ $# -ne 2 ]
then
    exit
fi

if [ ! -b $1 ]
then 
    echo "你提供的盘符不正确,请检查后再操作"
    exit 1
fi

mkfs -t ext4 $1

if [ ! -d $2 ] ;then
        mkdir -p $2
fi

n=`egrep " $2 " /etc/fstab|wc -l`
if [ $n -eq 0 ]
then
    echo "$1              $2                      ext4   defaults  0  0" >> /etc/fstab
    mount -a
else
    mount $1 $2
    echo "配置文件/etc/fstab中已经存在挂载点$2,请检查一下."
fi