web-dev-qa-db-ja.com

すべてのユーザーの非ログインシェルとdebianでのログインシェルのシステム$ PATHへのパスを追加する方法

/ opt/my-program/binにいくつかのプログラムをインストールしましたが、すべてのユーザーの非ログインシェルとログインシェルのシステム$ PATHに/ opt/my-program/binを追加したいと思いました。私は何をすべきか?

/ etc/environmentの変更は、ログイン以外のシェルでは問題ありませんが、Debianの/ etc/profile(login Shellによって提供される)が/ etc/environmentで指定された$ PATHをオーバーライドするため、ログインシェルでは機能しません。

5
Yang Bo

/etc/profileの末尾に/etc/bash.bashrcを追加して[ -f /etc/bash.bashrc ] && . /etc/bash.bashrcソース/etc/profileを作成し、次に/etc/bash.bashrcを使用してパス変更をPATH=$PATH:/some/other/pathに追加します。

2
didster

/etc/login.defsファイルには、次のようなデフォルトのパスが含まれています。

ENV_SUPATH      PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ENV_PATH        PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

一部の変数はpamモジュールに移動していますが、/bin/loginは、ユーザーのシェルから独立した構成ファイルを保持しています。

6
Matej Kovac