私はLinuxコマンドラインで作業しています。ところで、私が読んでいる本には、su -l(-) username
新しいシェルセッションを開始し、変更したいユーザーの環境をロードすることが示されていますが、そうではありsu
ません。
私はrootのときにコマンドを入力したのでsu testuser
testuserでした。さてそれ以降にを入力したんですけどecho "$USER"
ねtestuser
。これはテストユーザーの環境をロードすることを意味します。そうですか?何が問題なの?
「新しいシェルセッションを開始する」とは、どういう意味ですか?シェルにログインおよびログアウトメカニズムがありますか?
答え1
数root権限を提供しますが、PATH変数と現在の作業ディレクトリは変更されません。したがって、/usr/sbin フォルダにあるファイルは実行できません。
数 -PATHも変更されます。ルートのホームが現在の作業ディレクトリになります。あなたは正しくルートになり、すべてのコマンドを実行できます。