PATHに追加した後、sudoでコマンドが見つからないのはなぜですか?


19

次のようなコマンドを便利に使用できるように、PATHにコマンドを追加します。

export $PATH = "$PATH:/opt/storm/bin"

stormルート権限が必要な場合がありますが、で使用するとsudo、Ubuntuはコマンドを見つけることができません。

sudo storm nimbus

使用するときにこれらのコマンドを見つけるにはどうすればよいsudoですか?


そのフォルダとファイルの許可は何ですか?
セルギーKolodyazhnyy

回答:


29

パスにパスを追加する必要がありsudoます。

コマンドを実行する sudo visudo

次のような行が表示されます。

Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:$

ここでコマンドのパスを追加すると、これが機能するはずです。

例えば:

$ sudo storm
sudo: storm: command not found

次に、上記のようにパスを追加します。

$ sudo visudo 

secure_path="......:/opt/storm/bin"

保存して終了。

sudo stormは正常に動作します。

また、のデフォルトパスにパスを追加する必要があります/etc/profile


これに感謝します。それは助けになり、私はそこから学んだ!
darbehdar

0

ユーザーレベルでエイリアスを作成したと思います。そのため、ショートカットはユーザーレベルでのみ使用できます。

このエイリアスコマンドラインは、/ home / user / .bashrcではなく、/ rootフォルダーの.bashrcファイルに追加する必要があります(この.bashrcファイルは、rootではなくユーザーアカウントに属します)。

rootとしてログインしたときにシェルでaliasコマンドを直接使用できるようにします。


1
どう/etc/profileexport $PATH = "$PATH:/opt/storm/bin"このファイルに追加します、これはグローバルだと思いますが、まだこのコマンドが見つかりません
ロジャー

この stackoverflowの質問はあなたの問題を解決するかもしれません:)
匿名カモノハシ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.