Hin und wieder kommt es vor, dass man für ein (Debian basiertes) Linux-System, welches selbst keinen Zugang zum Internet hat, deb-Pakete aus den Repositories benötigt, um spezielle Software zu installieren.
Da es oftmals etwas mühselig ist, die entsprechenden Dateien per Hand in einem Repository zu finden, habe ich ein kleines Bash-Skript erstellt, welches einem die gesamte Arbeit abnimmt und die nötigen deb-Dateien herunterlädt. Die heruntergeladenen Dateien können anschließend auf das Zielsystem kopiert und dort installiert werden.
Das Skript lädt zuerst die entsprechenden Index-Dateien des Repositories herunter und entpackt diese. Mit Hilfe dieser Index-Dateien wird dann der Download-Link des entsprechenden Paketes ermittelt.
Optional ist es zudem möglich, alle Abhängigkeiten automatisch zu ermitteln und mit herunter zu laden.
Download des gesamten Skripts:
1 | wget https://github.com/crycode-de/deb-downloader/raw/master/deb-downloader.sh |
Aufruf des Skripts
Dem Skript müssen bestimmte Argumente mitgegeben werden.
Benötigte Argumente
-m <Mirror URL>
Die URL des Spiegelservers vom Repository.-d <Dist>
Codename der Distribution.-p <Paket>
Name des Paketes, das heruntergeladen werden soll.
Optionale Argumente
-c <Component>
Komponente(n) im Repository. Standard istmain
.-a <Architektur>
Architektur des Prozessors des Zielsystems. Standard istamd64
.-D
Automatische Erkennung und Download aller Abhängigkeiten.-t
Testlauf. Es werden nur die Index-Dateien des Repositories heruntergeladen und gegebenenfalls die Abhängigkeiten ermittelt.-h
Anzeigen der Hilfe.
Beispiele
Download des Paketes nano
für Ubuntu jammy
(22.04).
1 | ./deb-downloader.sh -m http://archive.ubuntu.com/ubuntu/ -d jammy -p nano |
Download des Paketes inkscape
für Ubuntu mantic
(23.10) unter Verwendung der universe
Komponente für i386
Systeme.
1 | ./deb-downloader.sh -m http://archive.ubuntu.com/ubuntu/ -d mantic \ |
Download des Paketes ntp
für Raspberry Pi OS bookworm
unter Verwendung der normalen Raspberry Pi OS Repository Einstellungen inklusive aller Abhängigkeiten.
1 | ./deb-downloader.sh -m http://raspbian.raspberrypi.com/raspbian/ -d bookworm \ |
Lizenz
Lizenziert unter GPL Version 2
Copyright (c) 2018 Peter Müller