• 締切済み

SolarisからWindowsへのrsh実行方法

現在、SolarisサーバからWindowsXPへリモートシェルを発行する手順について確認を行っております。 サーバ:Solaris9 クライアント:Windows XP SP3 各種設定を行い、SolarisサーバよりWindowsXPへリモートシェルを発行したのですが、エラーメッセージが出ており、原因と解消方法についてご教示いただきたいです。 設定内容 ・Windows XPへWindows Services for UNIX 3.5、Windowsリモートシェル サービスのインストール ・.rhostsにSolarisサーバを追加 ・WindowsのユーザにSolarisの実行ユーザをAdministrator権限で追加 ・Solaris側では特に設定を行っていない Solaris 側で実行したコマンド "rsh IPアドレス C:\test\test.bat" Solarisで表示されたエラーメッセージ "Unable to execute the command" 切り分けとしてSolaris側に原因が無いかサポートに問合せを行いましたが、 Windowsへコマンドを送信していることを確認し、Solaris側での問題は見つかりませんでした。 以上、よろしくお願いいたします。

みんなの回答

回答No.2

"C:\test\test.bat"をshで書き直して"C:\test\example.sh"で実行して見るとどうでしょう。 Windows Services for UNIX 3.5上のシェルから"C:\test\test.bat"は実行できますか。 切り分けできるのではないかな。

latte02
質問者

お礼

回答ありがとうございます。 >>"C:\test\test.bat"をshで書き直して"C:\test\example.sh"で実行して見るとどうでしょう。 "C:\test\example.sh"に書き直してもSolaris側の実行結果は同じでした。 >>Windows Services for UNIX 3.5上のシェルから"C:\test\test.bat"は実行できますか。 C Shellを起動して動作確認してみたところ、問題なく実行できました。 アドレス指定が"C:\test\"ではなく"/dev/fs/C/test/"となっていたので、 Solaris側でも実行ファイル名を"/dev/fs/C/test/test.bat"に変えてみましたが、結果が変わりませんでした。 SolarisからWindowsへ命令を飛ばす時に命令をうまく受け取れていない事が原因のような 気がしますので、その観点からもう一度確認いたします。 ありがとうございました。

  • 0909union
  • ベストアンサー率39% (325/818)
回答No.1

この手のトラブルだと、だいだい2つ。 ユーザーIDが偽装できていない(マッピングされていない)。または、そのグループに入っていない。そのグループでアクセス権を設定していない。 それと、サービスなどが起動されていない。 http://www.buk-u.com/rsh/ http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=6&topic=15855 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=33939&forum=6 だと思いますが、いかかでしょう。 わたしも実績がありますが、通常NFSでアクセスするので、RSHはほとんど使われていません。使い勝手がわるいので。 (できるようにしても、使ってくれる人がいない) このサービスのNFSだとパフォーマンスが悪いと言う人がいるが、ほとんどそんなこと感じた事がない。大抵ルーター(L2、L3の設定)やハブ、DNS、や余計なWindowsの仕組みが邪魔している。それだと、NFS同士(Solaris)でもパフォーマンスが悪い。

latte02
質問者

お礼

回答ありがとうございます。 サービスについては再度確認しましたが、起動済みで、.rhostsなども記述漏れはありませんでした。 >>ユーザーIDが偽装できていない(マッピングされていない)。または、そのグループに入っていない。そのグループでアクセス権を設定していない。 これは マッピングの確認方法は分からないのですが、 SolarisユーザをWindows側で作成(パスワードも合わせる)し、Administrator権限のグループに 追加する事でよろしいのでしょうか。

