Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: Getting Config::Crontab to Write File to Crontab Command

by waswas-fng (Curate)
on Jul 01, 2005 at 15:59 UTC ( [id://471762]=note: print w/replies, xml ) Need Help??


in reply to Getting Config::Crontab to Write File to Crontab Command

Config::Crontab's POD does have a long example for how to read/write users crontabs in it...
$c = new Config::Crontab; $c->owner('joe'); $c->read; ## reading joe's crontab $c->write; ##write out to joe's crontab... $c->owner('bob'); #change user to bob $c->write; #write same crontab to bob's crontab


Update:

It does look as though Config::Crontab handles restarting crontab and setting other user's crontabs via the system crontab command -- but looking though the code a few things you need to be aware of:

1: As you can see below the crontab command is not absolute -- you should make sure your PATH is set correctly before calling this write function -- or better yet modify Config::Crontab to use a setting to define where crontab exists on the filesystem (and maybe submit a patch).
my $crontab; if( my $owner = $self->owner ) { $crontab = `crontab -u $owner $tmpfile 2>&1`; } else { $crontab = `crontab $tmpfile 2>&1`; } chomp $crontab; unlink $tmpfile; if( $crontab || $? ) { $self->error($crontab); if( $self->strict ) { carp "Error writing crontab (crontab exited with status " . ($? >> 8) . "): " . $self->error; } return; } } return 1; }
2: The Module does not check if you are root before trying to update any users crontab -- if you are modding users crontabs other than your running UID, you should run as root and also verify the script is running as root before you call the writes.


-Waswas

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://471762]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (7)
As of 2024-03-29 15:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found