コンパイル後のMTA変更の可否について

このQ&Aのポイント
  • C言語のCGIを新しいサーバーにコンパイルし、後ほどMTAをQmailに変更することは可能か
  • C言語のCGIは古いサーバーで作成され、新しいサーバーにコンパイルする予定です。後にMTAをQmailに変更することができるのでしょうか
  • C言語のCGIを新しいサーバーにコンパイルし、MTAを後からQmailに変更できますか
回答を見る
  • ベストアンサー

コンパイル後のMTA変更の可否について

C言語で作ったCGIがあります。 古いサーバー上で作ったものであり、これを新しいサーバー向けにコンパイルしようと思います。 古いサーバーは、Redhat7.1 + sendmail で作られていました。 現在のサーバーはCentOS 5 + sendmail です。 C言語ファイルはそのまま残っており、makefileファイルもあるためうまくコンパイル出来るものと考えています。 質問です。 今回、新規サーバーにコンパイルしたあと、後ほどMTAをQmailに替えた場合、動くものなのでしょうか? perlの場合はMTAに関係なく動作するため、これも可能かと思っています。 ご指導、宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

Cでもperlでも条件は変わりません。sendmail用のプログラムがqmailで使えるかどうかはプログラム次第です。 そのcgiが、TCP/IPベースでSMTPを使ってsendmailに接続しているのであれば、SMTPは汎用のメール送受信プロトコルですから、まずまちがいなくそのまま使えます。 そのcgiが、メール送信コマンドとしてのsendmailを起動している場合、qmail は sendmail 互換コマンドがありますので、互換コマンド経由で問題なく動く可能性はあります。ですが、実際に動くかどうかは sendmail コマンドに渡している引数次第です。(よく使われるオプションについては、qmailの互換コマンドも同じオプションを用意していますので問題ないのですが、互換コマンドに無いオプションを指定している場合、修正が必要になります) なお、qmail はもう10年以上メンテされていませんし、あまりお薦めできるものではありません。 かつてはsendmailに比べて簡単で安全というメリットがありましたが、 今からqmailを使うなら、それなりの情報収集は必要です。 一旦sendmailをインストールしてからなら、わざわざqmailに乗り換えるメリットは無いと思います。 http://ya.maya.st/d/200602c.html#s20060225_1 http://ya.maya.st/d/200603a.html#s20060301_1 http://ya.maya.st/d/201102a.html#d20110207

tajix14
質問者

お礼

有難うございます。ご意見を見た限り、特に凝った仕組みではないので、多分MTAを替えても問題ないと思いました。 それよりもQmailがこれほどまでに使えないMTAだとは知りませんでした。10年前は最高のMTAと思っていましたので.. ご指導頂きました通り、sentmailのまま使用していこうと思います。 もし、MTAを変更するときもpostfixなど別のものに致します。有難うございました。