関連するQ&A

  • windows7からUNIXへのrsh方法

    お世話になっております。 現在windows7(A)からSUAを使用してunixサーバ(B)へリモートシェルを 実行したく調査しております。 unixからwindows7へのrsh(以下のコマンド)は成功するのですが 肝心の逆windows7からunixのrshが 「permission denied 」となり失敗してしまいます。 ■テストコマンド (1)windows7(A)からunix(B)へ    rsh B -l Buser ls   ← 失敗 (2)unix(B)からwindows7(A)へ    rsh A -l Auser ls    ← 成功 「.rhosts」や「hosts」の設定等は行い、rloginができることは 確認しております。(AからBとBからA両方ともOK) 何か設定等が間違っているのでしょうか? 宜しくお願い申し上げます。

  • win7間でのrsh利用

    win7間でのrsh利用についてご教授お願いします。 ※[技術者向け]コンピューター/Windows系OS及びネットワークセキュリティに投稿しておりましたがレスが付かなかった為、こちらに投稿させて頂きました。 現在、社内ネットワーク(ドメイン)に設置しているXP間でリモートシェルサービスを活用しておりましがXPのサポート終了に伴い、Win7に置き換えたところうまく動作しません。 状況は以下の通りです。 <サーバー側の設定> rshd1.8-Setup.exe(Vista以降、リモートシェルサービスが標準で無くなっているため、左記のフリーツールを使用) C:\Program Files\rshd へインストール C:\Program Files\rshd\bin\rshd.exe -install を実行(これによりサービスが追加される)。 ローカルコンピューターのサービスでRSH Daemonが開始されている ※サービスを開始するのにC:\Windows\rhostsが存在しないとエラーになる為作成  念のため同様の内容で下記はパスにも作成 (1)C:\Windows\.rhosts (2)C:\Windows\rhosts (3)C:\Windows\System32\drivers\etc\.rhosts ※XPでは(3)で使用していた rhosts内容 クライアントのホスト名  クライアント側でのログオン中のユーザー名 実行コマンド C:\>rsh サーバーホスト名 -l クライアント側のログオン中ユーザ名 実行いしたいコマンド サーバー~クライアント間との通信状況 別セグメントだが、相互でIPおよびホスト名でもPing ok ファイアウォール設定はすべて無効化済み 有効にしていると 『cannot connect to socket: この操作を正しく終了しました。』 と表示されます。 クライアント側エラー cannot log in as local user ユーザ名, remote user ユーザ名 Permission denied by rshd ちなみにWin7クライアントから既存のXPのリモートシェルサーバー間での動作は問題ありません。 おそらくWin7のリモートシェルサーバー設定に問題があるかと思われます。 ご教授のほど、よろしくお願い致します。

  • AIXのrshにて、コマンドが実行出来ない。

    AIXのrshにて、コマンドが実行出来ない。 AIXにて、rshを使用してサーバAからサーバBへコマンドを発行したいのですが、 以下エラーが表示され、コマンドが実行できません。 なにかご存知でしたら、ご教授願います。 <やりたいこと> サーバAからサーバBへユーザBにてrsh接続し、コマンドを実行したい。 コマンド(サーバA上で) $ rsh サーバB -l ユーザB "コマンド" rshd: 0826-826 The host name for your address is not known. 尚、以下コマンドは使用可能で、ログインできます。 $ rsh サーバB -l ユーザB <設定> サーバBのユーザBのホームディレクトリに.rhostsを設定。 初歩的な質問かも知れませんが、宜しくお願い致します。

  • rshコマンドが実行できない

    rshコマンドを使ってWhiteBoxLinux3(ローカル)からHP-UX B11.23(リモート)上のプログラムを実行したいのですが、"rsh <ホスト名> -l <ユーザ名>"は正常に動作するが、"rsh <ホスト名> -l <ユーザ名> date"を実行すると、プロンプトが返ってきません。リモートホストの.rhostsは、+ +でパーミッションは600です。tcpdumpでパケットを見てみたんですが、いまいち分りません。情報が少なくて申し訳ありませんが、どなたかデバッグのヒントをご教授いただけないでしょうか?

  • LinuxからWindowsサーバへのrsh

    はじめてですが、Unix/LinuxからWindows2000サーバおよび2003サーバへのrshを起動するために必要な環境について質問をさせていただきます。 逆向き(WindowsからUnix)については実績があります。 リモートホストのWindows側のhostsファイルにUnixのアドレスと名前を登録、ローカルホストのUnix側のhostsや.rhostsファイルにWindowsのアドレス、名前、ユーザ情報を登録するとWindows側でUnixコマンドが遠隔起動できます。 今、実現したいのは、Unix/Linuxをリモートホスト、Windows2000サーバおよび2003サーバをローカルホストとしてUnix/Linux側からWindows側の処理を遠隔起動することです。 hostsや.rhostsファイルは、設定する側が逆になるだけで、考え方は同じと思われます。 Windows側でrshのデーモンプロセスが起動している必要があると思われます。 巷では、WindowsにSFUやSUA(Unixエミュレータ)を導入すればできるという情報が多い様です。 SFUやSUAを導入せず、rshのデーモンプロセスを単独でかつフリーで入手することは可能でしょうか? Windowsのバージョンにより、デーモンプロセスが標準で装備されていたり、別途導入する必要があったりするのでしょうか? よろしくお願いいたします。

  • シェルの実行中にユーザ切り替えてコマンド実行

    はじめまして。 シェル初心者です。 shell.shをrootユーザでクーロン実行していますが、 shell.shの処理の中で、違うユーザでコマンド実行したいのですが、 可能かどうかも、方法が分かりません。 教えていただけないでしょうか。 環境はLinuxです。 下記のコマンドを実行したいです。 リモートでログインしてコマンド実行結果を取得する ssh -l tomcat server_tomcat grep test /tmp/test.log ※他のユーザでsshを実行してコマンド結果を取得したいです。 以上。宜しくお願い致します。

  • rshが実行できない。

    ローカルLANで2台のPCを使い、ローカルPCからリモートでもう一台のPCに対してアクセスを試みようとしていますtm12420iと申します。 SunOS 4.1 とSunOS 5.8の経験は2年くらいありますが、turbo linuxははじめてです。 端末PC(win2k)から、サーバーPC(turbo linux 7 server)に対して、rshが実行できないという問題で困っています。原因または解決策をご存知の方はいらっしゃいませんか。 <エラー内容> xxx.xxx.xxx.xxx:接続が拒否されました rsh:can't establish connection <現状確認事項> pingは通っている telnetではアクセス可能 sambaは正常に動作している 端末PC(win2k)から、別サーバーPC(sun 4)では問題なく実行できる <turbo linux 7 server 側設定済み内容> /etc/xinetd.conf内でincludedir /etc/xinetd.d /etc/xinetd.d/shell内でdisable = no、user = root,USER名、server = /usr/sbin/in.rshd /etc/services/shell*のポート設定は正常、別名での設定もok /etc/xinetd.d/login内でdisable = no、user = root,USER名、server = /usr/sbin/in.rlogind /etc/hosts.equiv内にXXX.XXX.XXX.XXX(端末PCアドレス) 端末PC名を追加 /home/mic/.rhosts内にXXX.XXX.XXX.XXX(端末PCアドレス) 端末PC名を追加 /etc/hosts内にXXX.XXX.XXX.XXX(サーバーPCアドレス) サーバーPC名、XXX.XXX.XXX.XXX(端末PCアドレス) 端末PC名を追加 /etc/hosts.allow内にin.rshd: XXX.XXX.XXX.XXX(端末PCアドレス)を追加 /etc/hosts.denyはALL: ALLのまま /etc/resolv.conf内にdomain ドメイン名、nameserver XXX.XXX.XXX.XXX(端末PCアドレス)を追加 SET(SETENV) のPATHの設定確認OK 各ファイルのパーミッションも問題なし /etc/rc.d/init.d/xinetd restart 等で関連サービスの再起動も行った

  • SolarisからWindowsへFTPするときのオプション

    Solaris8上でftpコマンドに関するのシェルを作成しています。 処理概要はSolaris上にあるファイルをWindwosのFTPサーバーに送信したいのです。そのFTP処理時、FTPの一連のコマンドを記入したテキストファイルを指定して実行したいのです。Windows上でバッチ処理をするときは、以下のように処理しています。  ftp -s:xxxx.txt  (ここでxxxx.txtには、ftpコマンドが記入) Solaris上でftpのオプションをmanで確認したいのですが、それらしきものがありませんでした。  よろしくお願いします。

  • Linux間のリモートシェルの実行について

    マシンタイプ:x225 カーネル: 2.4.20-28.7smp OS:Red Hat Linux 7.3 2.96-126)) 上記のLinuxサーバからrshで同じタイプのリモートのLinuxサーバのシェルを起動しようとしましたが正常に起動されません。 状況としては rsh実行時は特にエラーメッセージが出ることもなく、正常に実行されたかのように終了してしまうため、何が悪いのかもわからない状態です。 実行したコマンドとリモート側のシェルの内容は以下の通りです。 rsh server1 /home/test/testrsh.sh <testrsh.sh> #!/bin/ksh time=`date` echo "rsh test $time" >> /home/test/testrsh.log ちなみに rsh server1 date や rsh server1 uname 等のLinuxのコマンドは正常に実行できます。 どこを確認したらよいでしょうか? よろしくお願いします。

  • rshのコマンドの書き方について

    rsh server cd temp rsh server ls など、rshの単体コマンドに関してはすでに通る状況になっています。 しかし、今回やりたいのは 「tempフォルダに降りてきて該当ファイルを削除し、その結果を表示」 などのシェルで書くならば複数行に当たる内容になります。 これも何とかできるでしょうか? rcpでシェルスクリプトを転送して、 rshで向こう側で実行して、 rshでrmする方法も考えたのですが、いまいち鬱陶しいんで スムースに書けたらなと思いました。 とりあえず、test.rshにコマンドをずらっと書いての rsh server -ni <test.rsh ではダメでした。 関係ないでしょうがOSはSorarisです。