- PR -

rshを実行時のpemission deniedについて

投稿者投稿内容
Hiro
会議室デビュー日: 2007/06/08
投稿数: 13
投稿日時: 2009-03-18 14:57
いつもお世話になっております。

UNIXマシンに触れてから一ヶ月ほどしかたっていない
初心者です。

2つのSolarisマシン(OS:Solaris8)を使用し、片方からリモートログインし、
リモート側のとあるフォルダにあるファイルを実行することをしたいのです。

そこで、まず、リモートログインし、簡単なコマンドを実行することから
やってみようということで、以下のように実施しました。

ローカル側マシン名:localname(xxx.xxx.xxx.xxx)
リモート側マシン名:remotename(yyy.yyy.yyy.yyy)
ローカル及びリモートのログインID:aaaa (rootではありません)

お互いの/etc/hosts にはマシン名は記述してあります。
xxx.xxx.xxx.xxx localname
yyy.yyy.yyy.yyy remotename

リモート側のホームディレクトリに.rhostsを作成し、
xxx.xxx.xxx.xxx aaaa
を記述し、ローカル側から
>rsh -l aaaa remotename ls
と実行したところ
>permission denied
と表示され、ログインすらできません。

調べてみて、rhostsのパーミッションを777に変更し
>rsh -l aaaa remotename ls
と実行したところ、同じように
>permission denid
と表示され、ログインできません。

rhostsを作成し、相手側のアドレスとログイン名を
記述しただけでは、パスワード入力無しのリモート
ログインはできないのでしょうか?
ほかに設定するものがあるのでしょうか?

よろしくお願いします。
BR6
常連さん
会議室デビュー日: 2009/03/04
投稿数: 33
お住まい・勤務地: 東京
投稿日時: 2009-03-18 15:23
「.rhosts」ってIPアドレスじゃなくて、ホスト名で記載する必要があったような。。
Hiro
会議室デビュー日: 2007/06/08
投稿数: 13
投稿日時: 2009-03-18 15:54
BR6さん
ご返答、ありがとうございました。

IPアドレスではなくホスト名で、
.rhostsを変更し、実施したところ
問題なく動作しました。

ここ何日か悩んでいて、root権限じゃないとだめなんじゃないか
とかパーミッションを600や755に代えてみたりと・・・
問題なく動作したときには、感動すら覚えました。
本当にありがとうございました。
BR6
常連さん
会議室デビュー日: 2009/03/04
投稿数: 33
お住まい・勤務地: 東京
投稿日時: 2009-03-18 16:01
Hiroさん

問題なく動作したとのこと、何よりです。
因みに、「.rhosts」のパーミッションに「777」は不要ですので、元に戻された方が良いかと思います。

ご参考まで。
Hiro
会議室デビュー日: 2007/06/08
投稿数: 13
投稿日時: 2009-03-23 16:02
BR6さん
返信が遅くなり、たいへん申し訳ございません。

パーミッションの変更を忘れていました。
ご指摘がなければ、そのままでした。

ありがとうございました。

Hiro
会議室デビュー日: 2007/06/08
投稿数: 13
投稿日時: 2009-03-23 16:33
いつもお世話になっております。

また、質問がありまして、新しくスレッドを
立ち上げたほうがいいかなとは思いましたが、
前回の続きでの質問ですので、このスレッドに
追加します。

リモートログインに成功し、リモートホストにある
実行ファイルを実行したのですが、
所望した結果が出ません。

リモートホストにある実行ファイルは、
C言語で記述してあるのですが、
printfやgetsでコマンドプロンプトに
表示するファイルです。
リモートホストのコマンドプロンプトで
実行すると以下のように表示されます。

>toollist

**************************
* tool list *
**************************
1.abc
2.def
3.ghi
select number >

というようなプログラムです。

そこで、ローカルホストで
>rsh -l aaaa remotename toollist
と入力するとローカルホストの
コマンドプロンプトにはなにも表示されません。

リモートホストのプロセスをみるとプロセスが
起動していたので、
実行されているのは間違いではないのですが・・・

コマンドプロンプトにprintfやgets等で表示入力するものは
ローカルホストでは表示入力できないのでしょうか?
もし、方法があれば、教えていただけないでしょうか?

よろしくお願いします。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2009-03-23 16:49
こんにちは.
引用:

Hiroさんの書き込み (2009-03-23 16:33) より:

>rsh -l aaaa remotename toollist
と入力するとローカルホストの
コマンドプロンプトにはなにも表示されません。


path が違う(full path 指定する)とか?
Hiro
会議室デビュー日: 2007/06/08
投稿数: 13
投稿日時: 2009-03-23 17:38
kazさん
返信ありがとうございます。

full pathで実施しましたが、
表示されませんでした。

いろいろ触っていたら、
入力待ちになっているようで、
プログラムを終了させると
一気に表示されます。

つまり
>rsh -l aaaa remotename toollist
99
**************************
* tool list *
**************************
1.abc
2.def
3.ghi
99.end
select number > > _

となります。
しかし、このような動きではなく
コマンドプロンプト表示し
select number >
にたいして、入力する
ということが実現できないかと。

よろしくお願いします。

スキルアップ/キャリアアップ(JOB@IT)