Domanda

Quando sono in assistente del mio reparto, non riesco a utilizzare i comandi come "apt-get install nethack". Devo costruire l'nethack dai file binari per farlo funzionare, almeno così mi è stato detto. Non riesco a capire il motivo. Perché ho bisogno di costruire le cose da binari? Perché è l'uso dei comandi, come ad esempio "apt-get", proibito? Perché non avere accesso come root per costruire dai binari?

È stato utile?

Soluzione

Quando si compila un programma dai sorgenti, si può dare il '--prefix = ~ /'. Questo fa sì che per installare relativa alla propria home directory (programmi in modo binario di solito finiscono in '~ / bin', le pagine man in '~ / man', ecc). Questo non pone alcun problema, perché avete già il permesso di scrivere qui.

apt-get d'altra parte installa i pacchetti nel file system globale ( '/ bin /', '/ usr / bin /', etc), che possono avere un impatto altri utenti e così, giustamente, richiedono l'accesso amministrativo.

Se si desidera installare qualche programma è possibile utilizzare il comando

apt-get source app-name

Questo di lavoro, anche se non siete utenti root, poiché solo recuperare il codice sorgente per l'app-name e metterlo nella directory corrente, che è più facile che dover rintracciare l'origine e v'è una maggiore possibilità di farlo funzionare, dal momento che si scarica la versione che dovrebbe funzionare sul sistema.

In alternativa si dovrebbe bug vostro amministratore di sistema per installare i programmi che servono, dal momento che è il suo lavoro (e se ne avete bisogno, è probabile che il resto della tua squadra fa troppo).

Altri suggerimenti

apt-get è un comando a livello di sistema che installa i pacchetti per tutti gli utenti.

Se si scarica e compila, si sta creando solo "copie" locali dei file binari, non a livello di sistema. Se si è tentato di completare il processo di installazione con make install questo sarebbe molto probabilmente fallire perché non si dispone di privilegi sufficienti per installare il programma per l'accesso di tutti gli utenti (stessa ragione non è possibile eseguire apt-get install)

A causa apt-get installerà un sistema ampio programma.

Le posizioni alle quali apt-get scrive installati i file (/ bin, / usr / bin, ...) sono limitati a root l'accesso. Immagino che quando si genera dalla fonte che non stai eseguendo la fase di installazione del bulid. Si sta andando ad avere bisogno di impostare un prefisso per l'installazione in modo tale che i pacchetti di finire da qualche parte si può scrivere. Questo thread parla un po 'su come impostare i prefissi per apt-get e probabilmente si vorrà impostare il prefisso a qualcosa come

~/software/

e quindi aggiungere le directory bin risultanti al PATH.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top