Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Faire un crontab pour un simple user...

3 réponses
Avatar
David BERCOT
Bonjour,

Dans un script lanc=C3=A9 en tant que root, je souhaiterais cr=C3=A9er une =
t=C3=A2che
pour un utilisateur lambda.

J'ai tent=C3=A9 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, =C3=A7a me rajoute la t=C3=A2che au niveau du root et le 'exi=
t'
ne fait pas ce que je veux (=C3=A7a, c'est moins g=C3=AAnant ;-))) !!!

Auriez-vous une petite id=C3=A9e ?

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

3 réponses

Avatar
François Boisson
Le Tue, 16 Sep 2008 21:08:24 +0200
David BERCOT a écrit:

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
Avatar
tom
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
Avatar
David BERCOT
Le Tue, 16 Sep 2008 21:18:51 +0200,
François Boisson a écrit :
Le Tue, 16 Sep 2008 21:08:24 +0200
David BERCOT a écrit:

> 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