Uso delle directory / opt e / usr / local nel contesto di un PC

57

Qual è la differenza tra le directory /opt e /usr/local e quale tipo di programmi dovrebbero essere installati su di loro?

Ho fatto riferimento a Gerarchia del file system Linux ma la spiegazione non è chiara. Secondo il link sopra;

/opt : - Questa directory è riservata a tutto il software e ai pacchetti aggiuntivi che non fanno parte dell'installazione predefinita

/usr/local : - La gerarchia /usr/local viene utilizzata dall'amministratore di sistema durante l'installazione del software in locale. Deve essere sicuro di essere sovrascritto quando il software di sistema viene aggiornato.

Nel contesto di un PC senza computer collegati in rete, quale dovrebbe essere la directory per installare un software a cui accederanno più utenti locali? (vale a dire dove dovrei installare un software come netbeans)

Grazie

    
posta Niroshan 13.04.2011 - 16:42

3 risposte

61

/opt è per applicazioni di terze parti che non dipendono da dipendenze al di fuori dello scopo di detto pacchetto. /usr/local è per i pacchetti installati su questa macchina al di fuori dell'ambito del gestore dei pacchetti di distribuzione.

Un esempio:

Un sip-client open source fornito come .deb si installa in /usr . Se è stato costruito con il framework Qt, apt lo inserirà come dipendenza.

Lo stesso sip-client open source creato da source risiedeva in /usr/local , quindi non sarebbe incasinato da apt se in seguito avessi installato un pacchetto .deb per la stessa applicazione. Potresti costruire le sue dipendenze dal sorgente, o prenderle dal gestore dei pacchetti.

Un'applicazione di terze parti in /opt dovrebbe essere autonoma. Ad esempio, un client sip proprietario che usa Qt non farebbe affidamento sulla versione di apt, ma lo avrebbe raggruppato o collegato staticamente.

Per ulteriori informazioni, consulta lo standard della gerarchia del file system .

    
risposta data Egil 13.04.2011 - 21:00
11

Installerei i pacchetti solo binari di terze parti in /opt .

Qualunque cosa tu abbia creato da te, vorrei inserire /usr/local .

netbeans è in Ubuntu Repos. Hai bisogno di una versione specifica?

    
risposta data Broam 13.04.2011 - 18:15
8

È tutto incentrato sulla confezione. Se qualcosa è impacchettato nel modo LHS (mettendo gli eseguibili in bin / librerie in lib / ecc.) Dovrebbe andare in / usr / local.

Se qualcosa ha una directory di primo livello e non segue quel modello, va in / opt. In generale, devi aggiungere cose in / optare al tuo PATH.

Vedi anche Questa domanda sul superutente

    
risposta data TREE 13.04.2011 - 22:23

Leggi altre domande sui tag