Questa è una domanda senza una risposta giusta e un pezzo intrigante della storia di Unix.
La regola che abbiamo seguito presso il mio precedente datore di lavoro era che il software non predefinito fosse installato in /opt/PackageName-VersionNumber
e c'era un collegamento simbolico da /opt/PackageName-VersionNumber
a /opt/PackageName
.
Le configurazioni vanno in /opt/PackageName/etc
I log vanno in /opt/PackageName/logs
I binari vanno in /opt/PackageName/bin
I dati vanno in /opt/PackageName/data
Per le app che dovevano essere distribuite al di fuori del nostro negozio, le abbiamo scritte per essere rilocabili dal gestore dei pacchetti. Questo è stato un evento raro e non "divertente".
Per quanto ne so, le applicazioni Linux native sono scritte per avere i loro binari in [/usr]/bin
, accede a /var
, configura in /etc
, e così via. Le applicazioni non native o le combinazioni di pacchetti (come lampp/xampp per esempio) che devono essere utilizzate a livello di sistema, d'altra parte sono installate per impostazione predefinita in /opt
, con la configurazione che di solito risiede anche in quella cartella. Se il software deve essere eseguito per utente, è consuetudine inserire una cartella all'interno della loro home directory.