web-dev-qa-db-ja.com

Unixの「メール」コマンドを設定するにはどうすればよいですか?

私はGoogleとメールのマニュアルページを調べましたが、設定方法がわかりません。ターミナルからメールを送信できるようにメールアドレスを設定するだけです。それ、どうやったら出来るの?

9
Eddy

従来、mailを含むUnixメールプログラムは、実際の送信をMTA(Mail Transfer Agent)に依存しています。

フルサイズのMTA(postfix、exim4、opensmtpd)を 'smarthost'(relayhost)で構成して使用するか、軽量の発信専用MTA(msmtp、ssmtp、esmtp、nullmailer)を使用してalwaysを使用します。


個人で使用する場合、msmtpが最も簡単に設定できます。メールの送信のみが可能で、受信は不可で、ユーザー固有の設定が可能です。

msmtpをインストールしてから、Gmailアカウントを~/.msmtprcに追加します。

デフォルト
 tls on 
 #以下のパスを調整する必要があるかもしれません
 tls_trust_file /etc/ssl/certs/ca-certificates.crt

account gmail 
 あなたの住所@ gmail.com
ホストsmtp.gmail.com 
ポート587 
 auth plain 
ユーザー あなたの住所@ gmail.com
 
アカウントのデフォルト:gmail 

~/.mailrcを編集して、mailmsmtpを使用するよう伝えます。

 set sendmail = "/ usr/bin/msmtp" 

(これが機能しない場合は、ln -s /usr/bin/msmtp /usr/sbin/sendmailをrootとして実行します。)

最後に、mail/msmtpにGmailのパスワードを記憶させたい場合は、~/.netrcに移動します。

マシンsmtp.gmail.com 
ログイン あなたの住所@ gmail.com
パスワード "ここにあなたのパスワード
12
user1686

システム管理者がすでにメールシステムを設定していない限り、メール転送エージェントを設定する必要があります。それは伝統的にsendmailですが、最近のシステムはpostfixまたはexim4を使用しています。

3
ott--

多くのシステムでは、電子メールの送信に使用できるmailxコマンドがあります。これはmailコマンドへのリンクである可能性がありますが、コマンドの動作を変更します。他の人が指摘したように、これはサーバー上にMTA(Mail Transfer Agent)が構成されていることを前提としています。次のようなコマンドを使用してインタラクティブに使用できます。

mailx -s "This is a message" [email protected]
This is a message
.

または、パイプを使用してコマンドの出力を送信します。

cat myfile.txt | mailx -s "This is the file" [email protected]

mailx -hとして実行すると、使用方法が表示されます。

2
BillThor

mailコマンドに縛られていない場合、 nail は同様のインターフェースを提供しますが、SMTPを使用してメールを送信できます。

1
Jens Erat