Faire un crontab pour un simple user...

Le
David BERCOT
Bonjour,

Dans un script lancé en tant que root, je souhaiterais créer une =
tâche
pour un utilisateur lambda.

J'ai tenté un truc du genre (dans mon script) :
su mon_user
crontab -l > fichier_crontab
echo "40 20 * * * /home/mon_user/script" >> fichier_crontab
crontab fichier_crontab
rm fichier_crontab
exit

Mais en fait, ça me rajoute la tâche au niveau du root et le 'exi=
t'
ne fait pas ce que je veux (ça, c'est moins gênant ;-))) !!!

Auriez-vous une petite idée ?

Merci d'avance.

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
François Boisson
Le #17246231
Le Tue, 16 Sep 2008 21:08:24 +0200
David BERCOT
Bonjour,

Dans un script lancé en tant que root, je souhaiterais créer une tâche
pour un utilisateur lambda.

J'ai tenté un truc du genre (dans mon script) :
su mon_user
crontab -l > fichier_crontab
echo "40 20 * * * /home/mon_user/script" >> fichier_crontab
crontab fichier_crontab
rm fichier_crontab
exit

Mais en fait, ça me rajoute la tâche au niveau du root et le 'exit'
ne fait pas ce que je veux (ça, c'est moins gênant ;-))) !!!



crontab -u toto ...
fait les manipûlations pour l'utilisateur toto.

François Boisson

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
tom
Le #17246691
On Tue, Sep 16, 2008 at 09:08:24PM +0200, David BERCOT wrote:
Dans un script lancé en tant que root, je souhaiterais créer une tâche
pour un utilisateur lambda.

J'ai tenté un truc du genre (dans mon script) :
su mon_user
crontab -l > fichier_crontab
echo "40 20 * * * /home/mon_user/script" >> fichier_crontab
crontab fichier_crontab
rm fichier_crontab
exit

Mais en fait, ça me rajoute la tâche au niveau du root et le 'exit'
ne fait pas ce que je veux (ça, c'est moins gênant ;-))) !!!

Auriez-vous une petite idée ?



man crontab
option -u (associer -l)

le "su mon_user" au milieu du script ne marchera jamais (en fait, si : il
bloque le script au niveau du "su", qui appelle un nouveau shell),
on utilise systématiquement en mode non-interactif "su -c commande".

exit sort du shell courant

note que tu peux faire un (presque) uniligne avec un pipe sed au milieu :

commande1 | sed -e "$ a
blah blah" | commande2

--
=== The BOFH Excuse Server == Your excuse is: Out of cards on drive D:

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
David BERCOT
Le #17246671
Le Tue, 16 Sep 2008 21:18:51 +0200,
François Boisson
Le Tue, 16 Sep 2008 21:08:24 +0200
David BERCOT
> Bonjour,
>
> Dans un script lancé en tant que root, je souhaiterais créer une
> tâche pour un utilisateur lambda.
>
> J'ai tenté un truc du genre (dans mon script) :
> su mon_user
> crontab -l > fichier_crontab
> echo "40 20 * * * /home/mon_user/script" >> fichier_crontab
> crontab fichier_crontab
> rm fichier_crontab
> exit
>
> Mais en fait, ça me rajoute la tâche au niveau du root et le 'exit'
> ne fait pas ce que je veux (ça, c'est moins gênant ;-))) !!!
>
crontab -u toto ...
fait les manipûlations pour l'utilisateur toto.



Hum, je n'ai pas bien lu l'aide alors ;-)

Merci beaucoup !

David.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Publicité
Poster une réponse
Anonyme