Linux 为硬盘抹除原有分区,并重新创建分区

#!/bin/bash

echo 'initial disk...'
echo -e "\033[32mWanning...\033[0m"    #\033[32m。。。\033[0m   字体颜色块
fdisk -l 2>/dev/null | grep '^Disk /dev/[sh][a-z]' | awk -F: '{print $1}'

read  -p "input your choice:" PARTDISK
until fdisk -l 2>/dev/null | grep '^Disk /dev/[sh][a-z]' | awk -F: '{print $1}' | grep "^Disk ${PARTDISK}" &> /dev/null;do
read  -p "wrong option input your choice againg:" PARTDISK
done
read -p "will destory all data,continue:" CHOICE
until [ $CHOICE == 'y' -o $CHOICE == 'n' ];do
read -p "will destroy all data,continue:" CHOICE
done
if [ $CHOICE == 'n' ];then
echo 'quit'
exit 9
else
echo $PARTDISK
for I in `mount | grep "${PARTDISK}" |awk '{print $3}'`;do    #查看原有的分区是否有挂载,如果有则卸载
  echo $I
#  fuser -km $I                         #查询在用挂载的程序,并kill掉
  umount $I
  echo "$I umount ok.."
done
dd if=/dev/zero of=${PARTDISK} bs=512 count=1        #抹除所有分区,将mbr给覆盖掉就可以
sync                                                                                #抹除速度很快 ,需要同步并睡眠3s钟
sleep 3
echo 'n
p

1

 

+10M
n
p
2

 

+20M
n
p
3

 

+30M
t
3
82
w' | fdisk $PARTDISK &> /dev/null
partprobe $PARTDISK
sync
sleep 2
mke2fs -j ${PARTDISK}1 &> /dev/null     #创建文件系统
mke2fs -j ${PARTDISK}2 &> /dev/null
mkswap  ${PARTDISK}3 &> /dev/null     #创建swap分区
fi
echo "partdisk has finish"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值