Comment configurer la commande 'mail' Unix?


9

J'ai jeté un œil sur Google et les pages de manuel pour le courrier, mais je ne sais pas comment le configurer. Tout ce que je veux faire, c'est configurer mon adresse e-mail pour pouvoir envoyer des e-mails via le terminal. Comment je fais ça?

Réponses:


12

Traditionnellement, les programmes de messagerie Unix, notamment mail, s'appuient sur un MTA (Mail Transfer Agent) pour effectuer la transmission proprement dite.

Vous pouvez utiliser soit un MTA de taille normale (postfix, exim4, opensmtpd) en le configurant avec un 'smarthost' (relayhost), ou un MTA sortant uniquement léger (msmtp, ssmtp, esmtp, nullmailer) qui en utilise toujours un.


Pour un usage personnel, msmtpsera plus facile à configurer - il ne peut envoyer que du courrier, pas recevoir, et permet une configuration spécifique à l'utilisateur.

Installez msmtp, puis ajoutez votre compte Gmail dans ~/.msmtprc:

par défaut
    tls sur
    # le chemin ci-dessous peut devoir être ajusté
    tls_trust_file /etc/ssl/certs/ca-certificates.crt

compte gmail
    de youraddress @ gmail.com
    hôte smtp.gmail.com
    port 587
    plaine d'authentification
    utilisateur youraddress @ gmail.com

compte par défaut: gmail

Dites maintenant maild'utiliser msmtp, en éditant ~/.mailrc:

set sendmail = "/ usr / bin / msmtp"

(Si cela ne fonctionne pas, exécutez en ln -s /usr/bin/msmtp /usr/sbin/sendmailtant que root.)

Enfin, si vous souhaitez mail/ msmtpvous souvenir de votre mot de passe Gmail, il va à ~/.netrc:

machine smtp.gmail.com
    connectez-vous à votre adresse @ 
    mot de passe gmail.com " votre mot de passe ici "

3

Sauf si votre administrateur système a déjà configuré le système de messagerie, vous devez configurer un agent de transfert de messagerie. C'est sendmail traditionnellement, les systèmes modernes utilisent postfix ou exim4.


2

Sur de nombreux systèmes, vous trouverez une mailxcommande qui peut être utilisée pour envoyer des e-mails. Il peut s'agir d'un lien vers la commande mail, mais modifie le comportement de la commande. Comme d'autres l'ont noté, cela suppose que vous avez un MTA (Mail Transfer Agent) configuré sur votre serveur. Il peut être utilisé de manière interactive à l'aide d'une commande comme:

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

Ou avec un tube pour envoyer la sortie d'une commande:

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

L'exécuter correctement mailx -hdevrait vous donner des instructions d'utilisation.


1

Si vous n'êtes pas lié à la mailcommande, nailoffre une interface similaire mais peut envoyer du courrier via SMTP.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.