Using ‚at‘ as regular user

Bomrek Koganvutram 232.20711 at chiffre.aleturo.com
Mon Mar 14 02:05:45 PDT 2016


Hi!

I want to be able to use ‚at‘ as a regular user.  According to the
manpage, an empty ‚/var/at/at.deny‘ suffices and indeed I can queue jobs
via the ‚at‘ command.

But whenever ‚atrun‘ comes up and actually tries to run them, I get this
weird message in /var/log/messages:

| Mar 13 20:00:00 vutram atrun[949005]: Job c000150172c311 - userid 0 does not match file uid 3000

… and the job -doesn’t- run, of course.

I have tried to make sense of atrun.c, and the message comes from
line 233:

| 232     if (nuid != uid)
| 233     perrx("Job %s - userid %u does not match file uid %u",
| 234         filename, nuid, uid); 

I’m no good at C, but at least from a cursory glance I can’t find ‚nuid‘ to be
set to anything other than zero, so that might explain why ‚atrun‘
complains about having to run any jobs that are not for root.

Did I forget to do something else to make this work?  I am hesitant to
believe that this is a but—according to git the relevant code is from
2010, and it seems unlikely that I’m the first one in six years to
encounter it.  Or does indeed nobody use ‚at‘ anymore…? :o)

The only other systems which I have access to are OpenBSD, and there
‚at‘ seems to be integrated into ‚cron‘ or something else and works
quite differently.  The only FreeBSD box to which I can login doesn’t
give me permissions to use ‚at‘, so I can’t test it there.

Cheers,
    Bomrek

-- 



More information about the Users mailing list