Files
StateGrid/install_shell/set_fstab.sh
Qin Bo 2235771f09 Initial commit
Signed-off-by: Qin Bo <bqin@linx-info.com>
2014-02-19 09:07:55 +08:00

46 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
export LANG=c
ROOT_UID=0
E_ROOT=2
if [ $UID -ne $ROOT_UID ];then
echo "You must run this script use root ..."
exit $E_ROOT
fi
FSTAB_FILE=/etc/fstab
#判断rocky4.2和linx6.0,因为这两个版本中/etc/fstab文件中序列号的位置不同
FLAG_VERSION=`grep 'Linx' /etc/issue|awk '{print $1}'`
if [ "${FLAG_VERSION}" == "Linx" ];then
#Linx 6.0.x
for i in `grep -n 'defaults' $FSTAB_FILE |grep -v proc| awk 'BEGIN{OFS="|"}{print $1,$4}'`
do
original_data_mode=$(echo $i | cut -d'|' -f2 | awk -F',' '{print $3}')
line=$(echo $i | cut -d':' -f1)
if [ ${original_data_mode}!=" " ];then
sed -i "${line}s@defaults,acl,${original_data_mode}@defaults@" $FSTAB_FILE
sed -i "${line}s@defaults@defaults,acl,data=writeback@" $FSTAB_FILE
else
sed -i "${line}s@defaults@defaults,acl,data=writeback@" $FSTAB_FILE
fi
done
else
#rocky4.2.x
for i in `grep -n 'acl' $FSTAB_FILE | grep d5000 | awk 'BEGIN{OFS="|"}{print $1,$4}'`
do
original_data_mode=$(echo $i | cut -d'|' -f2 | awk -F',' '{print $2}')
line=$(echo $i | cut -d':' -f1)
if [ ${original_data_mode}!=" " ];then
sed -i "${line}s@acl,${original_data_mode}@acl@" $FSTAB_FILE
sed -i "${line}s@acl@acl,data=writeback@" $FSTAB_FILE
else
sed -i "${line}s@acl@acl,data=writeback@" $FSTAB_FILE
fi
done
fi