奇妙な問題があります。残念ながら、Linux(Archlinux、2.6.38カーネル)で多くの作業を試みたため、この問題が発生した理由がわかりません。問題は、私のシェルが/ sbinでプログラムを見つけられなくなったことです。次のようになります。
[chris@myhost ~] insmod
bash: insmod: command not found
[chris@myhost ~] ls -l /sbin/insmod
-rwxr-x-r-x root root 7888 Mar 23 10:14 /sbin/insmod
[chris@myhost ~] /sbin/insmod
-- Works
ご覧のとおり、プログラム(sbinのすべての実行可能ファイルに問題を引き起こす)がまだ存在し、/sbin/nameを使用して起動できますが、短い名前のエイリアスだけが破損しているようです。この問題をどのように解決できますか?
答え1
これはエイリアシングとは関係ありません。PATH
環境変数によって制御されます。
多くのシステムでは、rootにはinがありますが、/sbin
通常のユーザーにはありません。/usr/sbin
PATH
insmod
フルパスを入力せずなどを入力したい場合は、次のように入力するだけです。
PATH=$PATH:/sbin
シェル設定ファイル(たとえば、.bashrc
ホームディレクトリ)
/etc/profile
または、/etc/environment
を見て/etc/login.defs
設定方法を確認しPATH
て変更することもできます。
探しているファイルが実行されているかgrep -R PATH /etc
(またはgrep -HIRn PATH /etc
)確認する簡単な方法です。