인생사는 이야기
parted 쉘스크립트 본문
#!/bin/bash
### make by KimKB
###
###
echo "###### mkdir ##############################################################"
num=1
num2=10
echo "
장치명 /dev/xxx(뒤에 sdb,sdc 등.. 글자만 입력)???"
read dev
echo "
마운트 할 디렉토리 명(data,media : /없이 입력)??"
read dr
echo "
위 디렉토리 생성시 마지막 디렉토리의 숫자 입력 ex) /data60까지면, 입력 값 : 60"
read num3
echo "
파일 시스템 타입을 적어 주세요(ext2,ext3,ext4)???"
read fs
echo "
디렉토리 생성 및 /etc/fstab 마운트 목록 삽입(잘못 입력시 /etc/fstab 잘못 입력한 라인 삭제!!)
위 항목 잘못 입력시 ctrl + c 입력 후 다시 시작"
sleep 5
echo " ################### 마운트 디렉토리 및 /etc/fstab 마운트 목록 생성 #####################"
while (( $num < 10 ))
do
mkdir "/$dr"0"$num"
echo "/dev/$dev$num "/$dr""0""$num" $fs defaults 2 $num" >> /etc/fstab
let num+=1
done
while (( $num2 <= $num3 ))
do
mkdir "/$dr$num2"
echo "/dev/$dev$num2 "/$dr""$num2" $fs defaults 2 $num2" >> /etc/fstab
let num2+=1
done
cat /etc/fstab
echo "fstab 확인"
echo "
############## 디렉토리 생성 완료 및 /etc/fstab 마운트 목록 생성 완료 ###################
"
echo "
######### 디스크 라벨 설정 ##############################################################
"
echo "Make FileSystem Label(gpt,bsd,loop,mac,mips,msdos,pc98,sun)"
read label
parted -s /dev/$dev mklabel $label
fdisk -l
echo "라벨 변경 확인"
echo "
######### 파티션 나누기 ##############################################################
"
num4=1
sp=start
st1=0 // 자동 분할 시작값
st2=1150 // 자동 분할 끝값
while [ -n "$sp" ]
do
echo "[[Q,q] 입력시 종료 , 다른 키 다음 진행]"
read stop
if [[ $stop == [Qq] ]]
then #[ "$stop" = q -o "$stop" = Q ] Old style
sp=
else
echo "setting /dev/$dev$num4"
# echo "시작 (MB)"
# read st1
# echo "끝 (MB)"
# read st2
parted -s /dev/$dev mkpart primary "$st1" "$st2"
let num4+=1
st1+=1150 // 시작값에 나눠질 파티션 사이즈 값 입력
st2+=1150 // 끝값에 나눠질 파티션 사이즈 값 입력
parted -s /dev/$dev print
fi
done
parted -s /dev/$dev print
echo "complete table"
echo "
######## 파일 시스템 포맷 ###############################################################
"
num5=1
while (( $num5 == $num3 ))
do
if mkfs.$fs /dev/$dev$num5
echo "
############################ 완료 /dev/$dev$num ########################
"
let num5+=1
parted /dev/$dev print
else echo "!!!!!!!!!!!!! ERROR ERROR !!!!!!!!!!!!"
done
echo "
########### 포맷 완료 ################################################################
"
echo "
############### 마운트 mount -a ########################
"
mount -a
echo "
################################### END ##################################"