modify mkTmpfstab.sh for by-id
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user