So erstellen Sie ein USB-Laufwerk als lokales Repository

26

Ich habe den Ordner "archives" (/ var / cache / apt / archives) von einem anderen Computer kopiert, der vollständig aktualisiert wurde und einige Pakete hatte, die ich haben möchte. Kann mir jemand erklären, wie ich mein USB-Laufwerk in die Repository-Liste aufnehmen kann, damit ich diese Pakete von dort aus installieren kann?

Vielen Dank.

Rojan
quelle

Antworten:

17

Sie sollten ein Repository in einem lokalen Verzeichnis erstellen und einen file:URI-Eintrag auf Ihre APT-Quellen verweisen (siehe URI-SPEZIFIKATION in man sources.list):

deb file:/home/user/repository

Damit apt funktioniert, müssen Sie eine Liste von Paketen (Packages.gz) erstellen, die APT verwenden kann. Dies wird hier ausführlich erläutert . Für Ihren Fall sollte es ganz einfach sein. Ich verweise Sie auf den Abschnitt "Trivial Repositories" des Handbuchs. Es sollte so einfach sein, wie zum Beispiel zu / home / user / repository zu wechseln und auszuführen

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

Nach a apt-get updatesollten die Pakete verfügbar sein. Wenn Sie möchten, dass diese Quelle Vorrang vor anderen Quellen hat, müssen Sie der Quelle eine höhere Priorität zuweisen. Siehe hierzu die APT-Manualseiten.

Loevborg
quelle
nb das fragliche lokale verzeichnis kann natürlich auch ein usb-
stick sein
Ich habe ein schnelles und schmutziges Skript geschrieben, das ein schnelles und schmutziges lokales Repo demonstriert
Dave,
1
Ich dpkg-scanpackages: error: binary directory binary not found
Evan Carroll
6

Ich glaube nicht, dass es eine Möglichkeit gibt, dies als Repository hinzuzufügen, aber Sie können es verwenden, um die Pakete zu installieren, indem Sie den Inhalt in Ihr / var / cache / apt / archives kopieren. Drücken Sie dazu Alt-F2, geben Sie ein gksudo nautilusund machen Sie die Kopie. Stellen Sie anschließend sicher, dass Sie das Dateimanagerfenster schließen, da es keine gute Idee ist, den Dateimanager als Root zu verwenden, außer für die Aufgaben, die dies unbedingt erfordern.

Um diese Pakete anzuzeigen / zu installieren, führen Sie System -> Administration -> Synaptic Package Manager aus, klicken Sie auf die Schaltfläche 'Origin' und wählen Sie 'Local' aus der Liste.

In Zukunft ist es besser, ein Programm namens aptoncd zu verwenden, das über die Repositorys installiert werden kann. Hiermit kann ein CD-Image erstellt werden, das als Softwarequelle hinzugefügt werden kann. Dieses Bild kann auf einem USB-Stick transportiert werden.

Der einfachste Weg, das Image als Software-Quelle hinzuzufügen, besteht darin, es auf eine CD / DVD zu brennen. Gehen Sie dann zu System -> Administration -> Software Sources, klicken Sie auf "Other Software" und klicken Sie auf "Add CD-ROM ...".

Wenn Sie das ISO-Image als Softwarequelle verwenden möchten, ohne es zu brennen, ist der Vorgang etwas komplizierter. Sie müssen ein Terminal öffnen, Programme -> Zubehör -> Terminal und die folgenden Befehle ausführen:

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

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

Wenn Sie Pakete auf einen Computer (Linux, Mac oder Windows) herunterladen und auf einem Ubuntu-System installieren möchten , können Sie keryx verwenden .

dv3500ea
quelle
1
Ich halte das nicht für richtig. Es gibt einen Datei: // URI-Typ. Ein ISO - Image zu machen ist wirklich viel zu für diese einfache Aufgabe kompliziert.
Loevborg
1
Es funktioniert nicht Es wird weiterhin versucht, / dev / sr0 zu mounten.
int_ua
1

Wenn Sie ein offizielles CD / USB / ISO-Image von Ubuntu als Repository verwenden möchten, können Sie dies hinzufügen in /etc/apt/sources.list:

deb file:/media/usb xenial main restricted

Zuerst müssen Sie Ihr Image in / media / usb mounten (zum Beispiel) und xenialfür Ihre Image-Version ändern .

Die Server Edition enthält nur mainund restricted, während die Desktop-Version zusätzlich universeund enthält multiverse.

Mein persönlicher Fall:

Nach der Installation von Ubuntu (auf einem Server ohne Internet) habe ich vergessen, das Kästchen "OpenSSH-Server" anzukreuzen, damit die Installation ohne das Kästchen beendet wird. Ich habe versucht, dpkg -i openssh....debaber da es mehrere Abhängigkeiten erfordert, war es besser, es angemessen zu tun. Am Ende half mir die ausgewählte Antwort auf dieser Seite dabei, herauszufinden, wie ich mein Image als Repository verwende, und es funktionierte ohne Probleme.

Dies kann hilfreich sein, wenn Sie nach einer Möglichkeit suchen, ein Paket auf eine bestimmte, in einem Image enthaltene Version herunterzustufen.

Lepe
quelle
0

Sie haben Sicherungskopien der Paketdateien (die Sie auf einem anderen Computer heruntergeladen haben) auf Ihrem USB-Laufwerk. In dieser Situation einfach einen Ordner in Ihrem Home - Verzeichnis erstellen, sagen ARCHbackUP. Kopieren Sie alle Dateien von USB in diesen Ordner und befolgen Sie die folgenden Codes:

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.

Jetzt befinden sich alle heruntergeladenen Paketdateien und Updates im apt-get installSuchpfad Ihres Systems. Öffnen Sie nun Ihr Terminal und führen Sie ein Problem aus sudo apt-get install package_name, um neue Pakete zu installieren oder sudo apt-get upgradeinstallierte Pakete offline zu aktualisieren.

Koushik
quelle
0

Sie können eine DVD selbst anpassen. Weitere Informationen finden Sie unter http://www.hiroom2.com/2016/08/12/ubuntu-16-04-install-package-from-dvd/ .

ps. Ich habe diese Methode auf Ubuntu Server 16.04 ausprobiert (da es Software-RAID unterstützt) und Ubuntu-Desktop mit angepasster DVD installiert.

Hagelschlag
quelle
Willkommen bei AskUbuntu! Bitte erwägen Sie, Ihre Antwort zu erweitern, da Antworten nur über Links nicht von hoher Qualität sind.
0

Ich war wirklich auf der Suche nach dem gleichen Thema für Debian Jessie, bin aber über diese Site gestolpert und fand diesen Thread hilfreicher als andere. Hier ist, was für einige Ubuntu / Debian-Variante Fellows funktionieren könnte.

Zunächst müssen Sie Ihren USB-Stick in Ihrem Dateimanager (wahrscheinlich Nautilus) einbinden. Normalerweise wird es jedoch automatisch mit den Standardeinstellungen gemountet.

Wie von @lepe vorgeschlagen, habe ich die /etc/apt/sources.list bearbeitet und nach einigem Herumspielen die folgende Zeile hinzugefügt:

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

Es wirkte wie ein Zauber. Hoffe, das hilft jemandem, obwohl dieser Beitrag ein bisschen alt ist.

KontemplativeCyborg
quelle