Is it possible to send mail from linux terminal to any gmail account.

If possible then what are the configuration are needed.

I tried with mailx and sendmail but its not working.

I also tried with mutt like this

echo "test" | mutt -s this-is-my-subjest XXXXX@gmail.com

but no use...

I am using CentOS 6.2

  • What is not working? Do you get an error message? Have you checked any log files? – Emil Vikström Aug 17 '12 at 14:29
  • I am not getting any error msg. but not getting mail also. – max Aug 17 '12 at 14:32
  • You should be able to find a log file in /var/log/. It is often called maillog or similar. What does it say after you try your command? – Emil Vikström Aug 17 '12 at 14:35
  • nothing, next command prompt will appear. – max Aug 17 '12 at 14:37
  • in var/log/maillog its showing Network is unreachable – max Aug 17 '12 at 14:48

I would advise to use sendEmail:

sendEmail-1.56 by Brandon Zehm <caspian@dotconf.net>

Synopsis:  sendEmail -f ADDRESS [options]

    -f ADDRESS                from (sender) email address
    * At least one recipient required via -t, -cc, or -bcc
    * Message body required via -m, STDIN, or -o message-file=FILE

    -t ADDRESS [ADDR ...]     to email address(es)
    -u SUBJECT                message subject
    -m MESSAGE                message body
    -s SERVER[:PORT]          smtp mail relay, default is localhost:25

    -a   FILE [FILE ...]      file attachment(s)
    -cc  ADDRESS [ADDR ...]   cc  email address(es)
    -bcc ADDRESS [ADDR ...]   bcc email address(es)
    -xu  USERNAME             username for SMTP authentication
    -xp  PASSWORD             password for SMTP authentication

    -b BINDADDR[:PORT]        local host bind address
    -l LOGFILE                log to the specified file
    -v                        verbosity, use multiple times for greater effect
    -q                        be quiet (i.e. no STDOUT output)
    -o NAME=VALUE             advanced options, for details try: --help misc
        -o message-content-type=<auto|text|html>
        -o message-file=FILE         -o message-format=raw
        -o message-header=HEADER     -o message-charset=CHARSET
        -o reply-to=ADDRESS          -o timeout=SECONDS
        -o username=USERNAME         -o password=PASSWORD
        -o tls=<auto|yes|no>         -o fqdn=FQDN

    --help                    the helpful overview you're reading now
    --help addressing         explain addressing and related options
    --help message            explain message body input and related options
    --help networking         explain -s, -b, etc
    --help output             explain logging and other output options
    --help misc               explain -o options, TLS, SMTP auth, and more

It works very well for me. Remember to use TLS with gmail. You need to provide details of the server that will send the email with those options:

    -s SERVER[:PORT]          smtp mail relay, default is localhost:25
    -xu  USERNAME             username for SMTP authentication
    -xp  PASSWORD             password for SMTP authentication

It's best for me as it allows to add attachments and can be easily placed in the scripts.

Example usage:

sendEmail -f x1user@gmail.com -t x2user@gmail.com -s test -m messageBody -s smtp.gmail.com -xu x1user@gmail.com -xp xxxxxpass -o tls=auto
Aug 17 16:21:37 z sendEmail[22420]: Email was sent successfully!
  • can u provide one simple example? – max Aug 17 '12 at 14:19
  • 1
    sure i will place it in the answer at the bottom – mnmnc Aug 17 '12 at 14:22
  • sendmail can do much more thing that mailto, but I found it's use rather complicated, I use sendmail in alertscript to get everything, but to just send a mail, mailto is rather simple I think. Like using a rifle to shoot a mosquito for me. – Anarko_Bizounours Aug 17 '12 at 14:31
  • possibly. but what you probably missed - i'm proposing send-E-mail. not sendmail. i've never had a chance to use sendmail but sendEmail does everything i need. – mnmnc Aug 17 '12 at 14:37
  • no sendEmail command installed, so I tried yum install sendEmail but its giving No package sendEmail available – max Aug 17 '12 at 14:39

The mail terminal program should do the trick. It usually works "straight out of the box" to allow users/programs to send messages locally, inside the system.

Type mail -s 'subject line' someone@gmail.com and hit return. Then type your message and close/send using Ctl-D.

  • I tried this but not working... any configuration are needed, before doing this? – max Aug 17 '12 at 14:23
  • 1
    Can you try sending an email to yourself on the machine: mail -d -s subject your name@localhost. The -d option will provide debugging output to tell you what is causing the problem. – danielcraigie Aug 17 '12 at 14:28
  • On some systems you have to use mailx instead of mail. – mdpc Aug 17 '12 at 19:35

normally you don't have to any specific configuration, centos got by default a mail server.

If i recall the command is mailto then type the information (from, subject etc,...) and type your text, and when you've finished typing type ctrl+D, you'll get EOT.

Be aware that you mail server will use your user information, something like that from : user@pcname but I'm not on my linux today so I can't check that.

Hope this will help.


there the link to O'reilly man page : there

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.