web-dev-qa-db-ja.com

Linuxシステムでは、$ HOME環境変数は常に設定されていますか?

マシンがLinuxカーネルを実行していると仮定すると、セッションはBashシェルを使用し、すべてがデフォルトの構成を使用しています(ユーザーが構成ファイルに変更を加えていない場合)、$HOME環境変数は常に設定されていますか?

14
yanhan

はい。 POSIX仕様OSに$ HOMEの値を設定するように要求します

HOME
システムは、ログイン時にこの変数を初期化して、ユーザーのホームディレクトリのパス名にします。 pwd.hを参照してください。

ユーザーnobodyはどうですか?

# su - nobody
No directory, logging in with HOME=/
$ echo $HOME
/

nobodyには本当のホームはありませんが、HOMEはルートディレクトリに設定されています。

18
John1024