0

ntp サービスをチェックするスクリプトを作成しました。それを更新してから、サービスを開始します。

以下のスクリプトで行っていることは 3 つあります。

  1. サービスが適切に構成され、実行されているかどうかを確認します。次に、スクリプトを終了します。つまり、何もしません。
  2. サービスが適切に構成されている場合は、サービスを開始してスクリプトを終了します。
  3. サービスが構成されていない場合は、サービスを停止 -> サービスを構成 -> サービスを開始します。

上記のシナリオから、シナリオ 1 とシナリオ 3 は正常に動作します。しかし、シナリオ 2 のテスト中に、以下のエラーがスローされます。

~ # sh ntpConfigure.sh ntpConfigure.sh: 3 行目: NTP_CONF.BAK=/etc/ntp.conf.backup: 見つかりません ntpd は実行されていません /etc/init.d/ntpd はサーバー time.myCompany.com を実行していません / etc/ntp.conf が構成されています サービスは既に構成されており、ntp サービスを開始しています ntpd ntpConfigure.sh を開始しています: 77 行目: echo サービスが正常に開始されました: 見つかりません

なぜこのエラーがスローされるのですか? すべてをチェックしましたが、私のコードは問題ないようです。上記のエラーで機能は正常に動作します。何か案は?

コード:

#VERIFY_NTPQ="/bin/ntpq -p"
NTP_CONF="/etc/ntp.conf"
NTP_CONF.BAK="/etc/ntp.conf.backup"
NTPQ_SERVICE="/etc/init.d/ntpd"
TOUCH="/bin/touch"
GREP="/bin/grep"
CP="/bin/cp"
CHKCONFIG="/bin/chkconfig"

$NTPQ_SERVICE status
if [ $? -eq 0 ]
then
        isSERVICE_RUNNING=true
        echo "$NTPQ_SERVICE is running"
else
        isSERVICE_RUNNING=false
        echo "$NTPQ_SERVICE is NOT running"
fi

$TOUCH $NTP_CONF
$GREP "server" $NTP_CONF
if [ $? -eq 0 ]
then
        isSERVICE__CONFIGURED=true
        echo "$NTP_CONF is configured"
else
        isSERVICE__CONFIGURED=false
        echo "$NTP_CONF is NOT configured"
fi

if $isSERVICE_RUNNING && $isSERVICE__CONFIGURED
then
        echo "ntp service is already configured, nothing to do"
        exit 0
elif $isSERVICE__CONFIGURED
then
        echo "Service is configured already, starting ntp service"
        $NTPQ_SERVICE start
        if [ $? -eq 0 ]
        then
                echo" Service is started successfully"
                exit 0
        else
                echo "Failed to start service"
                exit 1
        fi
else
        echo "$NTP_CONF not configured, Configuring $NTP_CONF"
        echo "Stopping ntp service "
        $NTPQ_SERVICE stop
        echo "Taking backup of $NTP_CONF file to $NTP_CONF.BAK"
        $CP $NTP_CONF $NTP_CONF.BAK
        echo "Updating $NTP_CONF file with the required configurations"
        echo "restrict 127.0.0.1" >  $NTP_CONF
        echo "restrict default kod nomodify notrap" >>  $NTP_CONF
        echo "driftfile /etc/ntp.drift" >>  $NTP_CONF
        echo "server time.myCompany.com" >> $NTP_CONF
        if [ $? -eq 0 ]
        then
                echo "$NTP_CONF is configued properly"
                echo "Starting ntp service"
                $NTPQ_SERVICE start
                 if [ $? -eq 0 ]
                 then
                        echo "ntp service configured and started successfully"
                        echo "Configuring ntp service to start at bootup"
                        $CHKCONFIG ntpd on
                        exit 0
                 else
                        echo "Failed to start ntp service"
                        exit 1
                 fi
        else
                echo "Failed to configure ntp service"
                exit 1
        fi
fi
4

1 に答える 1