質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.40%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Q&A

解決済

2回答

2043閲覧

CentOS7でのパス設定 /usr/local/binと/usr/binはどこで設定される?

taro373

総合スコア189

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

0グッド

2クリップ

投稿2019/07/08 06:40

CentOS7.5の環境で設定されるパスの順序について

$ cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
の環境で

/etc/profileの最初に

echo "/etc/profile start" echo $PATH ```と書くと ログイン時に下記のようにになりました。

/etc/profile start
/usr/local/bin:/usr/bin

/etc/profileが動作した時点で設定してあるPATHは どこで設定されたのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

質問に対する回答としては、initじゃないですか?
manに書いてありました。

qloginとやらは初めて聞いたので、そのあたりはよく知りません。

投稿2019/07/08 12:24

katsuko

総合スコア3533

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pepperleaf

2019/07/08 14:06

CentOS7以降から、initじゃなくて、systemdでの起動に変わったようです。 (https://thinkit.co.jp/story/2014/12/11/5388) 個々のログイン環境については、ここで設定されるログイン環境に依存すると思いますが、ちょっと確認しきれなかったです。ログイン後の最初に /etc/profile が読み込まれるのは確からしいですが、、。
katsuko

2019/07/08 15:22

あぁ、systemdってあまり知らなかったけど、起動プロセスまで変わってるんですね。 参考になりました。
taro373

2019/07/09 01:05 編集

initの話ですが、理解できました。 initから変わっても、流れはいっしょなのですね。 >init は子プロセスに以下のような環境変数を設定する: >PATH > /usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin /etc/profile が動いた時に、環境変数が設定されているしくみが あるのですね。 「qloginとやら」は、ジョブ管理システムです。 『torque ジョブ管理』で検索してみてください
guest

0

ご自分のホーム配下の.bashrc というファイルの中に
PATH 設定が出来ます。

ここで記載されたPATHが優先的に見るようになります


PATH="$PATH":./:~/bin:・・・・・・・

この様に書いておくと、いちいち./aa なんて しなくても よくなります aaだけで実行できます。

投稿2019/07/08 07:08

nanami12

総合スコア1015

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nanami12

2019/07/08 07:14

/usr/local/binと/usr/bin の順序は特に意識しなくても良いです。 ただ python 等 local/bin の 方を つかいたいのに、usr/bin のほうを むいて困っちゃう なんてときには alias 設定すればいいだけです。
taro373

2019/07/08 07:14

ログインの仕方によって、/usr/local/binへのパスが通っていないことがあります。 追加すればいいだけのことですが、原因を知りたくてお聞きしました。 具体的には ssh でログインすれば、/usr/local/binへのパスは通りますが qloginの時は通っていません。 そのため、そもそも、/usr/local/binへのパスはどこで設定しているのか を調べています。
nanami12

2019/07/08 07:16

そもそも PATH 設定というのは user 毎に 各自で .bashrc を編集して使う代物なので .bashrcに追記する癖をつけておいたほうがよいかと思います。
pepperleaf

2019/07/08 14:07 編集

ん、パスに "." を追加してはいけません。 自分のホームのみなら、問題は少ないでしょうが、セキュリティリスク大です。 もし、"ls" 等の無責任プログラムがあった場合、そちらが先に実行されます。 大変、危険な設定。(セキュリティ問題なので、低評価としました)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.40%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問