Do czego służy folder „/ usr / local / src”?

29

Chciałem umieścić moje pliki robocze (kod) /usr/local/src, ale myślę, że to już folder, który ma inne znaczenie semantyczne.

Co to jest? Czy powinienem tam umieścić kod źródłowy, czy jest lepsze miejsce?

Edycja - jestem jedynym użytkownikiem i administratorem komputera i nie chcę korzystać z mojego katalogu domowego, ponieważ znajduje się on na dysku NFS.

ripper234
źródło

Odpowiedzi:

35

Według Linux FHS , /usrjest miejsce, w którym elementy rozdzielcze oparte są umieszczone i /usr/localjest miejsce, w którym chcesz umieścić własne zlokalizowanych zmian ( /usr/localbędzie pusta baza po instalacji). Na przykład, jeśli chcesz ponownie skompilować pakiet Ubuntu ze źródła, jego menedżer pakietów umieści źródło w pakiecie /usr/src/{package dir}. Jeśli pobrałeś program niezarządzany przez twoją dystrybucję i chciałeś go skompilować / zainstalować, FHS nakazuje ci to zrobić /usr/local/src.

EDYCJA: Krótka odpowiedź, tak, wpisz swój kod /usr/local/src.

Sean C.
źródło
10

To zależy od tego, co robisz z tym źródłem. Jeśli jest to odniesienie, tak, to dobre miejsce. /usr/localjest zarezerwowane dla oprogramowania instalowanego lokalnie przez sysadmin. Tak więc, jeśli chcesz zainstalować oprogramowanie wraz z plikami źródłowymi (do użycia przez inne programy lub do obejrzenia przez innych), to dobrze.

Nie jest to jednak przeznaczone do pracy . Ponieważ jest lokalny , możesz oczywiście robić, co chcesz, ale nie jest to miejsce, w którym można umieścić drzewo rozwoju oprogramowania.

To powinno być naprawdę w repozytorium kodu (być może w /srv/sourcerepolub coś takiego), a następnie programiści sprawdziliby własne kopie robocze w swoich katalogach domowych.

mattdm
źródło
Po drugie, co mówi mattdm powyżej. Zwykle używam /usr/local/srcjako dobrego miejsca do pobierania kodu źródłowego innej firmy (np. Do łatania i przebudowywania pakietów), a nie własnego kodu źródłowego, który jak mówi Matt, powinien znajdować się w katalogu / srv / ... (chociaż zwykle używam /srv/vcs/sourcerepo). I oczywiście dublowane zdalnie.
Faheem Mitha,
@Faheem - mój katalog domowy znajduje się na dysku NFS, więc zdecydowanie nie działam, aby gałąź źródłowa tam była (zbyt wolno).
ripper234
Myślę, że to lepsza odpowiedź. Ja na przykład mam aplikacje internetowe w / srv / http, a ich repozytoria w / srv / git. teraz szukam narzędzi wsparcia dla programistów. Opierałem się całkowicie, /usr/local/appnamea /usr/local/srcnawet lepiej, dopóki tego nie przeczytałem. To dało mi powód, dla którego znałem to w myślach. To rzeczywiście jest praca, złapałeś mnie. A co, jeśli zamiast tego umieściłem go tam, a następnie sklonowałem, aby ~/srcgo tam zbudować, a następnie popchnąć go do jego głównego źródła, czyli miejsca, które dodano / lub-w ścieżce do uruchomienia narzędzi programistycznych. Po prostu nie podoba mi się pomysł / srv, ponieważ nie jest obsługiwany.
Brian Thomas
Co zatem oznacza srv?
SherylHohman
1
@ SherylHohman To tak naprawdę nie oznacza niczego (to nie jest akronimem), ale wybraliśmy to, by sugerować „obsługę”. Zobacz FHS, który mówi: „/ srv zawiera dane właściwe dla witryny, które są obsługiwane przez ten system” .
mattdm