modify mkTmpfstab.sh for by-id

This commit is contained in:
zorro
2010-09-27 17:57:08 +08:00
parent d1e025832d
commit 729459754d

View File

@@ -90,42 +90,57 @@ cpTmpfstab(){
###########################################################################
mdfyTmpFstab(){
local i
local j
local LASTNAME=''
local UUIDFROMFSTAB=$(awk '/^[ \t]*[^#]/ { if ($1 ~ "^[UUID]") { print $1}}' $1)
for i in $UUIDFROMFSTAB
do
local NAMEFROMUUID=`blkid -t$i |cut -f 1 -d :`
if [ ! "${NAMEFROMUUID}" ];then
echo "error UUID, can not find devices by blkid" >>$LOGDIR$LOGFILE
exit 1
fi
local j
local LASTNAME=''
if [ `echo $NAMEFROMUUID| wc -w` -lt 2 ];then
LASTNAME=$NAMEFROMUUID
#replace UUID in the temp fstab
local UUIDFROMFSTAB=$(awk '/^[ \t]*[^#]/ { if ($1 ~ "^[UUID]") { print $1}}' $1)
if [ -n "$UUIDFROMFSTAB" ];then
for i in $UUIDFROMFSTAB
do
local NAMEFROMUUID=`blkid -t$i |cut -f 1 -d :`
if [ ! "${NAMEFROMUUID}" ];then
echo "error UUID, can not find devices by blkid" >>$LOGDIR$LOGFILE
exit 1
fi
if [ `echo $NAMEFROMUUID| wc -w` -lt 2 ];then
LASTNAME=$NAMEFROMUUID
else
for j in $NAMEFROMUUID
do
if [ `echo $j|grep 'md'` ];then
if [ ! $LASTNAME ]; then
LASTNAME=$j
else
for j in $NAMEFROMUUID
do
if [ `echo $j|grep 'md'` ];then
if [ ! $LASTNAME ]; then
LASTNAME=$j
else
echo "too many raid devices be found" >>$LOGDIR$LOGFILE
exit 1
fi
else
if [ `mdadm -Ds -v|grep -w $j` ];then
continue
else
echo "too many partitions be found" >>$LOGDIR$LOGFILE
exit 1
fi
fi
done
echo "too many raid devices be found" >>$LOGDIR$LOGFILE
exit 1
fi
sed -i s@$i@$LASTNAME@g $1
LASTNAME=''
else
if [ `mdadm -Ds -v|grep -w $j` ];then
continue
else
echo "too many partitions be found" >>$LOGDIR$LOGFILE
exit 1
fi
fi
done
fi
sed -i s@$i@$LASTNAME@g $1
LASTNAME=''
done
fi
#replace by-id in the temp fstab
local BYIDFROMFSTAB=$(awk '/^[ \t]*[^#]/ { if ($1 ~ "by-id") { print $1}}' $1)
if [ -n "$BYIDFROMFSTAB" ];then
for i in $BYIDFROMFSTAB
do
local NAMEFROMBYID=`readlink $BYIDFROMFSTAB`
NAMEFROMBYID="/dev/`basename $NAMEFROMBYID`"
sed -i s@$i@$NAMEFROMBYID@g $1
done
fi
}
###########################################################################
@@ -145,6 +160,13 @@ checkArgument(){
fi
}
###########################################################################
# Function Name: ()
# Input: $PATHFROM $PATHTO
# Return: nothing
# Description: check the arguments
###########################################################################
###########################################################################
# Function Name: usage()
# Input: nothing