#!/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
p1
+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"
Linux 为硬盘抹除原有分区,并重新创建分区
最新推荐文章于 2024-09-15 23:45:09 发布