Gdzie powinienem przechowywać źródła do pobrania?

10

Zawsze pobierałem wszystko do / tmp, ponieważ po make; sudo make installtym zwykle nie potrzebuję już tych plików.

Ale teraz zdałem sobie sprawę, że jedynym sposobem na odinstalowanie programów zainstalowanych ze źródła jest użycie make uninstall(jeśli jest dostępne). Więc prawdopodobnie powinienem zachować moje pliki do pobrania na wypadek, gdyby były potrzebne później.

Gdzie mam je przechowywać? Czy jest na to zaprojektowane miejsce w Linuksie?

ChocoDeveloper
źródło
Unikaj problemu: instaluj z pakietów, jeśli to możliwe.
Michael Hampton
@MichaelHampton Czasami nie jest to opcja (tak myślę), np .: nginx wymaga instalacji ze źródła, jeśli chcesz dodać moduły innych firm.
ChocoDeveloper

Odpowiedzi:

16

Lokalizacja zdefiniowana w standardzie hierarchii systemów plików do przechowywania kodu źródłowego to /usr/src. Przypuszczam, że mógłbyś również użyć /usr/local/src, ponieważ jest to nieco bardziej opisowe, skąd pochodzi oprogramowanie (to znaczy, zbudowałeś je; dystrybucja nie).

Zauważ jednak, że FHS faktycznie wspomina, że ​​kodu źródłowego nie należy budować z tego katalogu, prawdopodobnie dlatego, że nie powinieneś kompilować rzeczy jako root, więc przypuszczam, że przeniesiesz tam drzewo źródłowe po instalacji. W praktyce jednak nie przeszkadzam; Trzymam wszystko ~/Code, co wbudowałem, czyli na bardziej partycjonowanej partycji. Zasadniczo nie ma powszechnie przyjętej konwencji; po prostu rób to, co dla ciebie działa.

Powinieneś także spojrzeć na checkinstall , świetne oprogramowanie, które tworzy podstawowy pakiet poleceń. (Prawdopodobnie będzie w repozytorium twojej dystrybucji). Zasadniczo zamiast działać

sudo make install

prowadziłbyś coś wzdłuż linii

sudo checkinstall make install

który wypytuje cię o pakiet, który tworzysz, zegarki make installinstalują wszystko, a następnie budują pakiet, który można następnie zainstalować i odinstalować za pomocą menedżera pakietów. Wierzę, że checkinstall może budować pakiety dla systemów opartych na dpkg (Ubuntu, Debian itp.), Systemów opartych na RPM (Fedora, RHEL itp.) Oraz systemów opartych na Slackware. Jeśli korzystasz z Arch, nie przejmuj się checkinstall; zamiast tego rozważ użycie PKGBUILD.

Mam nadzieję, że to pomaga!

trzydzieści trzydzieści
źródło
+1 za wzmiankę o pakietach. Myślę, że jest to odpowiedź, która była potrzebna (ale nie zadana).
Hennes
Dzięki! Używam teraz checkinstall, na razie wygląda świetnie. Ostatnie pytanie: nie muszę utrzymywać pliku .deb, prawda? dpkg będzie wiedział, jak go odinstalować, nawet jeśli go nie ma
ChocoDeveloper
To jest poprawne. Wszyscy menedżerowie pakietów przechowują listę plików zainstalowanych przez pakiet, dzięki czemu można usunąć zbudowany pakiet po jego zainstalowaniu.
thirtythreeforty
5

Nie ma wyznaczonego miejsca na pliki źródłowe; każdy ma swoje przyzwyczajenia.

Zastanów się jednak nad tymi trzema opcjami:

  1. W katalogu głównym homedir (działa, ale jest włączony / co zwykle jest raczej niewielkie).
  2. / usr / local / src / (lub właściwie wszystko w / usr / local /
  3. Zainstaluj za pomocą pakietu i użyj menedżera pakietów do odinstalowania.

Do długoterminowej konserwacji naprawdę polecam opcję 3. Nawet jeśli musisz zbudować pakiety samodzielnie (ze źródła). W takim przypadku należy przejść do: untar / configure / make / make package poprzez jakąś składnię w zależności od wyboru pakietu / pakietu instalacyjnego

Hennes
źródło