たとえば、私が使用したほとんどのLinuxディストリビューションで次のように入力した場合設定されている場合通常のユーザーであれば、ルートだけがそのようなコマンドを実行できるというメッセージを受け取ります。
Debianは単にコマンドを見つけることができないことを意味します(/usr/bin/でコマンドを探しているからです)。
「ifconfigをrootとして実行する必要があります。」同じメッセージを表示する方法があるかどうか疑問に思います。
答え1
次のことができます。
trap '
if [[ $BASH_COMMAND =~ /sbin ]] && ((UID!=0)); then
echo >&2 "${BASH_COMMAND##*/sbin/} must be run as root"
fi
' DEBUG
ただし、ifconfig
ユーザーはを入力してアクセスできます/sbin/ifconfig
。
ifconfig
Chris Downが言ったように、これらのプロンプトメッセージがデフォルトIDで発行されるのを見たことはありません。
答え2
Debianではコマンドが見つからないとだけ出てきます(/usr/bin/でコマンドを探しているからです)
/sbin
これは root ではなく、ユーザーの PATH にないことを意味します。/sbin/ifconfig
ルートでない場合は、明示的に実行して表示される内容を確認してください。
メッセージが正常な場合は、/sbin
PATHに追加するだけです。