関連するQ&A

  • 【MTA】sendmail・postfix・qmailについて

    sendmailの場合・・・送受信信にsendmail(MTA) postfixの場合・・・受信にpostfix/smtpd(MTA)           外部への送信にpostfix/smtp(リモートMDA) qmailの場合・・・受信にqmail-smtpd (MTA)          外部への送信にqmail-remote(リモートMDA) となっていますが、MTAとリモートMDAを分ける事によって なにかメリット・デメリットはあるのでしょうか? ネット上で色々調べてみたのですが、見当たらなかったので ご存知の方がいれば教えていただきたいのですが.... 以上、宜しくお願い致します。

  • C言語プログラムのコンパイルエラーについて

    お世話になります。 既存のC言語プログラムの一部を修正し、makefileを使用してコンパイルを行ったのですが、 以下のエラーメッセージが出てしまい、コンパイルすることができません。 自分なりに調べてみましたが、解決策が見つかりませんでした。 対応方法ご存知の方、もしくは、参考になる情報お持ちの方、助けて頂けると幸いです。  メッセージ : /usr/bin/ld: cannot find -lsendmail OSはCentOS 5.5です。 sendmail関係のインストールは行っています。 C言語の開発経験が乏しく、困っています。 お手数をお掛けして申し訳ありませんが、ご協力をお願い致します。

  • sendmailとPostfixについて

    現在RedHat7.3でsendmail8.2を使用しています。 さて、いろいろ調べたところMTAはPostfixが使いやすいということをわかり導入しようかなとおもっておりますが、ここで疑問が出てきました。 Postfixをインストールした場合既存のsendmailはどうなるのでしょうか? というのも、現在PerlでCGIをいくつかweb上にアップしているのですがプログラム内でのsendmailのパス /usr/sbin/sendmail これをすべて変更する必要があるのでしょうか? どうかご教授おねがいします。

  • メールが送信できない(sendmail)

    CGIにてsendmailを送信したいのですが、送信されなくなってしまいました。 以前、同じCGIでメールを送信できていたので、原因はsendmail自体にあると考えています。 OSはCentOS5です。 sendmailの仕組みもよく分からないので、皆さんのお知恵をお借りしたいのです。 # /etc/init.d/sendmail status sendmail is stopped sendmailを起動しようとすると # /etc/init.d/sendmail start Starting sendmail: sendmail: usage: sendmail [ -t ] [ -fsender ] [ -Fname ] [ -bp ] [ -bs ] [ arg ... ] [FAILED] となり、起動できません。 qmailにてsendmailを動かしているのかと思い、以下を実行しました。 # which sendmail /usr/sbin/sendmail # rpm -qf /usr/sbin/sendmail sendmail-8.13.8-2.el5 psa-qmail-1.03-cos5.build84080425.19 # ls -l /usr/sbin/sendmail lrwxrwxrwx 1 root root 21 Feb 7 2008 /usr/sbin/sendmail -> /etc/alternatives/mta # ll /etc/alternatives/mta lrwxrwxrwx 1 root root 23 Jun 9 2008 /etc/alternatives/mta -> /var/qmail/bin/sendmail # ll /var/qmail/bin/sendmail -r-xr-xr-x 1 root qmail 10804 Apr 25 2008 /var/qmail/bin/sendmail この後何が必要なのかが分かりません。 今、調べたものも解決に役立つか分からない状況です。 よろしくお願い致します。

  • コンパイルされたCGI(C言語)を別サーバで動かす

    C言語にて簡単なCGIを作成しました。 gcc -o xxx.cgi xxx.c コンパイルをするとそのサーバでは問題なく動きます。 コンパイルしたCGIファイルを同じ環境の別サーバに 持っていくとInternalServerErrorとなり実行できません。 パーミッションもディレクトリ構造もApacheの設定も サーバ名、IPアドレスを除いて同じ設定です。 これは動作させるサーバ毎にコンパイルする必要が あるものなのでしょうか?もしサーバ毎にコンパイルする 必要があるのであればそれはどうしてなのでしょうか? もしくはなにか間違っているのでしょうか? お手数ですが、お分かりになる方、お教えください。 よろしくお願いします。

    • ベストアンサー
    • CGI
  • C言語CGIの一括コンパイルの方法

    10年くらい前に作ったゲームの復活を考えています。 当時ledhat7.1上で展開していたゲームをSentOS上で再開します。 ゲームはC言語で出来ていますが、作った本人が手を付けることができません。 そこで、当方が10年前の姿にまでは持っていこうと考えています。 いろいろ調べていくと、 「C言語によるCGIプログラムは、それを動かそうとする サーバー上でソースファイルをコンパイルする必要があります。 他のマシンでコンパイルしたCGIプログラムをそのまま持って来ても、動かない 可能性の方が大きいです。ご注意下さい。」 という記述を見つけました。 全部、コンパイルし直す必要がありそうです。 当方の現在の環境は下記の通りです。 サーバー  自宅にあり。直接接続可能 もちろんSSHも可 CGI の数 178個 ディレクトリは40個くらいに分かれている コンパイル前のC言語ファイルは「.c ファイル」として 保存されている ひとつひとつコンパイルしていったのでは、1ケ月くらい 掛かりそうです。 一括コンパイルのような方法はありませんでしょうか? 一括でなくとも、ディレクトリごとでも構いません。 宜しくお願い致します。

  • 【MTA】postfixとsendmail【違い】

    はじめまして。シアトルでシスアド見習いをしている者です。 今日みなさんにお聞きしたいのは、postfixとsendmailMTAの違いについてです。 いろいろな記事で比較されておりましたが、Google先生に聞いたところ ・sendmailは設定が複雑だけど未知のプロトコルにも対応している ・postfixは設定は簡単、MailDir構造を使用していて、SMTPプロトコルに特化 のような内容が沢山出てきました。 また、itmedia様の過去ログにて ・sendmailは送受信共にsendmailにて可能 ・postfixは受信は受けるが、送信は外部MDA(?) のような違いがあるとも書いてありました。 しかしながら、動作的にこれら二つのMTAが具体的にどう変わるのかについての説明がなされている記事が見当たらず、ここで質問させていただいた次第でございます。 内容としましては現在、システムが使用するMTAとして、現在postfixとsendmailがサーバーに入っております。 システムが使うMTAの設定は /etc/alternatives/mta -> /etc/alternatives/sendmail.sendmail となっています。 またMTAの候補は以下の二つです。 /etc/alternatives/sendmail.sendmail /etc/alternatives/sendmail.postfix そこで質問なのですがこのmtaのリンクをsendmail.sendmail -> sendmail.postfixに変更した場合、何か具体的に動作の違いは出てくるのでしょうか? よろしくお願いいたします。

  • RPMパッケージソフトをインストールした場合のコンパイルオプションの調べ方。

    CentOSにてyumでSendmailをインストールしました。 ソースファイルからインストールする場合、いろいろコンパイルオプションがつけれますが、yumでインストールした場合どんなオプションで コンパイルされているのか調べる方法はあるでしょうか? 教えてください。

  • sendmailのエラーを知りたい

    こんにちわ。 sendmailを使って、メールの自動送信を行っています。 その際に、送れなかったsendmailのエラーは どのようにすれば取得できるのでしょうか? ------ ちなみに、レンタルサーバーで、pos.toネット というところを使用しています。 (www.pos.to) perl はバージョン 5.005_03 のようです。 sendmailは、sendmailと互換のMTAである qmail というものだそうです。 補足もいたしますので、よろしくお願いします。 参考サイトの紹介も大歓迎いたします。 _

  • C言語の実行モジュール、コンパイル

    2点程、教えて頂きたい事があります。 よろしくお願いします。 (1)Solaris9でC言語でコンパイルされた実行モジュールを、そのままSolaris10にコピーし実行した場合、実行できるのでしょうか? (2)Solaris10で、makefile等を利用しC言語のコンパイルをしようと思うのですが、Solaris10がインストールされた段階で既にコンパイルする環境は整っているのでしょうか?。それともCD等からコンパイル環境をインストールしないといけないのでしょうか?(Solarisメディアが無い場合にコンパイル可能でしょうか?)

専門家に質問してみよう