46 lines
1.3 KiB
Bash
Executable File
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
|
|
|