Solved

Problem with piping email into script on CentOS using /etc/aliases or .forward

Posted on 2009-05-14
2
909 Views
Last Modified: 2013-12-16
I need to use this functionality tomorrow, and am still having issues with it. </panic> </slapForehead> Any assistance would be much appreciated.

I added to /etc/aliases:
tp: "|/raid/home/mdarling/code/sms/sms > /raid/host/toadprinceillustrations.com/logs/tp.log 2>&1"

And, of course, ran newaliases after to regenerate aliases.db.

If I run "mail tp", with test as subject/body, it's like the email goes nowhere.


To try to diagnose the problem down, I:

* Recompiled the c plus plus (experts exchange wont let me use plus signs here for some reason) program sms so the only instruction is "cout << 10 / 0;", which when ran adds a line to dmesg like: "sms[12602] trap divide error . . ." to I can easily see if the program executes, without the possibility of a bug in my program causing it to appear like the email isn't going anywhere. If I "mail tp", a divide error isn't added to dmesg. (I've also tried the program as originally made without the divide by zero instruction -- which works correctly when executed normally not through an email pipe -- and it doesn't seem to execute either, just in case dmesg wouldn't log a divide by zero error for some reason through an email pipe.)

* Made sure there aren't any conflicting entries in /etc/mail/virtusertable, and ran make in that directory to regenerate virtusertable.db.

* Removed the tp line in /etc/aliases, and mailed tp. The email properly arrived in /etc/mail/tp, so I know there isn't a general configuration issue with the account or sendmail in general.

* Removed the tp line in /etc/aliases, and created ~tp/.forward with:
"|/raid/home/mdarling/code/sms/sms > /raid/host/toadprinceillustrations.com/logs/tp.log 2>&1"

which I'm not sure should work, but I saw some references to using .forward instead of /etc/aliases to pipe email. Had no effect here either.

I haven't changed any of the file permissions or ownerships, but ownershio/permission-checks so you can see them are:

[root@servo mail]# ls -la /etc/aliases* /etc/mail/* ~mdarling/code/smsCreditCard/smsCreditCard ~tp/.forward
-rw-r--r-- 1 root             root                1685 May 14 10:29 /etc/aliases
-rw-r----- 1 root             smmsp              12288 May 14 10:17 /etc/aliases.db
-rw-r--r-- 1 root             root                 595 Apr 21 23:42 /etc/mail/access
-rw-r----- 1 root             root               12288 Apr 22 16:00 /etc/mail/access.db
-rw-r--r-- 1 root             root                   0 Mar 14  2007 /etc/mail/domaintable
-rw-r----- 1 root             root               12288 May 17  2008 /etc/mail/domaintable.db
-rw-r--r-- 1 root             root                5521 Mar 14  2007 /etc/mail/helpfile
-rw-r--r-- 1 root             root                 243 Apr 21 23:45 /etc/mail/local-host-names
-rw-r--r-- 1 root             root                  64 Mar 14  2007 /etc/mail/local-host-names.sample
-rw-r--r-- 1 root             root                   0 Mar 14  2007 /etc/mail/mailertable
-rw-r----- 1 root             root               12288 May 17  2008 /etc/mail/mailertable.db
-rw-r--r-- 1 root             root                1048 Mar 14  2007 /etc/mail/Makefile
-rw-r--r-- 1 root             root               58195 May 20  2008 /etc/mail/sendmail.cf
-rw-r--r-- 1 root             root               58194 May 17  2008 /etc/mail/sendmail.cf.sample
-rw-r--r-- 1 root             root                7209 Mar 14  2007 /etc/mail/sendmail.mc
-r--r--r-- 1 root             root               41275 Mar 14  2007 /etc/mail/submit.cf
-rw-r--r-- 1 root             root                 940 Mar 14  2007 /etc/mail/submit.mc
-rw-r--r-- 1 root             root                 127 Mar 14  2007 /etc/mail/trusted-users
-rw-r--r-- 1 root             root                 851 May 14 10:10 /etc/mail/virtusertable
-rw-r--r-- 1 root             root                2204 May 20  2008 /etc/mail/virtusertable.backup
-rw-r--r-- 1 root             root                1044 May 14 10:10 /etc/mail/virtusertable.bak
-rw-r----- 1 root             root               12288 May 14 10:10 /etc/mail/virtusertable.db
-rwxrwxr-x 1 mdarling         mdarling         2597264 May 14 10:01 /raid/home/mdarling/code/sms/smsCredit
-rw-r--r-- 1 tp               tp                 56 May 14 09:57 /raid/host/toadprinceillustrations.com/users/tp/.forward
0
Comment
Question by:darlingm2
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 14

Accepted Solution

by:
cjl7 earned 500 total points
ID: 24385704
Try removing the tp:... from /etc/aliases

do "mail tp" with the email you want

run the command manually
cat /email-msg | /raid/home/mdarling/code/sms/sms > /raid/host/toadprinceillustrations.com/logs/tp.log

Does that work?

if it does work, can the email user (the user running the email-daemon) execute ths sms-program?

//jonas
0
 

Author Comment

by:darlingm2
ID: 24386010
Thanks, you pointed me to the solution.  Switching to user tp, I couldn't execute /raid/home/mdarling/code/sms/sms, I got permission denied.  Had to chmod 755 ~mdarling, now it works.  By default, it was 700.  I'm the only person who has access to the server, so I'm fine with 755 permissions here.
0

Featured Post

Visualize your virtual and backup environments

Create well-organized and polished visualizations of your virtual and backup environments when planning VMware vSphere, Microsoft Hyper-V or Veeam deployments. It helps you to gain better visibility and valuable business insights.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

1. Introduction As many people are interested in Linux but not as many are interested or knowledgeable (enough) to install Linux on their system, here is a safe way to try out Linux on your existing (Windows) system. The idea is that you insta…
It’s 2016. Password authentication should be dead — or at least close to dying. But, unfortunately, it has not traversed Quagga stage yet. Using password authentication is like laundering hotel guest linens with a washboard — it’s Passé.
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial
Suggested Courses

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question