Come creare un'unità USB come repository locale


26

Ho copiato la cartella "archives" (/ var / cache / apt / archives) da un altro computer che è stato completamente aggiornato e aveva alcuni pacchetti che desidero. Qualcuno può guidarmi come aggiungere la mia unità USB nell'elenco dei repository in modo da poter installare quei pacchetti da esso?

Grazie.


Risposte:


17

Dovresti creare un repository in una directory locale e puntare una file:voce URI alle tue fonti APT (vedi SPECIFICHE URI in man sources.list):

deb file:/home/user/repository

Per far funzionare apt, è necessario creare un elenco di pacchetti (Packages.gz) da utilizzare per APT. Questo è spiegato in dettaglio qui . Nel tuo caso, dovrebbe essere abbastanza semplice. Vi rimando alla sezione "Repository Trivial" del manuale. Dovrebbe essere facile come cambiare, diciamo, / home / user / repository ed eseguirlo

dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz

Quindi dopo un apt-get update, i pacchetti dovrebbero diventare disponibili. Forse se vuoi che questa fonte abbia la precedenza su altre, devi assegnarle una priorità più alta; per questo vedi le pagine del manuale APT.


nb la directory locale in questione può ovviamente essere anche un'unità USB, come / media / usbdrive / repository
loevborg

Ho scritto uno script quick-and-dirty che dimostra un repository locale quick-and-dirty: gist.github.com/linuxluser/3af5fd16dde41b82972a
Dave,

1
Ho appena ricevutodpkg-scanpackages: error: binary directory binary not found
Evan Carroll il

6

Non penso che ci sia un modo per aggiungerlo come repository, ma puoi usarlo per installare i pacchetti copiando il contenuto nel tuo / var / cache / apt / archives. Per fare ciò, premi alt-f2, inserisci gksudo nautilused esegui la copia. Una volta fatto, assicurati di chiudere la finestra del file manager perché non è una buona idea usare il file manager come root tranne che per le attività che lo richiedono assolutamente.

Per visualizzare / installare questi pacchetti, eseguire Sistema -> Amministrazione -> Gestore pacchetti Synaptic, fare clic sul pulsante "Origine" e selezionare "Locale" dall'elenco.

In futuro, è meglio utilizzare un programma chiamato aptoncd che può essere installato dai repository. Può essere utilizzato per creare un'immagine CD che può essere aggiunta come sorgente software. Questa immagine può essere trasportata su una chiavetta USB.

Il modo più semplice per aggiungere l'immagine come sorgente software è masterizzarlo su un CD / DVD. Devi quindi andare su Sistema -> Amministrazione -> Sorgenti software, fare clic su "Altro software" e fare clic su "Aggiungi CD-ROM ...".

Se si desidera utilizzare l'immagine ISO come fonte software senza masterizzarla, il processo sarà un po 'più complicato. Dovrai aprire un terminale Applicazioni -> Accessori -> Terminale ed eseguire questi comandi:

sudo mkdir /aptoncd-mountpoint
sudo mount /media/USB/aptoncd.iso ~/aptoncd-mountpoint -oloop
sudo apt-cdrom -d=/aptoncd-mountpoint add

(fonte: http://www.debianhelp.org/node/10486 )

Se vuoi scaricare pacchetti su un computer (Linux, Mac o Windows) e installarli su un sistema Ubuntu, puoi usare keryx .


1
Non penso sia accurato. Esiste un tipo di file: // URI. Realizzare un'immagine iso è davvero troppo complicato per questo semplice compito.
loevborg,

1
Non funziona Cerca ancora di montare / dev / sr0.
int_ua,

1

Se si desidera utilizzare un'immagine CD / USB / ISO ufficiale da Ubuntu come repository, è possibile aggiungere questo in /etc/apt/sources.list:

deb file:/media/usb xenial main restricted

per prima cosa, devi montare la tua immagine in / media / usb (per esempio) e cambiare xenialper la tua versione di immagine.

L'edizione server contiene solo maine restricted, mentre la versione desktop contiene inoltre universee multiverse.

Il mio caso personale:

Dopo aver installato Ubuntu (in un server senza internet), ho dimenticato di selezionare la casella "Server OpenSSH" in modo che l'installazione sia terminata senza di essa. Ho provato a farlo, dpkg -i openssh....debma poiché richiede diverse dipendenze, è stato meglio farlo in modo appropriato. Alla fine, la risposta selezionata in questa pagina mi ha aiutato a scoprire come usare la mia immagine come repository e ha funzionato senza problemi.

Questo può essere utile se stai cercando un modo per eseguire il downgrade di un pacchetto a una versione specifica inclusa in un'immagine.


0

Hai copie di backup dei file del pacchetto (che hai scaricato su un altro computer) nell'unità USB. In questa situazione, basta creare una cartella nella directory home, per esempio ARCHbackUP. Copia tutti i file da USB in questa cartella e segui i seguenti codici:

cd ~
sudo chown -R username:username ARCHbackUP/.
genisoimage -o ARCHbackUP.iso -R -J ~/ARCHbackUP
mv -u ./ARCHbackUP.iso ~/
sudo apt-get clean #cleans the /var/cache/apt/archives directory.
sudo mkdir /mnt/load_iso
sudo mount -o loop ARCHbackUP.iso /mnt/load_iso #mounts the iso archive.
cd /mnt/load_iso #taking you in the mounted directory.
sudo cp -r -n ./. /var/cache/apt/archives
cd ~
sudo umount /mnt/load_iso #unmount the mounted iso archive.
sudo rmdir /mnt/load_iso #deletes the mount point load_iso.

Ora tutti i file del pacchetto e gli aggiornamenti che hai scaricato si trovano nel apt-get installpercorso di ricerca del tuo sistema. Ora apri il tuo terminale ed emetti sudo apt-get install package_nameper installare nuovi pacchetti o sudo apt-get upgradeper aggiornare i pacchetti installati offline.


0

È possibile personalizzare un DVD da soli, fare riferimento a http://www.hiroom2.com/2016/08/12/ubuntu-16-04-install-package-from-dvd/ per i dettagli.

ps. Ho provato questo metodo sul server Ubuntu 16.04 (in quanto supporta il software RAID) e ho installato Ubuntu-Desktop con un DVD personalizzato.


Benvenuto in AskUbuntu! Ti preghiamo di considerare di espandere la tua risposta, poiché le risposte solo link non sono di grande qualità.

0

Stavo davvero cercando la stessa cosa per Debian Jessie, ma sono inciampato su questo sito e ho trovato questo thread più utile di altri. Ecco cosa potrebbe funzionare per alcuni colleghi ubuntu / debian-variant.

Innanzitutto, devi montare la tua USB nel tuo file manager (probabilmente, Nautilus). Di solito si monta automaticamente con le impostazioni predefinite.

Come suggerito da @lepe, ho modificato la /etc/apt/sources.list e ho aggiunto la seguente riga dopo aver frugato:

deb file:/media/your_username/DEBIAN\ 8_1_/dists/jessie jessie main contirb

Ha funzionato come un fascino. Spero che questo aiuti qualcuno anche se questo post è un po 'vecchio.

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.