35 votes

Où se trouve un bon endroit permanent pour installer des scripts ?

Je suis sur le point d'installer "leiningen" qui est un script bash pour le langage de programmation clojure avec beaucoup d'utilité... ...mais je ne suis pas sûr de l'endroit approprié pour -mettre- un exécutable script dans le système linux afin qu'il soit disponible en permanence et de manière stable.

Je ne pense pas qu'un emplacement dans /home soit judicieux, mais je ne sais pas quel(s) répertoire(s) est/sont censé(s) être utilisé(s) à cet effet.

/usr/share ?

47voto

Dan Points 213

(Note : ~ se traduit par /home/user dans cet article)

Personnellement, je place tous mes scripts de système personnalisés dans /usr/local/bin et tous mes scripts bash personnels scripts dans ~/bin . Très peu de programmes que j'installe se placent dans /usr/local/bin afin de ne pas l'encombrer et qu'il était déjà dans le répertoire $PATH sur la plupart de mes machines.

Ajouter /usr/local/bin dans le chemin d'accès de votre système (s'il n'y est pas déjà), ajoutez ceci à /etc/profile :

PATH=$PATH:/usr/local/bin
export PATH

Ajouter ~/bin au chemin d'accès de votre utilisateur, ajoutez ceci à ~/.bash_profile :

PATH=$PATH:$HOME/bin
export PATH

Parfois, la valeur par défaut .bash_profile comportera une instruction if qui ajoutera automatiquement ~/bin a $PATH s'il existe, alors créez le fichier ~/bin et ouvrez un nouveau terminal pour voir si le vôtre le fait déjà.

9voto

fatal_error Points 1042

/usr/local/ est vraiment le bon endroit, tandis que /opt est vraiment pour les applications tierces ; "/opt est réservé à l'installation de progiciels d'application supplémentaires". Cela fait partie de la norme de hiérarchie des systèmes de fichiers.

Véase http://www.pathname.com/fhs/pub/fhs-2.3.html pour une discussion sur /opt.

Pour /usr/local/, il s'agit d'une "utilisation par l'administrateur système". N'oubliez pas les éléments qui s'y trouvent, documentez-les.

3voto

Tony Points 482

Historiquement, vous utilisiez quelque chose comme /opt. Tout est bon tant que c'est mis à jour dans $PATH pour les utilisateurs qui sont censés l'avoir (c'est pourquoi tout ce qui se trouve dans /home est une mauvaise idée).

2voto

Charles Stewart Points 650

/usr/share/clojure semble être un endroit commun pour mettre les binaires et les bibliothèques de clojure - pourquoi je ne sais pas, cela semble être un endroit naturel pour les binaires et les bibliothèques de clojure. /usr/local/share/clojure - Ainsi, la création d'un site Un sous-répertoire sous celui-ci pour ces scripts semble correct.

L'idée générale est qu'il est plus logique d'organiser les scripts par fonction, et de ne pas regrouper tous les scripts bash au même endroit.

2voto

David Gutmann Points 1

/usr/local Je crois qu'il y a une certaine confusion sur le sens du mot "local".

Si j'ai bien compris, "local" ne signifie pas "provenant de la machine locale" mais, plus simplement, "spécifique à la machine locale", qui peut ou non provenir de la machine locale.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X