Linuxには、グローバル変数を保存するための/ etc / environmentがあります。 FreeBSDで?

Linuxには、グローバル変数を保存するための/ etc / environmentがあります。 FreeBSDで?

Linuxでは、グローバルに変数を保存する必要がある場合、/etc/environmentFreeBSDでそのファイルは何ですか?私はこれを見たことがあるhttps://www.freebsd.org/doc/en_US.ISO8859-1/articles/new-users/your-working-environment.htmlしかし、これは私に何の手がかりも与えません。

答え1

最も簡単なオプションはLinuxと同じです/etcsh互換性のあるログインシェルの場合にあり/etc/profile、シェルの場合はリンクしたドキュメントに記載されていますcsh/etc/csh.cshrc

ログイン環境はでも設定できます/etc/login.conf。これはシェルスクリプトではありません。ログイン機能データベースしたがって、厳密な形式に従います。あなたは読まなければなりませんman login.conf修正しようとする前に。

このファイルに2つの環境変数を追加するには、変更してVAR1追加するログインクラスを選択できます。VAR2

:setenv=VAR1=value1,VAR2=value2:

完了したら、cap_mkdb /etc/login.confマニュアルの指示に従ってルートとして実行してください。

デフォルトのパスは次のとおりです。いいえに設定setenv

答え2

私はこの問題に直面し、Ubuntuシステムでこの問題がどのように実行されたのか疑問に思いました。答えは合格ですポリアクリルアミド。 LinuxPAMモジュールpam_envこれを行います。

FreeBSDはオープンPAMこのモジュールが存在しないようです。

FreeBSDではログインプロファイルしかし、そのようなことはそれほど一般的ではありませんpam_env。たとえば、cronジョブの環境変数を設定しません。

まだ答えが出ていないようです。 Linuxシステムでも普遍的でない理由は、pam_envすべてのLinuxシステムで構成されていないからです。

関連情報