【ErrorMessage】"ls command not found "の原因と解決方法
CentOS 8.2 で ls コマンドを実行したところ以下のエラーが発生しました。
# ls
ls command not found
私の環境ではls は以下にありました。通常はここへパスが通っていて、lsが正常に実行されるはずです。
/usr/bin/ls
以下のようにパスを直接打てば実行できます。
# /usr/bin/ls
boot etc lib media opt root sbin sys usrbin dev home lib64 mnt proc run srv tmp var
原因
恐らく、環境変数の設定を間違えて ls へパスが通っていないものと思われます。
環境変数を間違えるよくある手順は上書きしてしまうミスです。
【誤った例】
export PATH=/hogehoge
対処
以下のように既存の値を上書きしないように修正する。
【正しい例】
export PATH=/hogehoge:$PATH
パスを確認するには以下のコマンドを実行します。
# echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/root/bin
どこでPath環境変数を壊しているか分からない場合はログイン時に実行される設定ファイルを追いかけたほうが良いかもしれません
参考:Redhat での
Redhat における bash 設定ファイル読み込みの順番
よく聞かれるエラーメッセージ
個人的に独自に調査した事項をまとめています。各ベンダーとは全く関係がありません。
内容に誤りがある場合や情報が古くなっている場合があります。その場合でも修正されるとは限りません。
参考としてサイト閲覧ください。万が一誤りがあり損失等が発生しても保証しません。あくまでも自己責任でサイトを閲覧ください。