I need to control sendmail or mailx from a file. The file will have the receprent as the first line, Subject: has the second line, etc. From what I can find with Google the only why to define the target and subject is on the command line? Does any one know of a way to make a mailer use the data in a file? The file would look like this:
I have installed postfix and dovecot on my server and thought postfix will not only take SMTP connection from my e-mail client like Outlook, but also handles "mailx" commands from the server. However, it looks like sendmail is still responsible for sending mails from "mailx". I tested this by turning it on/off using "service sendmail stop" and "service sendmail start". Mails sent using "mailx" will only be sent when sendmail is up. When I did "yum info sendmail", it lists sendmail as an installed package. Is is safe to remove sendmail by running "yum erase sendmail", and let postfix handles "mailx" also?
im just wondering is it possible to instruct mailx to use postfix instead of sendmail while have sendmail and postfix installed? like system-switch-mail way in other distros. basically i would like to be able to use mailx when i uninstall sendmail and keep postfix only installed, so i dont get msg after i press . to send email from mailx
Code: /usr/sbin/sendmail: No such file or directory
I know there are several posts to do with mail and mailx, but nothing obvious in terms of my problem. Below is a small excerpt from the script that runs, but seems to have developed a problem.
The email is sent, but with numerous recipients, rather than the one specified in the RECIPIENTS variable, and because most of these aren't valid, getting a dead.letter. I've put in some debugging to check values of recipient and subject, and they show as expected.
I ran mail (aka mailx) and opened an account foo. If I remain inside the program, the command 'account foo' prints the account data. Good. But if I exit the program, and rerun it, then the command 'account' has no output which is to say I have no account.
I am facing some problem with the mailx commmand. When i run the mailx command from the command line it sends it to the correct mail address which i mention.
But when i run the same command from a perl script, it appends the machine name (hostname.abc.com) to the mail address, and the mail address (sampleaddr@abc.com - which i entered) becomes invalid [URL] - found in the maillog), failing to reach the receiver. I am running it from the csh shell. how to avoid this addition.
I have a program that I run from the terminal that requires manual input (it's matlab in mex debugging mode, matlab -Dgdb, which starts the GNU C debugger with its own custom settings).
Every time I run this program I always type in the same few commands in the program's interactive shell before I actually start working (for example: run -nojvm; stop at mexFunction; continue). I want to avoid typing these commands and I thought I could do this with shell scripting, saving the commands in the mycommands file, then running: myprogram < mycommands
The problem is that this runs all the commands and then exits the program. I want it to run the commands and return control to me so I can run my commands. Is there a way to tell the shell to use a file or a string as the input to a program then immediately return control to the user without the exiting the program?
I am using webmin for my daily tasks. I have fedora 13, whenever I click on ''Sendmail M4 Configuration'' or Outgoing Addresses (generics)'' I get the following error message
Quote:
The Sendmail M4 configuration base directory /usr/share/sendmail-cf was not found on your system, or is not the correct directory. Maybe it has not been installed (common for packaged installs of Sendmail), or the module config is incorrect. I read documentation at sendmail.org, it seems that structure of directories for send mail has been changed in version sendmail-8.1.4 shipped with FC13. In webmin config module we have
Quote:
Sendmail M4 base directory = /usr/share/sendmail-cf
which is not there. I did a locate / sendmail-cf on the command line, it finds nothing
I have been trying to set up ssmtp so I can send email using Gmail's ssmtp servers. However, when I try to send mail (using mailx), I get the following message:
Code:
Can't send mail: sendmail process failed
Here's the last line from dmesg (the only one applicable, according to the timestamps and message content):
Code:
[484114.608378] sendmail[17975]: segfault at 0 ip b7dbbbf3 sp bfb0dc4c error 4 in libc-2.11.2.so[b7d44000+14e000]
Here's my ssmtp.conf:
Code:
# # /etc/ssmtp.conf -- a config file for sSMTP sendmail. #
I'm trying to pipe from a textfile to sendmail.The command I'm using on teh sendmail server is:[root@sendmail-server test]# sendmail to-email-address@relay_server-address < test2.txt.I'm doing this because I was doing this from an aliases file just fine until about three weeks ago. The aliases file suddenly stopped working after the relay server received an inordinate amount of email from the From: address and for the To: address.
I'm using Sendmail 8.13.8 on a CentOS 5.5 vServer (Virtuozzo). I'm using a loop in PHP to send a lot of HTML-mails via sendmail. Each mail is a mail with individual statistics for our users, so its not mass mailing, bcc is not an option. It all works fine, but when I take a closer look there is a problem heading our way with a high number of mails: For each mail sendmail opens up 43 files. Sometimes these open files get closed again very fast, sometimes not.
Here is an example using the PHP-script below, it sends 20 mails in a loop: [root]# php test-mail.php START: number of open files: 2113 END: number of open files: 2973
This is the worst case. The number of open files (lsof | wc -l) used to send the 20 mails is 860 => 43 open files per mail. Sometimes the files are closed very fast, so I get results like this, too: [root]# php test-mail.php START: number of open files: 2113 END: number of open files: 2242
This shows 129 (3 * 43) open files, so the open files for 17 send mails are already closed, for 3 mails the 129 files are still open. In the worst case and with lots of mails our server crashes, the numfile limit of 8192 in user_beancounters is reached (our ISP won't give us more than 8192). Sendmail DeliveryMode is background. Could it be that sendmail tries to send lots ob mails asynchronously and uses 43 open files for each?
I'm only depending on sendmail to deliver the mails, normally I wouldn't dare to touch the sendmail config (like 'if you don't know what you're doing, don't!'). It is not a problem of PHP. I verified this by sending mails via SMTP localhost to sendmail (opened 43 files per mail) and sending mails via SMTP to an ISP-relay (did not open any files per mail). This is the code for test-mail.php:
PHP Code: <?php $output = shell_exec('lsof | wc -l'); echo "START: number of open files: $output"; // HTML message $msg = '<html><head><title>Test mail</title></head><body><p>Mailbody</p></body></html>'; // Set 'Content-type'-header $header = 'MIME-Version: 1.0' . " "; $header .= 'Content-type: text/html; charset=iso-8859-1' . " "; for($i=0; $i<20; $i++) { // send mail, this opens up 43 files for each mail('you@yourdomain.com', 'Testmail '.$i, $msg, $header, '-f [email]bounce@yourdomain.com[/email]'); } $output = shell_exec('lsof | wc -l'); echo "END: number of open files: $output"; ?>
I am trying to email some log files from my RHEL 5.3 server to my Outlook corporate account and nothing happens. Here is the command I use:[root@server1]# mailx -s "server info" my_id@my_corporate_domain < server_infoThe file server_info does exist and is a small log file. I checked for sendmail and seems to be running OK as follows:
I'm not at all familiar with mail clients or mail system in Linux. Is there anything missing? I don't have to use mailx, I could use an alternative. Just please let me know how to sent a simple mail from this server to my corporate account using any tools possible (and maybe how to set it up)
I recently modified sendmail.cf to use a third party SMTP server to send emails. It works great. But when I run sendmail from the command line, I have to specify the -C flag and force feed it the location of my sendmail.cf, or else it doesn't work.
So in other words, the following works great:
However, if I don't specify the -C flag, sendmail doesn't consider what's in the sendmail.cf and barfs:
I don't run sendmail as a daemon. I'm only using it to send emails. I know my modifications of sendmail.cf are correct because it works perfectly when I use the -C flag. I searched my disk to see if I could find another sendmail.cf on the machine and only the one in /etc/mail came up.
Why sendmail is not reading my sendmail.cf?
I'm running Sendmail version 8.14.2 on Fedora Core 8.
I have a script that sends short reports via the mailx command which is failing a lot lately.
Syntax used is basically: mailx -s "the subject" -r somebody@somewhere.com myemail@gmail.com < textfile.txt
For what ever reason this command has become very unreliable lately. I've tested on the command line and sometimes it works but frequently fails. The -r address seems to cause problems as it always fails with a -r set to my work address. I've read several theads and tried adding a .mailrc file but couldn't get past the NSS configuration setting. (Using my mozilla x123x.default dir results in Error initializing NSS: Security library: bad database. )
The nail command behaves about the same. what would make email sending so intermittent?
I've checked the /var/log/maillog but see each mail session end with the following and no errors reported:
I am running a opensuse 11.4 with mailx 12.2. I am trying to sent emails via command line using mailx. I have not configured any mail server in yast. My .mailrc in my homefolder looks like this:
set smtp-use-starttls account gmx { set smtp=mail.gmx.net:465 set smtp-auth=login set smtp-auth-user=my.name@gmx.de set smtp-auth-password=mypassword set from="My name <my.name@gmx.de>" }
Unfortunately when I use the command mailx -s"Test" -A gmx my.name@gmx.de [Return] Hallo [ctrl+d] I am getting only the message Unexpected EOF on SMTP connection "/home/myname/dead.letter" 11/338 . . . message not sent.
Formerly it was possible to send attached files using the "-a" option eg. mailx -a /home/yan/textfile [URL]. (I think -a stood for "attached". At the time the "-a" option figured as an option for sending attached files.Now it is an option for sending headers. how one can now send attached files using mailx?
In Red hat i used the nail command to send mail using an external smtp server without sendmail or other mail services active. My question is: In Centos 5 nail is not present but is present mailx in version 8.1.1-44.2.2
Is there a way to set mailx to use external smtp server ? because in many forum i get the string mailx -S smtp= etc.etc. but in my case the -S parameter generate mailx: invalid option -- S antoher question is there a an official repository to download rpm nail for centos ?
I have a couple of servers that are scripted to send cron script output logs to my email address (a Gmail address). Mailx is what I am using, but I didn't have to configure anything; I installed it, and it just worked with the following command: mailx -s "SUBJECT" -r FROMMYADDRESS TOMYADDRESS < FILETOCATANDSEND
This occurs every Saturday and Sunday at noon after my backup scripts run. I noticed yesterday that I did not receive these logs, so I logged into the machine, started 'mail' and saw messages like this: This is the mail system at host media.deagle.lan.
I run in a script a mailx command like this:cat logfile | mailx -s'the logfile' to-me@..This works most of the time, but in some cases mailx automagically turns logfile into an attachment called 'attachment.bin'.I think this may be because 'logfile' contains a few control characters or escape codes?How can I tell mailx to be less intelligent and treat it as an ASCII text file?
I'm trying to send an email using mailx, in a bash script, but I can't get it to work. In the terminal I can, and this is how I do it:
Code: $ mailx johndoe@gmail.com Message^D
Within seconds of doing this, I get sent an email. The problem is with the bash script I'm trying to make. Among other things, I tried this:
Code: #!/bin/bash mailx johndoe@gmail.com < "Message" I honestly don't know what I'm supposed to do, and I've Googled a bunch of things too, and didn't have too much luck. Is there anyone who could help me out?
Edit: Figured it out. This is what I did, and it works for me:
Code: #!/bin/bash echo "Message" | mail -s "Subject" "johndoe@gmail.com"
I'm using the default GNOME file manager. But as a user I don't have any privileges to move files to/from the user folders to the system. I elevated my user to admin privileges, but this has no effect; I can't do any file management in the system area.
I can use the 'root terminal', but it would be much easier to use a GUI file manager--even drag 'n drop.How do I get the file manager to open up? I guessed one way to do this is to log in as 'Root' instead of user. But login won't allow an 'other' login when I try to use 'root' as a username. Is this the wrong approach? Dave
I am looking for a way to control the order in which files (or more specifically, certain subtrees) are updated for a very large rsync update done daily. There is a finite time frame and finite bandwidth to do these updates, and they usually do NOT complete. I want to control the order so that more important files are copied earlier.
What I have been doing is breaking up the rsync runs into a few steps where the first step is a very limited set of subtrees using --include and/or --exclude, and each step thereafter is increasing the amount, until the last step is the whole tree to be updated. This is not working because the time it takes to transfer the file list is large (varying from 10 minutes to 40 minutes depending on step). I really need to get this back down to doing a single rsync run to reduce that wasted time.
I cannot ultimately split things because there are a lot of hardlinks that need to be retained (or else the destination space and bandwidth would be exceeded).
I was looking at rsync's batch mode. My thought was if I could get a list of what needs to be updated, I could then sort that list and do just 1 more rsync run to do the updates in the order I want. But it turns out the batch mode file is in some cryptic binary format. I really have no idea if that could have worked.
The order selection is not simply based on the names in the top directory, so I cannot simply just list those in the preferred order on the command line (otherwise, yes, that would control the order). If I do list directory names from various depths, that list gets flattened into the destination directory, which would not work to replicate the whole tree exactly.