>I'm hoping someone can shed some light on this one, basically I'm 
>convinced amandad never runs from inetd, and I"ve spent days on this 
>so far :-(

Then it's definitly time to ask :-).

>and inetd has (on one line!):
>
>amanda  dgram   udp     wait    
>amanda /opt/local/libexec/amandad       amandad
>...
>If I run the above manually (as root or amanda), the /tmp/amanda/ 
>directory is created, as well as the debug file. So I delete that, 
>kill-HUP inetd just to be safe, and then run amcheck.
>
>Nov 24 12:00:27 hostname inetd[168]: [ID 858011 
>daemon.warning] /opt/local/libexec/amandad: Hangup

This says, as you sort of suspected, that inetd is not able to run
amandad for some reason.  It is, however listening on the port and so
forth, so that part's configured properly.

BTW, after it fails like this, inetd will disable the service (that's
what it means by "service terminated") for 10 minutes.  If you continue
to do testing before it re-enables it, nobody will be listening on the
port, which will no doubt add to the confusion.  Sending inetd a HUP
will re-enable everything right away.

I know you said the above inetd.conf entry was on one line, but could
you confirm absolutely that that trailing "amandad" is really there and
is on the same line?  That's been a typical problem in the past.

When you ran amandad as user amanda, did you give it the full path as
in the inetd.conf line?  Something like:

  su amanda -c /opt/local/libexec/amandad

And I assume it sat there for 30 seconds then dropped away?

If none of this sheds any light, then next entry out of the bag 'o
tricks is to write a little shell script like this:

  #!/bin/ksh
  exec > /tmp/amandad.out.$$ 2>&1
  print "$(date): starting amandad"
  /opt/local/libexec/amandad
  print "$(date): amandad done: status is $?"
  exit 0

Put it in (e.g.) /tmp (it's just for testing, not for production), chmod
+x it, then change the inetd.conf line to point at the script instead
of directly at amandad.  Make sure you leave the trailing "amandad"
on the line.

The script will run amandad but redirect stdout/stderr to another /tmp
file.  See if they have anything interesting to say.

If the script at least tries to run (e.g. you get the "starting amandad"
message) but does not give any more insight, change the call to
amandad in the script to:

  /bin/truss -aelv all /opt/local/libexec/amandad

which will dump loads of stuff to stderr.  Hopefully one of the last
things you see it try to do will point the way to the real problem.

>Also I'm not 100% as to what should be going on with .amandahosts, at 
>present I have it in ~amanda, containing 'hostname amanda' and this 
>seems OK.

That's correct (I assume by "hostname" you mean the name of your server),
with the addition that it should be owned by amanda and mode 0600 or 0400.

>- John

John R. Jackson, Technical Software Specialist, [EMAIL PROTECTED]

Reply via email to