リモート sudo コマンドが機能しない

リモート sudo コマンドが機能しない

当社はPuppetによるAD統合を自動化しました。簡単に言えば、サーバーは間違ったドメインに参加しました。現在、ドメインから削除するためにbashスクリプトを作成しましたが、リモートsudoコマンドは機能しません。また、/ etcからAD_joinedファイルを削除しようとしています。スクリプトにはファイルがまだ残っていると表示されますが、SSHを介してボックスに接続するとファイルが実際に削除され、「sudo adleave」コマンドが正しく機能します。私は何が間違っていましたか?ちなみに、rootログインは無効になっていますsudo

スクリプト:

#!/bin/bash

IP=`cat prod_ips.txt`
check=`ls /etc | grep ^AD`
for i in $IP;
do
echo '------------------------------------------------------------';
echo "Connecting to $i";
echo ""
ssh -t -o StrictHostKeyChecking=no -o ConnectTimeout=3 -o            PasswordAuthentication=no $i "sudo rm -f /etc/AD_joined; sudo adleave --force;"

echo $check
if [ -z $check ]; then
  echo "AD_joined file removed. Server should join correct domain after next   puppet run!";
else
  echo "File still present, something went wrong";
fi

echo '------------------------------------------------------------';
echo "";
done;

出力例:

------------------------------------------------------------
Connecting to <IP>

Authorized uses only. All activity may be  monitored and reported.
sudo: adleave: command not found
Connection to <IP> closed.
AD_joined
File still present, something went wrong
------------------------------------------------------------

ベストアンサー1

最初の投稿のコメントを読む:/usr/sbin/adleaveスクリプトからadleave

おすすめ記事