サーバーを再起動して以来、SSHでコマンドを実行できなくなりました。
すべてのコマンドは、次の結果を返します。-bash: ls: command not found
私の$ PATHが何とか変更されたに違いありません/bin/ls
。
返品echo $PATH
:
/usr/local/sbin:/usr/sbin:/sbin:$PATH:/opt/jdk1.8.0_45/bin:/opt/jdk1.8.0_45/jre/bin:/root/bin
私の考えでは、Javaが原因のようです。しかし、$ PATH変数をどのようにリセットしますか?
答え1
次のコマンドを実行して、/ binまたはPATHに必要なディレクトリを追加できます。
export PATH="$PATH:/bin"
その後、その行を.profileまたは.bashrc(bashを使用している場合)に追加して、ログインするたびにそのディレクトリをパスに含めることができます。
答え2
あなたのものを見ると、起動スクリプトのどこかにアプリケーションが自分自身を追加しようとしますが、正しく実行していないPATH
ようです。その理由は実際のパスに拡張する必要がありますが、実際には文字列に含まれる文字列を含めるからPATH
です。PATH
$PATH
$PATH
$PATH
Javaパスがパスにあるという事実は、それを有力な容疑者にします。次の操作を実行できます。
PATH='$PATH:/opt/jdk1.8.0_45/bin:/opt/jdk1.8.0_45/jre/bin'
変える:
PATH="$PATH:/opt/jdk1.8.0_45/bin:/opt/jdk1.8.0_45/jre/bin"
引用の違いに注意してください。