マシンがLinuxカーネルを実行していると仮定すると、セッションはBashシェルを使用し、すべてがデフォルトの構成を使用しています(ユーザーが構成ファイルに変更を加えていない場合)、$HOME
環境変数は常に設定されていますか?
はい。 POSIX仕様OSに$ HOMEの値を設定するように要求します。
HOME
システムは、ログイン時にこの変数を初期化して、ユーザーのホームディレクトリのパス名にします。 pwd.hを参照してください。
ユーザーnobody
はどうですか?
# su - nobody
No directory, logging in with HOME=/
$ echo $HOME
/
nobody
には本当のホームはありませんが、HOME
はルートディレクトリに設定されています。