-
Questions sur crontable
Bonjour
J'aimerais lancer un script en temps que root tout les mois pour nettoyer des logs. J'ai lu dans la FAQ que "cron table" semble être adapté. Par contre, faut il qu'il y ait une session root d'ouverte pour que cela fonctionne? car mes tests n'ont pas été concluant. En gros je cherche à reproduire l'équivalent d'une scheduled task de windows et je suis sûr qu'il y a au moins l'équivalent dans linux :)
De même, j'aimerais lancer un script au démarrage. J'ai créé un répertoire partagé et même si je mets les droits de ces fichiers en 777, il les remet en lecture à chaque démarrage.
Merci pour toute aide.
-
Crontab fonctionne même quand il n'y a pas de session ouverte, à condition qu'il soit bien configuré, es-tu sûr de ne pas avoir fait d'erreur à ce niveau ? certains crons demandent à ce que la crontab soit validée après chaque modif, via la commande
Code:
crontab file_crontable
est-ce que tu l'as fait ?
je n'ai pas compris ton second problème par contre...
-
Tout d'abord merci pour la réponse.
J'ai fait un crontab -e puis est ajouté la ligne suivante:
Code:
* * * * * * /home/root/scriptTest
Ce script test copie le fichier test vers test1 avec la commande:
Code:
cp -f /home/root/test /home/root/test1
Je suppose que le fichier de configuration de cron tab renseigné en tant que root a les mêmes droits que root? (/home/root n'est qu'en lecture pour tout utilisateur autre que root).
Mon deuxième problème est le suivant: j'ai un répertoire partagé qui n'est accessible qu'en lecture pour un ordinateur distant. Je change les droits via un chmod, l'ennui est que lorsque je redémarre mon linux, ce répertoire a de nouveau les droits qu'en lecture. Que puis je faire pour qu'il soit en droits 777 dès le démarrage?
-
pour le second, c'est parce qu'il doit falloir modifier ceci à autre endroit, qu'entends-tu par ordi distant (comment t'y connectes-tu ?)
pour le premier, oui, normalement les droits root sont OK
-
Je me pose des questions sur les droits car la ligne de commande que je t'ai donné marche évidement avec un shell, de plus en regardant les logs de crontab ("/var/log/cron/infos"), je vois qu'effectivement le script scriptTest est appelé, par contre la copie ne se fait pas.
Pour la deuxième question, il s'agit d'un ordinateur portable. Mon linux est connecté à Internet, j'ai installé un serveur samba et dhcp pour qu'un ordinateur portable puisse se connecter à Internet, imprimer via l'imprimante relié au Linux et accéder à un répertoire partagé dont il doit avoir les droits en écriture. J'ai mis l'option "read only = No" dans le smb.conf. Je peux via l'ordinateur portable y écrire lorsque je mets les droits en 777, cependant les droits repassent en lecture à chaque redémarrage.
Un dernière chose: le portable (windows XP) est relié ua PC linux via un cable ethernet et ma distribution est une mandriva 10.1. Je suis ouvert à toutes les suggestions :D
-
J'ai trouvé la solution à la première question, il y a une coquille dans la FAQ linux, rubrique "comment programmer lexécution d'une tache à intervalle régulier" à cette ligne:
Code:
* * * * * * /bin/checkmail
Il y a une étoile en trop. J'ai enlevé cette étoile dans ma conf crontab et maintenant ça marche, il ne reste plus que le problème du répertoire partagé:
Peut on avec crontab, lancer un script au démarrage d'une session?