質問: BlueHostという海外サーバにて、SSHごしにMercurialを使おうとしているのですが、 動作するかの確認として以下のコマンドを実行したところ、 ssh user@xxxx.jp hg help bash: hg: command not found というエラーメッセージがでて、うまくいきません(さくらインターネットの場合は実行できます)。 SSHでBluehostにログインすることはでき、サーバ側でhgコマンドを実行すると、 実行することができるため、インストールはされているようです。 .bashrcに以下のようにパスの設定もしています。 export PYTHONPATH="$HOME/packages/lib/python2.4/site-packages"(mercurialのインストール場所) export LD_LIBRARY_PATH="$HOME/packages/lib" export PATH="$HOME/packages/bin:$PATH" また、ローカル環境(cygwin)からBluehost側にリポジトリを取得しようと実行したコマンドは以下となり、 hg clone ssh://xxxx.jp//path/to/repo この場合には、エラーメッセージも表示されず、Ctrl+Cをするまで固まったままになります。 このような場合、どのような設定をすればSSHごしにMercurialが実行できるようになるのでしょうか。
回答: sshでリモートからコマンドを実行する時には、 $HOME/.xxxファイル は読み込んでくれないんだね。hgコマンドは、 $HOME/local/bin/hg に置いてあって .zshrcにてPATHに追加してるので、そんなん知らないって言われちゃってると。 sshd_configのmanとか見ると、PermitUserEnvironmentが有効なら、 $HOME/.ssh/environment とかにPATHを追加したらいけそうなことが書いてあったので試してみたけど、どうやら駄目っぽい。まぁレンタルサーバだし有効じゃぁないわな。 /etc/ssh/sshd_config はPermission deniedで見れなかったのでわからんけど。