私は次のURLを参照しています JAVA_HOME設定
私はNilsが提供した最後の解決策に興味があります。これは、/etc/profile.localファイルを編集してすべてのユーザーに設定します。問題は、私はopenSUSE 12.3を使用していますが、/etc/profile.localがないことです。
このような状況ではどうすればよいですか?
答え1
このファイルは、アップデートの取得時に上書きされない/etc/profile.local
システム固有の変更が発生した場所でした。/etc/profile
ファイルが存在する場合は、システムからファイルを引き続き取得できます。ファイルが/etc/profile
あるかどうかを確認できます(profile.local
ファイル名を検索するか、ファイルを作成して試してください)。
ただし、ディレクトリがあり、/etc/profile.d
次/etc/profile
の内容がある場合(Ubuntu 12.04以降):
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
unset i
fi
. $i
その後、このメカニズムはそのディレクトリにあるすべてのファイルをインポートします()。これは.local
個々のファイルのためのより近代的なソリューションです(他のパッケージが他のコンテンツを損なうことなく、必要に応じてファイルに入れて削除できるという利点があります)。 OpenSUSEに似たものがある場合は、ファイルを作成して/etc/profile.d/your_name.sh
必要なコードをその中に入れます。
これらのエントリがすべて存在しない場合は行を直接追加できますが、/etc/profile
パッケージがアップグレードされると変更が失われる可能性があります。
答え2
openSUSEの最初の行から始めます/etc/profile
。
# /etc/profile for SuSE Linux
#
# PLEASE DO NOT CHANGE /etc/profile. There are chances that your changes
# will be lost during system upgrades. Instead use /etc/profile.local for
# your local settings, favourite global aliases, VISUAL and EDITOR
# variables, etc ...
つまり、rootアカウントで作成する必要があります/etc/profile.local
。これにより、パッケージが更新されてもコンテンツが/etc/profile
自動的に選択されます。/etc/profile.local
答え3
私のopenSuSE 15.2システムの/ etc / profileから:
#
# And now let's see if there is a local profile
# (for options defined by your sysadmin, not SUSE Linux)
#
test -s /etc/profile.local && . /etc/profile.local
本番SLES 12.3サーバーでも同じことを行います。