- 締切済み
Perlからrshでvxquotaを実行する方法
はじめまして。Perlの質問です。 サーバAの/usr/sbin/vxquotaをサーバBで動いているWeb(perl/cgi)から 起動したいのですがpermission deniedのエラーがでて動きません。 サーバBからコマンドで、rsh サーバA /usr/sbin/vxquota -v ユーザID とすれば動きます。 サーバBのCGIはprintf "I am %s.\n",(getpwuid($>))[0];で確認し、 rootで動いています。 このサーバBのPerlで、 system("/usr/local/apache/cgi-bin/DISK/vxquota.csh $user"); として rsh サーバA /usr/sbin/vxquota -v $1(上のvxquota.cshの中身) を実行しようとするとうまく動きません。 このようなことは、Perl(CGI)ではできないのでしょうか? 何かよい方法がありましたら、アドバイスをお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- madman
- ベストアンサー率24% (612/2465)
回答No.1
rootユーザーのホームディレクトリに.rhostsファイルがありますか? 書き方は、 リモートコマンドを許容するサーバ名を書きます。 +のみ書くと全てのマシンからリモートアクセスできます。
補足
回答ありがとうございます。 .rhostsは設定しています。サーバBのコマンドラインからrshを 叩いた時には、サーバAのvxquotaは問題なく動きます。 ただ、ブラウザ上から、ユーザIDを入力させて perl/cgiのなかで、system~を動かすと パーミッションエラーになってしまいます。 Apache(suEXEC)の設定が悪いのか、 そもそも、perlでrshまたはvxquotaが利用できないものなのか プログラムの組み方が間違っているのかがいろいろ試してみましたが わからないのです。