Où stocker le script cronjob?

18

Je préfère ne pas le conserver dans mon /home/myusernamerépertoire. Existe-t-il une meilleure pratique pour savoir où stocker vos scripts shell pour les tâches cron? Au niveau racine?

J'utilise le serveur Ubuntu 12.04 en ce moment.

tarabyte
la source
1
Pourquoi ne voulez-vous pas le stocker dans votre répertoire personnel? S'ils sont pour vous personnellement, c'est exactement où ils devraient être - probablement dans un sous-répertoire bien nommé. S'ils sont pour le système a un tout, ils devraient peut-être être ailleurs. (La distinction peut être vague si vous êtes le seul utilisateur.)
Keith Thompson
1
Il n'y a vraiment aucune "réponse" à ces questions .... juste beaucoup de nombreuses préférences.
mdpc
vous pourriez en trouver par défaut sur/usr/sbin
tony gil

Réponses:

19

En général, je mets le mien dans:

  • /usr/local/bin/ pour que les scripts soient exécutés par plusieurs utilisateurs normaux
  • /usr/local/sbin/ pour les scripts qui doivent être exécutés en tant que root

De cette façon, vous séparez la tâche effectuée par le script de cron qui automatise simplement son lancement.

Vous aurez cependant besoin de root pour y stocker des fichiers.

Sirex
la source
"Vous aurez cependant besoin de root pour y stocker des fichiers." - Pas si vous définissez les autorisations correctement. Je fais habituellement /usr/localet ses sous-répertoires inscriptibles en groupe, et je me ajoute au groupe (disons, install). (Bien sûr, vous aurez besoin de root pour définir les autorisations en premier lieu.)
Keith Thompson
je suis l'utilisateur principal et j'ai les privilèges root. Je préférerais que personne d'autre ne modifie cela, alors je penche vers / usr / local. il n'y a pas de répertoire standard / mycronjobs que les gens créent habituellement?
tarabyte
si vous voulez que personne d'autre ne puisse le modifier. le faire appartenir à root et lui attribuer 500 ou 700 autorisations. - vous pouvez même faire root: <votre groupe> @ 550 ou 770. pour un effet similaire avec vous étant en mesure de modifier sans aller root. à mon humble avis, il est plus simple de simplement sudo avant de modifier le script et de le faire appartenir à root.
Sirex
6
@terabyte, le répertoire standard est généralement ~/binqui est ensuite ajouté au $ PATH. Vous avez demandé la meilleure pratique, eh bien, il enregistre vos scripts personnels dans votre répertoire personnel. Il est plus propre et facilite la mise à niveau ultérieure.
terdon
s'il s'agit d'un script personnel (personne d'autre n'a besoin de l'exécuter), terdon est correct.
Sirex