Shell ❀ Linux系统磁盘快速挂载执行脚本
Posted 无糖可乐没有灵魂
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell ❀ Linux系统磁盘快速挂载执行脚本相关的知识,希望对你有一定的参考价值。
文章目录
1 脚本代码详解
#!/bin/bash
echo "------------------------------------BEGIN------------------------------------"
# 判断默认安装路径是否为/dev/sda
if [ "$1" = "" ];then
DISK=`lsblk |grep disk|grep -v sda|awk 'print $1'`
echo "The default installation path is sda "
else
DISK=`lsblk |grep disk|grep -v $1|awk 'print $1'`
echo "The customized installation path is $1 "
fi
# 磁盘分区函数
function PartedDisk
for disk in $DISK
do
echo " Starting parted Disk $disk "
parted -s /dev/$disk mklabel gpt &> /dev/null
# 配置标签gpt
parted -s /dev/$disk mkpart primary ext4 0 100% &> /dev/null
# 配置分区名称、分区格式、起始位置、结束位置
done
echo -e "\\033[32;40m All disk parted Done! \\033[0m"
# 黑底绿色回显
sleep 1s
# 格式化函数
function FormatDisk
for disk in $DISK
do
echo " Starting format Disk $disk "
mkfs.ext4 -F /dev/$disk1 &> /dev/null
# 修改磁盘文件系统为ext4
done
echo -e "\\033[32;40m All disk format Done!!! \\033[0m"
sleep 1s
# 挂载点创建函数
function MakeDir
cd /home
for disk in $DISK
do
echo " Starting make the $disk mount diretory! "
mkdir -pv /home/$disk &> /dev/null
# 创建挂载点目录,如/home/sda
done
echo -e "\\033[32;40m MakeDir Done!! \\033[0m"
sleep 1s
# 挂载磁盘分区
function MountDisk
for disk in $DISK
do
echo " Starting change aoto-mount file! "
uuid=`blkid /dev/$disk1|awk 'print $2'|awk -F "\\"" 'print $2'`
# 获取UUID
echo "UUID=$uuid /home/$disk ext4 defaults 1 2" >>uuid.txt
# 配置自动挂载信息
done
cat uuid.txt >> /etc/fstab
# 将自定义挂载文件信息定向至自动挂载文件
# 函数调用
PartedDisk && FormatDisk && MakeDir && MountDisk
# 执行挂载并查看结果
mount -a
cat -n /etc/fstab | grep UUID
echo "-------------------------------------END-------------------------------------"
2 代码执行结果
此脚本执行时需要指定一个参数,该参数为Linux系统安装磁盘位置,若为/dev/sdc,只需要输入sdc即可,默认参数为sda;
2.1 使用默认系统路径执行脚本
2.2 使用指定系统路径执行脚本
以上是关于Shell ❀ Linux系统磁盘快速挂载执行脚本的主要内容,如果未能解决你的问题,请参考以下文章