1. 程式人生 > >Linux之批量掛載硬盤

Linux之批量掛載硬盤

system 顯示 etc 第一個字符 增加 mount 系統 don 得到

############parted工具分區###############

#!/bin/bash #shell腳本開頭格式
PATH=/bin:/sbin:/usr/bin:/usr/sbin #保證腳本中的命令能在此路徑中搜索得到
export PATH #設置以上環境變量,使之生效
i=1
while [ $i -lt 13 ] #判斷變量i是否小於13,(硬盤數量,除系統盤之外是12塊),此處13取決於要掛載幾塊硬盤
do
j=`echo $i|awk ‘{printf "%c",97+$i}‘` # %c代表ASCII字符.顯示相對應參數的第一個字符;97代表a;系統盤是sda,如果是其它的需要修改腳本
parted /dev/sd$j <<FORMAT # <<代表輸入重定向(FORMAT作為標識符,當再遇到FORMAT這個標識符表示結束);FORMAT之間的內容作為命令輸入到parted /dev/sd$j之後
mklabel gpt # mklabel創建新的磁盤為gpt分區
mkpart primary 0 -1 #創建一個分區為主分區,並將整塊磁盤分為一個分區
ignore
quit
FORMAT
mkfs.ext4 -T largefile /dev/sd${j}1 #格式化磁盤
mkdir /disk${i} #十以上用大括號包含,如${10}
mount="/dev/sd${j}1 /disk${i} ext4 defaults 0 0"
rm -rf /disk${i}/*
echo $mount >>/etc/fstab #寫入分區表
i=$(($i+1)) #在shell中,$(())用於算術運算
done
echo "/n/n*****Formating and Mounting have finished****/n/n" #格式化和安裝完成
mount -a #掛載(掛載在/etc/fstab文件中的所有文件系統)

############fdisk工具分區###############

#!/bin/bash #shell腳本開頭格式
PATH=/bin:/sbin:/usr/bin:/usr/sbin #保證腳本中的命令能在此路徑中搜索得到
export PATH #設置以上環境變量,使之生效
i=1
while [ $i -lt 13 ] #判斷變量i是否小於13,(硬盤數量,除系統盤之外是12塊)
do
j=`echo $i|awk ‘{printf "%c",97+$i}‘` # %c代表ASCII字符.顯示相對應參數的第一個字符;97代表a;系統盤是sda,如果是其它的需要修改腳本
fdisk /dev/sd$j <<FORMAT # <<代表輸入重定向(FORMAT作為標識符,當再遇到FORMAT這個標識符表示結束);FORMAT之間的內容作為命令輸入到parted /dev/sd$j之後
n # mklabel創建新的磁盤為gpt分區
p #創建一個分區為主分區,並將整塊磁盤分為一個分區
1
#按回車默認輸入有效值
#按回車默認輸入有效值
w
FORMAT
mkfs.ext4 /dev/sd${j}1 #格式化磁盤
mkdir /disk${i}
mount="/dev/sd${j}1 /disk${i} ext4 defaults 0 0"
rm -rf /disk${i}/*
echo $mount >>/etc/fstab #寫入分區表
i=$(($i+1)) #在shell中,(())用於算術運算
done
echo "/n/n*****Formating and Mounting have finished****/n/n" #格式化和安裝完成(輸出的內容之間有空格,則需要加雙引號)
mount -a #掛載(掛載在/etc/fstab文件中的所有文件系統)

############手工2TB磁盤格式化###############
對於2TB的大磁盤,分區方法如下:
# parted /dev/sdb
GNU Parted 2.1
Using /dev/sdb
Welcome to GNU Parted! Type ‘help‘ to view a list of commands.
(parted) print
Model: ATA Hitachi HUA72302 (scsi)
Disk /dev/sdb: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags

(parted) mklable gpt
(parted) mkpart primary 0 2000000
(parted) printModel: ATA Hitachi HUA72302 (scsi)

Disk /dev/sdb: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 1049kB 2000GB 2000GB primary ext4


(parted) quit
快速格式化該分區的方法:
#mkfs.ext4 -T largefile /dev/sdb1
註:

如果使用mkfs.ext4不帶參數格式化分區,會使得磁盤格式化非常緩慢,因此需要增加-T largefile參數。

Linux之批量掛載硬盤