A cosa serve la cartella “/ usr / local / src”?


29

Volevo inserire i miei file di lavoro (codice) /usr/local/src, ma penso che sia già una cartella che ha qualche altro significato semantico.

Cos'è quello? Devo inserire il codice sorgente o c'è un posto migliore?

Modifica : sono l'unico utente e amministratore della macchina e non voglio usare la mia directory home perché si trova su un'unità NFS.

Risposte:


35

Secondo Linux FHS , /usrè la posizione in cui sono posizionati gli articoli basati sulla distribuzione ed /usr/localè la posizione in cui si posizionerebbero le modifiche localizzate ( /usr/localsaranno vuote dopo un'installazione di base). Quindi, per esempio, se volessi ricompilare un pacchetto Ubuntu dal sorgente, il loro gestore dei pacchetti inserirà la fonte per il pacchetto /usr/src/{package dir}. Se hai scaricato un programma non gestito dalla tua distribuzione e volevi compilarlo / installarlo, FHS ti impone di farlo /usr/local/src.

EDIT: risposta breve, sì, inserisci il tuo codice /usr/local/src.


10

Dipende da cosa stai facendo con quella fonte. Se è per riferimento, sì, è un buon posto. /usr/localè riservato al software installato localmente dal amministratore di sistema. Quindi, se si desidera installare il software insieme ai file di origine (per altri programmi da utilizzare o per le persone a guardare), va bene.

Non intende, tuttavia, essere un'area di lavoro . Dal momento che è locale , puoi fare quello che vuoi, ovviamente, ma questo non è progettato per essere il posto dove mettere il tuo albero di sviluppo software.

Questo dovrebbe, in realtà, essere in un repository di codice (possibilmente in /srv/sourcerepoo qualcosa del genere), e quindi gli sviluppatori controllerebbero le loro copie funzionanti nelle loro directory home.


Dico ciò che dice mattdm sopra. Di solito lo uso /usr/local/srccome un buon posto per scaricare codice sorgente di terze parti (ad esempio per correggere e ricostruire pacchetti), non il mio codice sorgente, che come dice Matt, dovrebbe essere sotto / srv / ... (anche se di solito lo uso /srv/vcs/sourcerepo). E rispecchiato da remoto, ovviamente.
Faheem Mitha,

@Faheem - la mia directory home è su un disco NFS, quindi sicuramente non lavoro il mio ramo di origine per essere lì (troppo lento).
ripper234

Penso che questa sia la risposta migliore. Per esempio, ho applicazioni web in / srv / http e i loro repository in / srv / git. ora sto cercando strumenti di supporto per gli sviluppatori. Ero totalmente appoggiato /usr/local/appnameo /usr/local/srcanche meglio, fino a quando non ho letto questo. Questo mi ha dato la ragione che conoscevo nella parte posteriore della mia mente. Questo è davvero un albero di lavoro, mi hai beccato. Quindi, se invece lo mettessi lì, poi lo clonassi per ~/srccostruirlo lì, quindi e lo spingo a monte che è il posto che è aggiunto / o-nel percorso per eseguire gli strumenti di sviluppo. Non mi piace l'idea di / srv, dal momento che non viene servito.
Brian Thomas,

Cosa significa allora srv?
SherylHohman

1
@SherylHohman Non rappresenta davvero nulla (non è un acronimo) ma l'abbiamo scelto per implicare "servizio". Vedere l' FHS che dice "/ srv contiene dati specifici del sito forniti da questo sistema" .
mattdm
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.