ターンキーLinux Redmineを使用して仮想マシンをセットアップし、より多くのプロジェクトをインストールするためにサーバーにSSHを試しています。
sudoコマンドを認識しないようです。何かをsudoしようとするたびに、次のエラーメッセージが表示されます。
-bash: sudo: command not found
「whereis sudo」と入力すると、出力が次のような他の場所を読みました。
sudo:
答え1
たぶんインストールされていませんか?パッケージマネージャを開き、インストールします。Sudoパック。
答え2
それから来るようですhttp://www.turnkeylinux.org/redmineRedmineと同様に、Ubuntuとは異なり、sudoはデフォルトでは使用されません。 SSHにどのユーザー名を使用していますか?その場合は、SSHを介してRedmineシステムに接続するときに実行するすべての操作がそのまま維持されるため、root
それを使用する必要はありません。たとえば、他のものであれば、そのコマンドを使用してから始まるシェルを取得できます。sudo
root
admin
su
root
root
答え3
rootアカウントにログインして起動します。それから
$ apt-get install sudo
既存のユーザーをグループに追加sudo
$ sudo adduser <user> sudo
次に、次にログインし、<user>
コマンドsudo
が必要です。
答え4
コマンドラインから呼び出すバイナリは、rootユーザーのPATHではなく現在のユーザーのPATH変数の一部であるため、エラーが発生します。
アクセスしたいバイナリのパスを見つけてそれらを確認できます。私の場合は、「bettercap-ng」と呼びました。だから私は走った。
$ which bettercap-ng
output: /home/user/work/bin/bettercap
この場所が私のrootユーザーパスの一部であることを確認しました。
$ sudo env | grep ^PATH
出力:PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
したがって、sudoはコマンドラインで呼び出すバイナリを見つけることができません。したがって、見つからないエラーコマンドが返されます。
以下のようにバイナリを呼び出すときに、現在のユーザーのPATHを使用するようにsudoに指示できます。
$ sudo -E env "PATH=$PATH" [command] [arguments]
実際にそれを使用してエイリアスを作成できます。
$ alias mysudo='sudo -E env "PATH=$PATH"'
エイリアス自体の名前をsudoとして指定して、元のsudoを置き換えることもできます。
よりこの動画段階的なソリューション