当前位置:首页 > 电子 > 正文内容

linux系统 硬盘自动挂载 自动格式化 脚本

admin5年前 (2018-09-04)电子3953

mkdir /data1

mkdir /data2

mkdir /data3

mkdir /data4


 mkfs.xfs /dev/sdb1


echo "/dev/sdb1 /data1 xfs defaults 0 0" >> /etc/fstab

echo "/dev/sdc1 /data2 xfs defaults 0 0" >> /etc/fstab

echo "/dev/sdd1 /data3 xfs defaults 0 0" >> /etc/fstab

echo "/dev/sde1 /data4 xfs defaults 0 0" >> /etc/fstab






#!/bin/bash

# Author: Vtrois <seaton@vtrois.com>
# Project URL: https://www.vtrois.com
# Description: Auto fdisk for SpacePack Tools
# Github URL: https://github.com/Vtrois/Auto-fdisk
# WEB IDE DEMO

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
clear
printf "
===========================================================================
                                Auto fdisk
      SpacePack tools for CentOS, CoreOS, Debian, openSUSE and Ubuntu
   For more information please visit https://github.com/Vtrois/Auto-fdisk
===========================================================================
"
echo -e "\n\033[36mStep 1: Initializing script and check root privilege\033[0m"
if [ "$(id -u)" = "0" ];then  
	echo -e "\033[33mIs running, please wait!\033[0m"
  	yum -y install e4fsprogs > /dev/null 2>&1
	echo -e "\033[32mSuccess, the script is ready to be installed!\033[0m"
else
	echo -e "\033[31mError, this script must be run as root!\n\033[0m"
	exit 1
fi
echo -e "\n\033[36mStep 2: Show all active disks:\033[0m"
fdisk -l 2>/dev/null | grep -o "Disk /dev/vd[b-z]"
echo -e -n "\n\033[36mStep 3: Please choose the disk(e.g., /dev/vdb and q to quit):\033[0m"
read Disk
if [ $Disk == q ];then
	exit
fi
until fdisk -l 2>/dev/null | grep -o "Disk /dev/vd[b-z]" | grep "Disk $Disk" &>/dev/null;do
echo -e -n "\033[31mOops, something went wrong, please try again (e.g., /dev/vdb or q to quit):\033[0m"
	read Disk
	if [ $Disk == q ];then
		exit
	fi
done
while mount | grep "$Disk" > /dev/null 2>&1;do
	echo -e "\033[31m\nYour disk has been mounted:\033[0m"
	mount | grep "$Disk"
	echo -e -n "\033[31m\nForce uninstalling? [y/n]:\033[0m"
	read Umount
	until [ $Umount == y -o $Umount == n ];do
		echo -e -n "\033[31mOops, something went wrong, please try again [y/n]:\033[0m"
		read Umount
	done
	if [ $Umount == n ];then
		exit
	else
		echo -e "\033[33mIs running, please wait!\033[0m"
		for i in `mount | grep "$Disk" | awk '{print $3}'`;do
			fuser -km $i >/dev/null
			umount $i >/dev/null
			sleep 2
		done
		echo -e "\033[32mSuccess, the disk is unloaded!\033[0m"
	fi
	echo -e -n "\n\033[36mReady to begin to format the disk? [y/n]:\033[0m"
	read Choice
	until [ $Choice == y -o $Choice == n ];do
		echo -e -n "\033[31mOops, something went wrong, please try again [y/n]:\033[0m"
		read Choice
	done
	if [ $Choice == n ];then
		exit
	else
		echo -e "\033[33mIs running, please wait!\033[0m"
		dd if=/dev/zero of=$Disk bs=512 count=1 &>/dev/null
		sleep 2
	sync
	fi
	echo -e "\033[32mSuccess, the disk has been formatted!\033[0m"
