BASH シェルは、初期化中にいくつかの構成ファイルを読み込もうとします。ログイン シェルか非ログイン シェルかに応じて、2 セットの構成ファイルがあります。
- ベア メタル モニター、SSH、または # su – [ユーザー名] を使用してサーバーにログインすると、ログイン シェルが表示されます。
- 既存のセッション (gnome-terminal、別のシェル内のシェル、または # su [username]… を使用) のターミナルでシェルを開始すると、非ログイン シェルが取得されます。シェル スクリプトは、非ログイン シェルでも実行されます。
以下では、これらの構成ファイルにデバッグを追加して違いを説明します。
ログイン シェル
デフォルトでは、ログイン シェルは次のファイルを読み込みます:
# su - test this is /etc/profile this is ~/.bash_profile this is ~/.bashrc this is /etc/bashrc
~/.bash_profile に注意してください ファイル、デフォルトのファイルは ~/.bashrc を呼び出します 、および ~/.bashrc 呼び出し /etc/bashrc .
何らかの理由で BASH がファイル ~/.bash_profile を見つけられない場合、~/.bash_login を探します。 代わりは。 ~/.bash_login が見つからない場合、BASH は ~/.profile を探します。
また、2 つのケースでは、~/.bash_login または ~/.profile で明示的に呼び出されない限り、~/.bashrc と /etc/bashrc は読み込まれません。
~/.bash_profile が存在しない場合の例:
– ~/.bash_login が存在する場合、~/.profile が存在するかどうかに関係なく:
$ su - test Password: this is /etc/profile This is ~/.bash_login
– ~/.profile のみ:
# su - test this is /etc/profile this is ~/.profile
非ログイン シェル
簡単です。BASH は ~/.bashrc のみをロードし、ファイルは /etc/bashrc を呼び出します。
# su test this is ~/.bashrc this is /etc/bashrc
lvdisplay エラー:「ディレクトリ /var/lock/lvm を作成できませんでした。ファイルベースのロックの初期化に失敗しました。」
パーティション上の RAC OCR および投票デバイスの UDEV ルールをセットアップする方法