私はAmazon EC2インスタンスにsshpassという名前のアプリケーションをインストールしました。動作できません(AWS 以外のインスタンスでは正常に動作しますが)。一部のフォーラムでこれが機能するには、rootとして実行する必要があるかもしれないという内容を読んだ。
AWSインスタンスでアプリケーションをrootとして実行するには、sudoを使用してアプリケーションを実行する必要があります。 bashを使用してsshpassを実行しようとすると、sudo sshpass
「コマンドが見つかりません」が出力されます。
sudoを使用してsshpassをrootとして実行できるように、sudoをどこでどのように設定しますか?
答え1
コマンドへのフルパスを提供します。
たとえば、
sudo /opt/local/bin/sshpass
明らかに、これはどこに置くかについての正確な推測ではありません。
答え2
Bashが「sudo:コマンドが見つかりません」を印刷すると、sudoはシステムにまったくインストールされていません。代わりにsudoを使用できますsu -c sshpass
。
答え3
イメージの種類(Amazon Linux、Ubuntu、Suse、CentOS、Debianなど)に応じてファイルのインストールパスを見つけて実行できます。その理由は、アプリケーションが/ sbinまたは/にあるためです。 usr / sbinおよびnot root以外のユーザーのデフォルトパスにあります。
RedHat、Fedora、Amazon Linux、Suse、CentOSなどのRPMベースのディストリビューションでファイルの場所を見つけるには、次の手順を実行します.
rpm -ql <your package name>
Debベースのディストリビューション(Ubuntu、Debian)の場合は、次のようにします。
dpkg -L <your package name>
リスト内のbinまたはsbinで終わるパスでバイナリを表示できるはずです。