done
echo -e "\n\033[36mStep 4: The disk is partitioning and formatting\033[0m"
echo -e "\033[33mIs running, please wait!\033[0m"
fdisk_mkfs() {
fdisk -S 56 $1 << EOF
n
p
1
wq
EOF

sleep 2
mkfs.ext4 ${1}1
}
fdisk_mkfs $Disk > /dev/null 2>&1
echo -e "\033[32mSuccess, the disk has been partitioned and formatted!\033[0m"
echo -e "\n\033[36mStep 5: Make a directory and mount it\033[0m"
echo -e -n "\033[33mPlease enter a location to mount (e.g., /data):\033[0m"
read Mount
mkdir $Mount > /dev/null 2>&1
mount ${Disk}1 $Mount
echo -e "\033[32mSuccess, the mount is completed!\033[0m"
echo -e "\n\033[36mStep 6: Write configuration to /etc/fstab and mount device\033[0m"
echo ${Disk}1 $Mount 'ext4 defaults 0 0' >> /etc/fstab
echo -e "\033[32mSuccess, the /etc/fstab is Write!\033[0m"
echo -e "\n\033[36mStep 7: Show information about the file system on which each FILE resides\033[0m"
df -h
sleep 2
echo -e "\n\033[36mStep 8: Show the write configuration to /etc/fstab\033[0m"
cat /etc/fstab


扫描二维码推送至手机访问。

版权声明:本文由视觉博客发布,如需转载请注明出处。

本文链接:https://feelsight.cn/post/71.html

“linux系统 硬盘自动挂载 自动格式化 脚本” 的相关文章

STM32 keil mdk启动代码发分析

在启动文件我们看到了__main和用户写的main,这2个是有区别的,大概流程如下: 1、复位第一条指令:Reset_Handler   PROC,这里指定为 LDR     R0, =__main。表示调用...

开关电源拓扑结构概述(降压,升压,反激、正激)

开关电源拓扑结构概述(降压,升压,反激、正激)

主回路—开关电源中,功率电流流经的通路。主回路一般包含了开关电源中的开关器件、储能器件、脉冲变压器、滤波器、输出整流器、等所有功率器件,以及供电输入端和负载端。   开关电源(直流变换器)的类型很多,在研究开发或者维修电源系统时,全面了解开关电源主回路的...

stc-isp烧录 下载 协议 过程分析

一、数据封装格式 包头 标示 数据包长度 命令字...

如何看懂电路图(一)--基本的电路符号

如何看懂电路图(一)--基本的电路符号

电子设备中有各种各样的图。能够说明它们工作原理的是电原理图,简称电路图。 电路图有两种,一种是说明模拟电子电路工作原理的。它用各种图形符号表示电阻器、电容器、开关、晶体管等实物,用线条把元器件和单元电路按工作原理的关系连接起来。这种图长期以来就一直被叫做电路图。 另一种...

如何看懂电路图(二)-电源电路

如何看懂电路图(二)-电源电路

前 面介绍了电路图中的元器件的作用和符号。一张电路图通常有几十乃至几百个,它们的连线纵横交叉,形式变化多端,初学者往往不知道该从什么地方开始, 怎样才能读懂它。其实电子电路本身有很强的规律性,不管多复杂的电路,经过分析可以发现,它是由少数几个单元电路组成的。好象孩子们玩的积木,虽然只有十 来...

电源模块中隔离电压3000VDC有什么用?

电源模块中隔离电压3000VDC有什么用?

随着嵌入式行业的快速发展,在各种行业应用中电源要求也越来越高,为保证系统的稳定性,隔离电源应运而生。但隔离电源中关键指标——隔离电压指的是什么?与爬电距离有什么关系?本文将从隔离电源的原理为你揭晓。 微电子行业的高速发展,产品使用场合的电磁环境也越来越复杂,产品的稳定性也受到很大的...

评论列表

访客
访客 IP:四川省
5年前 (2018-09-30)

我靠!你那个老鼠太逗了,我玩了一下午!

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。