Possible bug with atd?
Jason Vas Dias
jvdias at redhat.com
Thu Mar 2 18:03:15 UTC 2006
On Thursday 02 March 2006 12:53, Steven Haigh <netwiz at crc.id.au> wrote:
> Hi all,
>
> I'm not 100% sure if this is a bug, or something I'm doing wrong...
>
> I'm trying to schedule some dvb recording via a web page using atd. I
> can get the jobs to appear in 'at -l', however when it comes time for
> the job to execute, it just disappears. *poof* gone. No logs, no
> command executed, no nothing.
>
> I'm trying to launch a bash file that does a heap of funky things -
> but not having much luck. If i type in the command manually, it all
> works like a treat.
>
> I am setting the job in PHP by using:
> $cmd = "at $starttime $whatday << COMMAND\n/home/netwiz/bin/capture
> '$channel' $duration\nCOMMAND";
>
> and if I check what the job is, I get such:
> # at -c 11
> #!/bin/sh
> # atrun uid=48 gid=48
> # mail root 0
> umask 22
> HOSTNAME=asterisk.crc.id.au; export HOSTNAME
> SHELL=/bin/bash; export SHELL
> HISTSIZE=1000; export HISTSIZE
> USER=root; export USER
> LS_COLORS=no=00:fi=00:di=01\;34:ln=01\;36:pi=40\;33:so=01\;35:bd=40\;
> 33\;01:cd=40\;33\;01:or=01\;05\;37\;41:mi=01\;05\;37\;41:ex=01\;32:
> \*.cmd=01\;32:\*.exe=01\;32:\*.com=01\;32:\*.btm=01\;32:\*.bat=01\;32:
> \*.sh=01\;32:\*.csh=01\;32:\*.tar=01\;31:\*.tgz=01\;31:\*.arj=01\;31:
> \*.taz=01\;31:\*.lzh=01\;31:\*.zip=01\;31:\*.z=01\;31:\*.Z=01\;31:
> \*.gz=01\;31:\*.bz2=01\;31:\*.bz=01\;31:\*.tz=01\;31:\*.rpm=01\;31:
> \*.cpio=01\;31:\*.jpg=01\;35:\*.gif=01\;35:\*.bmp=01\;35:\*.xbm=01\;
> 35:\*.xpm=01\;35:\*.png=01\;35:\*.tif=01\;35:; export LS_COLORS
> PATH=/sbin:/usr/sbin:/bin:/usr/bin; export PATH
> MAIL=/var/spool/mail/root; export MAIL
> PWD=/var/www/html/tv; export PWD
> INPUTRC=/etc/inputrc; export INPUTRC
> LANG=C; export LANG
> HOME=/root; export HOME
> SHLVL=4; export SHLVL
> LOGNAME=root; export LOGNAME
> CVS_RSH=ssh; export CVS_RSH
> LESSOPEN=\|/usr/bin/lesspipe.sh\ %s; export LESSOPEN
> G_BROKEN_FILENAMES=1; export G_BROKEN_FILENAMES
> cd /var/www/html/tv || {
> echo 'Execution directory inaccessible' >&2
> exit 1
> }
> ${SHELL:-/bin/sh} << `(dd if=/dev/urandom count=200 bs=1 2>/dev/null|
> LC_ALL=C tr -d -c '[:alnum:]')`
>
> /home/netwiz/bin/capture '7 HD Digital' 30
>
> Now this seems to be correct - but as I said, the job just seems to
> disappear. Is there something I'm missing, or is this a bug?
>
> --
> Steven Haigh
>
> Email: netwiz at crc.id.au
> Web: http://www.crc.id.au
> Phone: (03) 9017 0597 - 0412 935 897
>
>
>
You are submitting the job as userid 48, gid 48 -
does the command normally work OK as a non root userid ?
(The device read by the "capture" command must have appropriate
privileges if you're not running it as root -
which device / what privileges?)
Does the at-job work if submitted as root ?
Do you have SELinux in Enforcing mode ?
If so, does the at job work after doing 'setenforce 0' ?
Try changing the command to:
/home/netwiz/bin/capture '7 HD Digital' 30 || echo "FAILED: $?"
that should generate some mail with the exit status if it fails.
Regards,
Jason Vas Dias
at package maintainer
Red Hat Inc.
More information about the fedora-test-list
mailing list