C'est une question sans bonne réponse et un morceau intrigant de l'histoire d'Unix.
La règle que nous suivions chez mon ancien employeur était que le logiciel non prêt à l'emploi était installé dans /opt/PackageName-VersionNumber
et il y avait un lien symbolique depuis /opt/PackageName-VersionNumber
à /opt/PackageName
.
Les configurations vont dans /opt/PackageName/etc
Les journaux vont en /opt/PackageName/logs
Les binaires vont dans /opt/PackageName/bin
Les données vont dans /opt/PackageName/data
Pour les applications qui devaient être distribuées en dehors de notre boutique, nous les avons écrites pour qu'elles soient relocalisables par le gestionnaire de packages. C'était un événement rare, et pas "amusant".
Autant que je sache, les applications Linux natives sont écrites pour avoir leurs binaires en [/usr]/bin
, se connecte /var
, configuration en /etc
, etc. Les applications non natives ou les combinaisons de packages (comme lampp/xampp par exemple) qui sont destinées à être utilisées à l'échelle du système, sont en revanche installées par défaut en /opt
, la configuration résidant généralement également dans ce dossier. Si le logiciel est destiné à être exécuté par utilisateur, un dossier dans son répertoire personnel est habituel.