- ベストアンサー
~/.bash_profileがログイン時に反映されないのはなぜ?
LINUX系OS全般的に初心者です。 TeraTermを使いサーバにTelnet接続し、~/home/(ユーザ名)パスの下に .bash_profileファイルを以下の内容で作成しました。 export PATH=/usr/local/pgsql/bin:$PATH (この1行のみ) そして、再度同ユーザでログインしても/usr/local/pgsql/bin が$PATHに追加されていません。 source ~/.bash_profileを実行すると追加が成功することから どうやら.bash_profileの内容自体には問題ないようなのですが、 ログイン時に反映されないのはなぜでしょうか? お分かりになる方、どうかご教授ください! ちなみに、echo $HOMEの内容は確認済みで、 $HOME = 'home/(ユーザ名)'となっています。 なので、ファイルの置き場所も間違ってはいないと思うのですが? よろしくお願いいたします。
- idaira
- お礼率60% (66/110)
- Linux系OS
- 回答数4
- ありがとう数4
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
.profileにする。
その他の回答 (3)
- choconamacream
- ベストアンサー率44% (152/338)
Linuxの再起動は、してみましたか? 全ユーザに反映したい場合は、以下の設定ファイルを用います。 /etc/bashrc /etc/profile 私の場合は、Tomcat使用時にCLASSPATHの設定などをしていた時に、よく似たような症状に出会います。 Linux歴は長いのですが原因が未だに分からないので、仕方なく.bashrcと.bash_profileの両方に設定するようにはしていますけども。
お礼
ありがとうございます。 Linuxの再起動はしていません。 再起動する権限がないのでできません。
- Murasan759
- ベストアンサー率59% (312/527)
ディストリビューションによって特別な仕様になっていることもあります。 とりあえず、.bashrc のほうで設定してみたらどうなりますか?
お礼
ありがとうございます。 .bash_profileの内容をそのままに 移して.bashrcも作成してみましたが、 うまくいきませんでした。
- notnot
- ベストアンサー率47% (4848/10261)
いろいろ考えてみましたが、思いつきませんね。 念のためですが、.bash_profile のスペルミスと言うことではないですよね? ps l で表示されるCOMMANDは、-bash のようにハイフンが付いてますか? ls -lu /etc/profile で、表示されるファイル参照時刻はログインした時刻になっていますか?
お礼
ありがとうございます。 スペルミスではありません。 ログインした時刻にもなっています。 ところで、pslとはなんですか? 以上です。よろしくお願いいたします。
関連するQ&A
- 環境変数の設定(PATH)
今、環境変数の設定(PATHの設定)を行っています。 OSは、RedHat9です。 スーパーユーザーのPATHは、 echo $PATHコマンドで見ると /usr/local/sbin:/usr/bin:/home/user1/test となっている。 しかし.bash_profileをみると PATHには、/usr/local/sbin:/usr/binしか 設定しておらず、 ユーザー(user1)の.bash_profileにも /home/user1/testをPATHに設定していない。 どこかでPATH設定を行っていると思いますが わかりません。 PATHの設定は、.bash_profileを設定するとは わかっているのですが、 スーパーユーザーの.bash_profileの記述と echo $PATHで見たPATHの構成がことなるのは なぜでしょうか? よろしくお願い致します。
- 締切済み
- Linux系OS
- パス(PATH)の設定ファイルについて
OSはRed Hat Linux 9 を使用しております。 また、シェルはbashを使用しております。 ユーザがシステムにログインする際は、通常ですと /etc/profile ~/.bash_profile ~/.bash_login ~/.profile ファイルを読込、パス(PATH)の設定を行うと思いますが、 sshでrootユーザでシステムにログインした際は、 「echo $PATH」の結果は以下でした。 /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/sbin su -で再度rootユーザでログインした際、もしくは、他ユーザからsu -でログインすると 「echo $PATH」の結果は以下でした。 /bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:/root/bin:/sbin ログインの仕方でパス(PATH)に違いがあります。 また、「/usr/local/bin」をパス(PATH)として設定している記述が 上記ファイルに見当たりません。 http://sakaguch.com/PastBBS/0038/B0018808.html http://oshiete1.goo.ne.jp/kotaeru.php3?q=800405 等のサイトを参考に、以下ディレクトリ配下を確認しましても /etc/profile.d /etc/rc.d/init.d /etc/rc.d/rc3.d 「/usr/local/bin」をパス(PATH)として設定している記述が 見当たりません。 ログインの仕方でパス(PATH)に何故違いがあるのか、 また「/usr/local/bin」をパス(PATH)として設定している記述がある ファイルをご存知の方ご教授頂きたく思います。 宜しくお願いします。
- 締切済み
- Linux系OS
- PostgreSQLをCentOS5にインストールしました。
閲覧有難うございます。 質問内容なのですが、Postgresqlをインストールしたのですがpostgresql.confとpg_hba.confが見つかりません。 OSはCentOS5です。 インストール方法は以下の手順で行いました。 # /usr/sbin/adduser postgres # chown postgres:postgres /usr/local/pgsql # mkdir /usr/local/src/postgres-8.2.6 # chown postgres:postgres /usr/local/src/postgresql-8.3.7 # su - postgres # cd /usr/local/src # tar xfz /usr/local/src/postgres-8.2.6.tar.gz # cd /usr/local/src/postgres-8.2.6 # ./configure # make # make install また、 [root@ ~]# su - postgres -bash: LD_LIBRARY_PATH=/usr/local/pgsql/lib: そのようなファイルやディレクトリはありません -bash: export: command not found -bash: PATH=/usr/local/pgsql/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin: そのようなファイルやディレクトリはありません -bash: export: command not found -bash: MANPATH=/usr/local/pgsql/man:: そのようなファイルやディレクトリはありません -bash: export: command not found -bash: export: command not found -bash: PATH=/usr/local/pgsql/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin: そのようなファイルやディレクトリはありません -bash: export: command not found -bash: MANPATH=/usr/local/pgsql/man:: そのようなファイルやディレクトリはありません -bash: export: command not found [postgres@ ~]$ のようなエラーがはかれるようになりました。 どうか皆様のお力をお貸しください。
- 締切済み
- PostgreSQL
- Bシェルの.profileについて
Solaris9を使っています。 シェルはデフォルトのBシェルを使っているのですが、 ユーザー環境定義ファイルのドットファイルを /etc/.profile のように作って環境定義 PATH=$PATH:/usr/local/bin export PATH のように書き再起動してみても、全く反映されません。 手元にある本をみると .profileはユーザー設定ファイル、 としかかかれていず、ユーザー事の設定にできるのかな?とも思うのですが、それ以上の情報が見つかりません・・・ ネットの情報を見てもbashやtcshの説明は多いのですが・・・ できれば自分のIDでログインしたときだけにその設定で起動するようにしたいのです。 つまりはユーザー設定ファイルがうまく有効になるようにしたいです。 よろしくお願いいたします
- ベストアンサー
- Solaris系OS
- 続 PostgreSQLのインストール
fedora core1です。 postgreSQLで 一般ユーザーでログイン後 vi .bashrcで エディターを起動し export PATH=$PATH;/usr/local/pgsql/bin export MANPATH=$MANPATH:/usr/local/pgsql/man export POSTGRES_HOME=/usr/local/pgsql export PGLIB=$POSTGRES_HOME/lib 追加編集後 :wqで終了すると E45: 'readonly' オプションが設定されています (! を追加で上書き) :wq!で ".bashrc" ".bashrc" E212: 書込み用にファイルを開けません というエラーがでました。 これはどう対処したらよいでしょうか?
- 締切済み
- Linux系OS
- 環境変数について質問です。
AIXでユーザー別に環境変数を設定したいと思っています。 PATHで/usr/local/bin、/usr/local/sbin を設定したいのですが、 既存のユーザーへ一度に登録する方法はありますでしょうか? やはり$HOME/.profile ヘ上記のPATHを記載するしかないでしょうか。 また、これから新規でユーザーを作成した際に上記のPATHを設定する方法はありませんでしようか。 AIXではログイン時は/etc/profile → $HOME/.profile となるようですが、 /etc/profile に記載した内容は上書きされてしまうということでしょうか。 すみませんが、どうぞよろしくお願いいたします。
- ベストアンサー
- Solaris系OS
- ".bashrc" E509: バックアップファイルを作れません (! を追加で強制作成)
fedora core1 でpostgreSQLをインストール中です。 # .bashrc # User specific aliases and functions # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi に、 export PATH=$PATH:/usr/local/pgsql/bin export MANPATH=$MANPATH:/usr/local/pgsql/man export POSTGRES_HOME=/usr/local/pgsql export PGLIB=$POSTGRES_HOME/lib export PGDATA=/home/postgres/data を追加して :wq すると ".bashrc" E509: バックアップファイルを作れません (! を追加で強制作成)というエラーが出ます。 どうしたらいいかわかりません。
- 締切済み
- Linux系OS
- シェルで.bashrcが読めません。
FreeBSD4.5で、 /home/me/の下に以下のシェルをファイル名1で作成し実行してもsuまでしか動きません。 パスもあっているのですが、原因は何が考えられますか? #!/bin/sh /usr/local/bin/sudo su www /usr/local/bin/bash source /home/me/.bashrc
- ベストアンサー
- その他(プログラミング・開発)
- bashが評価されない
mac標準の古い/bin/bashならスクリプトしっかり動きます 新しい/usr/local/bin/bashではほとんど動きません /usr/local/bin/bash -x デバッグモードで確認すると最初と最後のみ評価されてスクリプトのほとんどが評価されていません 単純な100行程のスクリプトなのに原因がわかりません 何故評価されないのか考えられる要素はありますか
- 締切済み
- その他(プログラミング・開発)
- JAVAの環境変数が初期化されてしまいます
Linux初心者です。 JDK6.0をインストールして、環境変数を次のように設定しました。 export JAVA_HOME=/usr/local/jdk1.6.0 export PATH=$JAVA_HOME/bin:$PATH これで一旦はjavacやjavaコマンドが使えるようになるのですが、 bashを再起動すると、また使えなくなるので再設定しなければなりません。 調べてみた所、homeディレクトリの.bash_profileを変更すると 再設定の必要がなくなると書いていたので、 # set PATH so it includes user's private bin if it exists if [ -d ~/bin ] ; then PATH=~/bin:"${PATH}" → export JAVA_HOME=/usr/local/jdk1.6.0 → export PATH=$JAVA_HOME/bin:$PATH fi と記述してみたのですが、やはりbash再起動後のPATHに 上記のパスは含まれていません。 私の記述方法が間違っているのでしょうが、 どうすれば自動的にパスを通すように設定できるのでしょうか? ターミナルはubuntu6.10からGNOME端末を使用しています。 よろしくお願いします。
- ベストアンサー
- Linux系OS
お礼
.profileというファイルを.bash_profileと同じ内容 で作成してみたらうまくいきました! ありがとうございます。 しかし、なぜ.profileなのでしょうか? Linuxのバージョンによってちがうってことでしょうか?