Como eu configuro o comando 'mail' do Unix?


9

Examinei o Google e as páginas de manual para correspondência, mas não consigo descobrir como configurá-lo. Tudo o que eu quero fazer é configurar meu endereço de e-mail para que eu possa enviar e-mail através do terminal. Como faço isso?

Respostas:


12

Tradicionalmente, os programas de correio Unix, inclusive mail, contam com um MTA (Mail Transfer Agent) para fazer a transmissão real.

Você pode usar um MTA de tamanho completo (postfix, exim4, opensmtpd) configurando-o com um 'smarthost' (relayhost) ou um MTA leve e somente de saída leve (msmtp, ssmtp, esmtp, nullmailer) que sempre usa um.


Para uso pessoal, msmtpserá mais fácil de configurar - ele só pode enviar e-mails, não receber e permite configurações específicas do usuário.

Instale msmtpe adicione sua conta do Gmail em ~/.msmtprc:

padrões
    tls on
    # o caminho abaixo pode precisar ser ajustado
    tls_trust_file /etc/ssl/certs/ca-certificates.crt

conta do gmail
    de youraddress @ gmail.com
    host smtp.gmail.com
    porta 587
    auth plain
    usuário youraddress @ gmail.com

padrão da conta: gmail

Agora diga mailpara usar msmtp, editando ~/.mailrc:

defina sendmail = "/ usr / bin / msmtp"

(Se isso não funcionar, execute ln -s /usr/bin/msmtp /usr/sbin/sendmailcomo root.)

Por fim, se você quiser mail/ msmtplembrar sua senha do Gmail, ela será ~/.netrc:

machine smtp.gmail.com
    login youraddress @ gmail.com 
    senha " sua senha aqui "

3

A menos que o administrador do sistema já tenha configurado o sistema de correio, você deve configurar um Mail Transfer Agent. Isso é tradicionalmente o sendmail, os sistemas modernos usam o postfix ou o exim4.


2

Em muitos sistemas, você encontrará um mailxcomando que pode ser usado para enviar email. Este pode ser um link para o comando mail, mas altera o comportamento do comando. Como já foi observado, isso pressupõe que você tenha um MTA (Mail Transfer Agent) configurado no seu servidor. Pode ser usado interativamente usando um comando como:

mailx -s "This is a message" user@example.com
This is a message
.

Ou com um pipe para enviar a saída de um comando:

cat myfile.txt | mailx -s "This is the file" user@example.com

Executá-lo como mailx -hdeve fornecer instruções de uso.


1

Se você não estiver vinculado ao mailcomando, nailoferece uma interface semelhante, mas pode enviar email usando SMTP.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.