
Ubuntu日本語フォーラム
ログインしていません。
mailコマンドを実験しようと思い、パッケージ・マネージャーからsendmail関係のパッケージをインストールし、その後、
mail -s test [email protected]でメールを送信しようとしました。すぐに、ccのプロンプトが出たので、無視してリターンキーを押し、その後に本文を次のように入力し、改行しました。
This is a test mail from hoge.
本文の終わりを示す記号は「.」なので、続いて「.」を押して改行しましたが、プロンプトに戻るまでに1分くらい時間がかかります。ただし、メールはちゃんと届いています。
Fedora 8だと即座にプロンプトに戻り、メールも届きます。
何となくmailコマンドの動作がおかしいような気がしますが、問題はないでしょうか。皆様の環境ではいかがでしょうか。
オフライン
seijunです。早速、どうも有り難うございました。
hito による投稿:
名前解決ができてなさそうな気が非常にしますが、そのあたりは
大丈夫でしょうか?
勉強不足でご指摘の意味が正確にはつかめなくて申し訳ありません。もう少し詳細を記しますと、[email protected]は伏せメールアドレスですが、もちろん、テストの際には実在のものを使っています。ただし、ubuntu 7.10をインストールしたマシンは、社内のLAN内に置いてありまして、ホスト名とかはDNSに登録しているわけではありません。それにしても、Fedora 8(同じLAN内にある別のマシンにインストールして、これまたDNSに登録されていない架空のホスト名を使っています)だと、直ぐにプロンプトに戻り、メールも届いているので、不思議に思っているわけですが・・・。
※追伸 mailコマンドはsendmailを呼び出しているようですが、このsendmailがメールを送信するのに時間がかかっているようです。
最後の編集者: seijun (2008-01-23 18:44:27)
オフライン
ディストリビューションの違いというよりは、設定のどこかに、そのネットワークに
そぐわない点があるだけ、だろうと思われます。で、Fedoraであれば偶然
マッチしているのだろうなぁというのが予測です。
以下を確認してください。
・(固定IPアドレス設定をした場合)/etc/hostsは正しいですか?
マシンのIPアドレスは正しく記載されていますか?
・telnetを使って直接SMTPをたたいてメール送信したらどうなりますか?
http://ash.jp/net/telnet_smtp.htm
・sudo mailq -vとかすると何が表示されますか?
オフライン
seijunです。
今、自宅なので明日24日、会社で確認してみます。
なお、自宅でも行ったのですが、当初、mailコマンドがなかったので、Ubuntuの指示通りにmailx(ともうひとつのファイル、何だか忘れました)をパッケージ・マネージャーからインストールしたところ、exim4, exim4-base, exim4-config, exim4-daemon-lightの4つのファイル(パッケージ?)がインストールされました。これで、mailコマンドを確かめてみたのですが、動作としてはこの状態の方が正常のようですが、肝心のメールを送り届けることができません。
sudo apt-get install sendmailとすると、上記の4つのファイル(パッケージ?)を削除しますというメッセージが出ます。これは、会社でも同じでした。exim4というのは何なのかなあ・・・。
※exim4はdebian系のメール配送エージェントで、sendmailの代わりになるらしいですね。ただ、これまでRedhat系のLinuxを使ってきましたので、自宅のUbuntuでもsendmailを入れてみました(同時にexim4パッケージは削除されました)。そうすると、会社と同じような現象になりました。
最後の編集者: seijun (2008-01-24 01:27:36)
オフライン
seijunです。自宅で会社と同じような環境(sendmail関係パッケージをインストール、exim4関係は自動削除)にして実験してみましたが、同じような現象です。ただし、自宅の方では、メールがすぐに届きません。非常に時間がかかってしまいます。自宅の環境での内容を次に記します。
hito による投稿:
以下を確認してください。
・(固定IPアドレス設定をした場合)/etc/hostsは正しいですか?
マシンのIPアドレスは正しく記載されていますか?
・telnetを使って直接SMTPをたたいてメール送信したらどうなりますか?
http://ash.jp/net/telnet_smtp.htm
・sudo mailq -vとかすると何が表示されますか?
①/etc/hostsの内容
================================
127.0.0.1 localhost
127.0.1.1 ubuntu710
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
===============================
自宅では、IPアドレスを192.168.1.3にふってありますので、2行目は何となく変だなという感じです。また、IPV6関連の設定があるのがよく分かりません。
②telnetのところは、私の環境でどのようにするのか分かりませんので、申し訳ないですが、試みておりません。
telnet fuga.com 25(メールアドレスの@以降の部分)で宜しいのでしょうか。
③sudo mailq -vの内容
===============================
MSP Queue status...
WARNING: local host name (ubuntu710) is not qualified; see cf/README: WHO AM I?
/var/spool/mqueue-client is empty
Total requests: 0
MTA Queue status...
WARNING: local host name (ubuntu710) is not qualified; see cf/README: WHO AM I?
/var/spool/mqueue is empty
Total requests: 0
===============================
昨夜はもっと違う内容が表示されていたようですが・・・。何か、「refused」のような単語がありました。
なお、「システム−環境−ネットワーク」でネットワーク設定のためのウィンドウが出るのですが、タブやボタンをマウスでクリックしても、反応がなく、ハングアップした状態になるので困っています。これは、別スレッドで質問させていただこうと思っています。
何かアドバイスがあれば、よろしくお願いいたします。
オフライン
seijunです。
hito による投稿:
・telnetを使って直接SMTPをたたいてメール送信したらどうなりますか?
http://ash.jp/net/telnet_smtp.htm
・sudo mailq -vとかすると何が表示されますか?
会社のUbuntで、telnet mail420.lolipop.jp 25としましたら、
=====================================
Trying 210.188.220.182...
Connected to mail420.lolipop.jp.
Escape character is '^]'.
220 sv420.lolipop.jp LOLIPOP-Fsecure
HELO ubunt710
250 sv420.lolipop.jp
MAIL FROM: seijun@ubunt710
250 ok
RCPT TO: [email protected]
250 ok
DATA
354 Enter mail (LOLIPOP-Fsecure)
From seijun@ubunt710
Subject: test from ubunt710
Hello World !!
.
250 ok 1201161677 qp 2832
quit
221 sv420.lolipop.jp
Connection closed by foreign host.
=====================================
となりました。「.」の入力後、すぐに「250 ok」が返ってきました。ただ、メールのタイトルはすぐ届きましたが、本文は届きませんでした。
また
=====================================
hoge@ubunt710:~$ sudo mailq -v
[sudo] password for hoge:
MSP Queue status...
WARNING: local host name (ubunt710) is not qualified; see cf/README: WHO AM I?
/var/spool/mqueue-client is empty
Total requests: 0
MTA Queue status...
WARNING: local host name (ubunt710) is not qualified; see cf/README: WHO AM I?
/var/spool/mqueue is empty
Total requests: 0
======================================
です。これは、自宅のものと変わりありませんでした。
最後の編集者: seijun (2008-01-24 17:15:41)
オフライン
seijunです。
いろいろと試行錯誤しましたが、会社のコンピューターのUbuntuマシンの/etc/hostsファイルに
UbuntuマシンのIPアドレスを192.168.5.82として、
192.168.5.82 Ubuntu.Linux
という行を挿入すると、mailコマンドがすぐに終了し、メールもすぐ届くことを確認しました。
自宅のマシンでも試してみます。
オフライン
ええと、sendmailをはじめとするメールサーバのたぐいや、Apacheなどの
サーバアプリケーションでは、自分自身のIPアドレスを解決した際、FQDNで
返ってくることが原則として必須です。
mailq -vした時に出力されているメッセージは、上記を警告しているものです。
ですので、/etc/hostsで、
(外向きのIPアドレス) host名.localdomain
などという形で登録を加えることで名前解決ができるようになり、正しく
動作するようになっています。
Desktop CDからインストールした場合はホスト名・固定IPアドレスを
/etc/hostsに自動追加する機能はありませんので、これらは手動で行わなくては
なりません(より正しくはDNSで名前解決ができるように、ホストが登録
されているべきです。/etc/hostsで解決するのは最後の手段だと思った方が
安全です)。
また、
127.0.1.1 ubuntu710
なのはバグで、本来の意図では下記のように、127.0.0.1に対してhostnameが
セットされます(が、固定IPアドレスはセットされません)。
127.0.0.1 ubuntu710
で、FedoraなどのAnacondaをインストーラとして採用するディストリビューションでは
インストーラで固定IPアドレス/ホスト名をセットした場合、/etc/hostsが自動的に
生成されるので問題が出ない、というパターンだろうと思います。後付ですが。
オフライン
seijunです。
自宅ではIPアドレスに192.168.1.3を使っているのですが、/etc/hostsに、
192.168.1.3 Ubuntu.Linux
を挿入してもだめだったので、ご指摘のように、
192.168.1.3 ubuntu710.localdomain ubuntu710
を挿入するとうまく行きました。どうも有り難うございます。でも、会社では三行目を挿入してどうしてうまく行ったのかなあ・・・。
なお、メールは、sendmailのサービス(デーモン)を動かしておかないと送れないみたいです。Redhat系だとsendmailのデーモンを起動しておかなくてもメールは送れるみたいですが・・・。それと、Ubuntu起動時に、sendmailのデーモンを起動するところで止まってしまい、CUI画面に落ちることがありました。ただし、リターン・キーを押すと、しばらくして起動プロセスが再開し、GUI画面が表示されました。その後、手動(sysv-rc-confコマンド)でeximデーモンの自動起動をストップさせると(これが原因かどうか分かりませんが)、CUIに落ちることなくGUI画面のままUbuntuが立ち上がりました。
オフライン