Come posso installare un pacchetto senza accesso root?

100

Ho nessun accesso root su questa macchina.

Vorrei sapere se c'è un modo in cui può scaricare i pacchetti di Ubuntu e installarli come non-root?

Probabilmente nel mio ~/bin o ~/usr/share o qualcosa del genere? Funzionerebbe?

    
posta Weboide 29.07.2010 - 13:17

3 risposte

93

Apt non lo supporta direttamente, ma ci sono modi per farlo.

Uno usa schroot per creare un chroot non root. Questo è un po ' processo coinvolto , ma si dovrebbe essere in grado di trovare la guida della comunità per il numero di sviluppatori che configurano gli ambienti chroot per la compilazione codice.

Il secondo modo che conosco è installare da un pacchetto .deb. Potresti riuscire a scaricarlo da un sito web o se è presente nei repository di Ubuntu che puoi scaricare con.

apt-get download package

Sostituisci package con il nome del pacchetto

Una volta che hai chiamato il tuo file deb dpkg direttamente dalla riga di comando. Il seguente esempio installerà package.deb nella tua directory home.

dpkg -i package.deb --force-not-root --root=$HOME 

Lo svantaggio di usare dpkg come questo è che i messaggi di errore sono probabilmente criptici; dpkg non risolve automaticamente le dipendenze o crea la struttura di directory che si aspetta.

Infine, è possibile utilizzare il comando apt-get source per recuperare l'origine del pacchetto e configurarlo per l'installazione locale. Di solito questo assomiglia a:

apt-get source package
cd package
./configure --prefix=$HOME
make
make install

Lo svantaggio di questo approccio è che è necessario l'ambiente di sviluppo disponibile perché questo approccio funzioni, e potresti trovarti a compilare dozzine di pacchetti per risolvere tutte le dipendenze.

Modifica

Siccome dpkg -i non funziona (vedi commenti), suggerisco questa alternativa:

dpkg -x package.deb dir

Questo estrae il pacchetto .deb in dir. Quindi è possibile esportare il PERCORSO in cui si trova il binario. Finché sono installate tutte le dipendenze del binario, dovrebbe funzionare normalmente.

    
risposta data jbowtie 29.07.2010 - 13:56
16

Presumo che tu voglia installare jedit . Per prima cosa devi trovare il pacchetto e scaricarlo. Prendo il file deb da qualche mirror e apri una console / terminale:

  1. mkdir /tmp/jedit && cd /tmp/jedit - Crea un nuovo testo in tmp e si trasforma in esso.
  2. wget http://mirrors.kernel.org/ubuntu/pool/universe/j/jedit/jedit_4.3.1.dfsg-0ubuntu1_all.deb - Scarica il pacchetto
  3. ar x jedit_4.3.1.dfsg-0ubuntu1_all.deb o, facile da digitare, ar x *.deb - questo estrae il contenuto del file
  4. tar xvzf data.tar.gz - il file data.tar.gz ha tutto il materiale necessario per l'esecuzione del software
  5. usr/bin/jedit apre l'editor
  6. fatto: -)

Puoi spostare i file in qualche punto della tua directory home ed eseguirli da lì.

    
risposta data qbi 29.07.2010 - 13:32
9

Ho scritto un programma chiamato JuJu che fondamentalmente consente di avere una distribuzione linux veramente piccola (contenente solo il gestore dei pacchetti) all'interno del tuo $ HOME / .juju directory.

Permette di avere il proprio sistema personalizzato all'interno della directory home accessibile tramite proot e, quindi, è possibile installare qualsiasi pacchetto senza privilegi di root. Funzionerà correttamente con tutte le principali distribuzioni Linux, l'unica limitazione è che JuJu può essere eseguito sul kernel linux con la versione minima consigliata 2.6.32.

Ad esempio, dopo aver installato JuJu per installare jedit:

$>juju -f
(juju)$> pacman -S jedit
(juju)> jedit
    
risposta data user967489 02.11.2014 - 19:17

Leggi altre domande sui tag