1

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 [email protected]

but no use...

I am using CentOS 6.2

6
  • What is not working? Do you get an error message? Have you checked any log files? Aug 17, 2012 at 14:29
  • I am not getting any error msg. but not getting mail also.
    – max
    Aug 17, 2012 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? Aug 17, 2012 at 14:35
  • nothing, next command prompt will appear.
    – max
    Aug 17, 2012 at 14:37
  • in var/log/maillog its showing Network is unreachable
    – max
    Aug 17, 2012 at 14:48

3 Answers 3

4

I would advise to use sendEmail:

sendEmail-1.56 by Brandon Zehm <[email protected]>

Synopsis:  sendEmail -f ADDRESS [options]

  Required:
    -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

  Common:
    -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

  Optional:
    -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

  Paranormal:
    -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:
    --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 [email protected] -t [email protected] -s test -m messageBody -s smtp.gmail.com -xu [email protected] -xp xxxxxpass -o tls=auto
Aug 17 16:21:37 z sendEmail[22420]: Email was sent successfully!
6
  • can u provide one simple example?
    – max
    Aug 17, 2012 at 14:19
  • 1
    sure i will place it in the answer at the bottom
    – mnmnc
    Aug 17, 2012 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. Aug 17, 2012 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, 2012 at 14:37
  • no sendEmail command installed, so I tried yum install sendEmail but its giving No package sendEmail available
    – max
    Aug 17, 2012 at 14:39
3

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' [email protected] and hit return. Then type your message and close/send using Ctl-D.

3
  • I tried this but not working... any configuration are needed, before doing this?
    – max
    Aug 17, 2012 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. Aug 17, 2012 at 14:28
  • On some systems you have to use mailx instead of mail.
    – mdpc
    Aug 17, 2012 at 19:35
0

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.

EDIT :

there the link to O'reilly man page : there

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .