Debian 10から始めて、su 使用するコマンドが変更されました。デフォルトでは、suの実行 コマンドは、予想されるユーザー環境変数を提供しなくなりました。
管理ユーザーrootへの単純な切り替えの場合 suを実行する 引数なしで、期待されるルートのPATH 変数が正しく設定されていません。
症状
次に例を示します:
$ suPassword:#rebootbash:reboot:コマンドが見つかりません#adduser bash:adduser:コマンドが見つかりません
bash:reboot:コマンドが見つかりません– Debian GNU/Linuxに/sbin/へのパスがありません ディレクトリ 解決策
この不便を修正する秘訣は、suに明示的に伝えることです。 ユーザーが直接ログインするかのように環境変数を設定します。これは、-を使用して実行できます スイッチ。
man suからの抜粋 マニュアルページ。 -、-l、–login ユーザーが直接ログインした場合にユーザーが期待するのと同様の環境を提供します。
rootユーザーユーザーの正しいパスを設定するには、必ずsuを実行してください。 -を使用したコマンド または-l または--login swith。例:
$ su -OR $ su -l </ pre>![]()
suを使用してrootアクセスを取得する両方の試行のPATH設定が異なることに注意してください。 コマンド。
Debian