Dove devo archiviare i download di origine per l'installazione?


10

Scaricavo tutto su / tmp, perché dopo di make; sudo make installsolito non ho più bisogno di quei file.

Ma ora ho capito che l'unico modo per disinstallare i programmi installati dal sorgente è usare make uninstall(quando disponibile). Quindi dovrei probabilmente conservare i miei download nel caso ne avessi bisogno in un secondo momento.

Quindi dove devo conservarli? C'è un posto progettato per quello in Linux?


Evita il problema: installa dai pacchetti quando possibile.
Michael Hampton,

@MichaelHampton A volte questa non è un'opzione (credo), ad esempio: nginx richiede l'installazione di un modulo sorgente se si desidera aggiungere moduli di terze parti.
ChocoDeveloper

Risposte:


16

La posizione definita dal Filesystem Hierarchy Standard per conservare il codice sorgente è /usr/src. Suppongo che potresti anche usare /usr/local/src, in quanto è un po 'più descrittivo da dove proviene il software (cioè, l'hai costruito; la distribuzione non l'ha fatto).

Nota, tuttavia, che FHS in realtà menziona che il codice sorgente non dovrebbe essere creato da questa directory, probabilmente perché non dovresti compilare cose come root, quindi suppongo che dovresti spostare l'albero dei sorgenti lì dopo l'installazione. In pratica, tuttavia, non mi preoccupo; Tengo tutto ciò che costruisco ~/Code, che si trova su una partizione più spaziosa. Fondamentalmente, non esiste una convenzione ampiamente accettata; fai solo quello che funziona per te.

Dovresti anche controllare checkinstall , un piccolo software che crea un pacchetto rudimentale da un comando. (Probabilmente sarà nel repository della tua distribuzione.) Essenzialmente, invece di essere eseguito

sudo make install

faresti correre qualcosa del genere

sudo checkinstall make install

che ti interroga sul pacchetto che stai creando, guarda che make installinstalla tutto, quindi crea un pacchetto che può quindi essere installato e disinstallato in modo pulito con un gestore pacchetti. Credo che checkinstall possa creare pacchetti per sistemi basati su dpkg (Ubuntu, Debian, ecc.), Sistemi basati su RPM (Fedora, RHEL, ecc.) E sistemi basati su Slackware. Se stai eseguendo Arch, non preoccuparti di checkinstall; invece, considera l'utilizzo di un PKGBUILD.

Spero che aiuti!


+1 per menzionare i pacchetti. Quale penso sia la risposta necessaria (ma non chiesta).
Hennes,

Grazie! Sto usando checkinstall ora, sembra fantastico finora. Un'ultima domanda: non ho bisogno di mantenere il .deb, giusto? dpkg saprà disinstallarlo anche se non c'è più
ChocoDeveloper

È corretto. Tutti i gestori di pacchetti mantengono un elenco di file installati dal pacchetto, quindi è possibile eliminare il pacchetto creato dopo averlo installato.
trentatré

5

Non esiste un luogo designato per i file di origine; ognuno ha le proprie abitudini.

Tuttavia, considera queste tre opzioni:

  1. In root homedir (funziona, ma è attivo / che di solito è piuttosto piccolo).
  2. / usr / local / src / (o in realtà qualsiasi cosa sotto / usr / local /
  3. Installa tramite un pacchetto e usa il gestore pacchetti per disinstallarlo.

Per la manutenzione a lungo termine, consiglio vivamente l'opzione 3. Anche se devi creare i pacchetti da te (dalla fonte). Nel qual caso si arriva a: untar / configure / make / make package tramite una sintassi a seconda della scelta del pacchetto / pacchetto di installazione

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.