GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment télécharger des packages avec des dépendances localement dans Ubuntu, Debian, Linux Mint, Pop OS

Il y a quelque temps, nous avons discuté de comment installer des logiciels hors ligne dans Ubuntu . Dans ce guide, nous avons expliqué comment télécharger des packages dans un système compatible Internet et les installer dans un autre système disposant d'une connexion Internet lente ou inexistante. Dans ce didacticiel, nous verrons comment télécharger localement des packages avec des dépendances dans Ubuntu, Debian, Pop OS et d'autres systèmes basés sur DEB.

En utilisant cette méthode, nous pouvons télécharger un .deb package avec toutes les dépendances requises sans l'installer réellement. De cette façon, nous pouvons télécharger des packages à partir d'un système et les installer ultérieurement dans le même système lui-même ou dans tout autre système sans connexion Internet. Nous pouvons également télécharger des packages pour différents systèmes d'architecture. Par exemple, il est possible de télécharger les packages 32 bits à partir d'un système 64 bits et vice versa.

Télécharger des packages avec des dépendances localement dans Ubuntu

Nous pouvons le faire selon deux méthodes. J'ai testé ce guide sur les éditions de bureau Ubuntu 16.04 et 18.04 LTS. Cela a très bien fonctionné comme décrit ci-dessous.

Méthode 1 :

Il s'agit de la méthode la plus simple et directe que les autres méthodes indiquées ci-dessous.

Pour télécharger un package avec toutes les dépendances, sans les installer, exécutez simplement :

$ sudo apt-get install --download-only 

Par exemple, téléchargeons le Vim package avec toutes les dépendances requises, sans les installer, en utilisant la commande :

$ sudo apt-get install --download-only vim

Exemple de résultat :

Lecture des listes de packages... TerminéCréation de l'arborescence des dépendances Lecture des informations d'état... TerminéPackages suggérés :ctags vim-doc vim-scriptsLes NOUVEAUX packages suivants seront installés :vim0 mis à jour, 1 nouvellement installé, 0 à supprimer et 82 non mis à jour. Besoin d'obtenir 1 152 Ko d'archives. Après cette opération, 2 852 Ko d'espace disque supplémentaire seront utilisés. 1ubuntu1.1 [1 152 ko]Récupération de 1 152 ko en 3 s (372 ko/s)Téléchargement terminé et en mode téléchargement uniquement 

Comme vous le voyez dans la sortie ci-dessus, nous avons téléchargé le package Vim avec toutes les dépendances, mais nous ne l'avons pas réellement installé.

Tous les fichiers téléchargés seront enregistrés dans /var/cache/apt/archives répertoire.

Copiez simplement l'intégralité du dossier de cache sur n'importe quelle clé USB ou transférez-les via le réseau vers un système sur lequel vous souhaitez installer les packages.

Pour installer les packages téléchargés, accédez au dossier de cache et installez-les comme indiqué ci-dessous.

$ sudo dpkg -i *

Voir? C'est aussi simple que ça !

Cependant, cette méthode ne fonctionne que si le système que vous utilisez pour télécharger les packages n'a pas le package principal ou ses dépendances installés localement.

Si vous essayez de télécharger un package qui est déjà installé dans le même système lui-même, vous verrez une sortie comme ci-dessous.

$ sudo apt-get install --download-only vim Lecture des listes de packages... DoneBuilding de l'arborescence des dépendances Lecture des informations d'état... Donevim est déjà la version la plus récente (2:8.0.1453-1ubuntu1.3).0 mis à jour, 0 nouvellement installé, 0 à supprimer et 6 non mis à jour. 

Dans de tels cas, utilisez "apt-rdepends " pour télécharger tous les packages. Si apt-rdepends n'est pas encore installé, installez-le à l'aide de la commande :

$ sudo apt install apt-rdepends

Et puis téléchargez le package principal (c'est-à-dire Vim dans notre cas) ainsi que toutes les dépendances à l'aide de la commande :

$ apt download $(apt-rdepends vim | grep -v "^ ")

Cette commande téléchargera de manière récursive tous les packages requis.

Juste au cas où vous rencontriez une erreur comme ci-dessous :

E :Impossible de sélectionner la version candidate du paquet debconf-2.0 car elle n'a pas de candidat

Essayez plutôt cette commande :

$ apt-get download $(apt-rdepends vim | grep -v "^ " | sed 's/debconf-2.0/debconf/g')

Cette commande téléchargera Vim avec tous les packages nécessaires et les enregistrera dans le répertoire de travail actuel.

Pour installer tous les packages téléchargés, exécutez :

$ sudo dpkg -i *

Méthode 2 :

Tout d'abord, téléchargez les dépendances du package que vous souhaitez télécharger.

Pour afficher la liste de toutes les dépendances d'un package, par exemple Python , exécutez :

$ sudo apt-cache dépend de python

Exemple de résultat :

pythonPreDepends :python-minimalDepends :python2.7Depends :libpython-stdlibConflicts :Breaks :update-manager-coreSuggests :python-docSuggests :python-tkReplaces :python-dev

Téléchargeons le package python avec ses dépendances sur notre disque local.

Pour ce faire, créez d'abord un répertoire pour enregistrer les packages.

$ mkdir python

Allez dans le répertoire :

$ cd python

Et puis lancez :

$ for i in $(apt-cache depend python | grep -E 'Depends|Recommends|Suggests' | cut -d ':' -f 2,3 | sed -e s/'<'/''/ - e s/'>'/''/); faites sudo apt-get download $i 2>>errors.txt ; terminé

La commande ci-dessus téléchargera le package Python avec toutes les dépendances requises et les enregistrera dans le répertoire de travail actuel. Cette commande enregistrera également toutes les erreurs dans le fichier errors.txt fichier.

Voyons les fichiers téléchargés en utilisant 'ls ' commande :

$ ls

Exemple de résultat :

errors.txtlibpython-stdlib_2.7.11-1_amd64.debpython2.7_2.7.11-7ubuntu1_amd64.debpython-doc_2.7.11-1_all.debpython-minimal_2.7.11-1_amd64.debpython-tk_2.7.11-2_amd64.deb

Comme vous le voyez dans la sortie ci-dessus, le package python avec toutes ses dépendances a été téléchargé.

Copiez-les simplement sur votre clé USB et installez les packages Python sur n'importe quel système hors ligne, comme indiqué ci-dessous.

Montez le lecteur USB, accédez à l'emplacement où vous avez monté le lecteur et exécutez la commande suivante pour installer Python.

$ sudo dpkg -i *

Lecture suggérée : 

  • Comment télécharger un package RPM avec toutes les dépendances dans CentOS

Télécharger localement des packages avec des dépendances pour une architecture spécifique

Vous remarquerez peut-être que la commande ci-dessus a téléchargé les packages 64 bits. C'est parce que je les télécharge depuis le système Ubuntu 64 bits. Et si vous souhaitez télécharger des packages pour les systèmes arch 32 bits ? C'est aussi possible !

Tout d'abord, activez l'architecture souhaitée dans votre système Ubuntu à l'aide de la commande :

$ sudo dpkg --add-architecture i386

Si vous n'ajoutez pas l'architecture, vous obtiendrez le message d'erreur suivant lorsque vous essayez de télécharger les packages.

E :Aucun paquet trouvé

Après avoir activé l'architecture de votre choix, exécutez la commande suivante pour télécharger des packages spécifiques liés à l'architecture.

$ pour i dans $(apt-cache dépend de python :i386 | grep -E 'Dépend|Recommande|Suggère' | couper -d ':' -f 2,3 | sed -e s/'<'/''/ -e s/'>'/''/); faites sudo apt-get download $i 2>>errors.txt ; terminé

Comme vous le voyez dans la sortie ci-dessus, j'ai ajouté l'architecture 'i386 ' avec 'apt-cache ' commande.

Exemple de résultat :

Obtenir :1 http://in.archive.ubuntu.com/ubuntu xenial/main i386 python-minimal i386 2.7.11-1 [28.2 kB]Récupéré 28.2 kB en 1s (25.8 kB/s) Obtenir :1 http://in.archive.ubuntu.com/ubuntu xenial/main i386 python2.7 i386 2.7.11-7ubuntu1 [220 ko]Récupéré 220 ko en 1s (116 ko/s) Obtenir :1 http://in.archive.ubuntu.com/ubuntu xenial/main i386 libpython-stdlib i386 2.7.11-1 [7 664 B]Récupéré 7 664 B en 0 (13,3 ko/s) Obtenir :1 http://in.archive.ubuntu.com/ubuntu xenial/main i386 python-tk i386 2.7.11-2 [28.0 kB]Récupéré 28.0 kB en 1s (24.8 kB/s)

Laissez-nous vérifier les packages téléchargés.

$ ls

Exemple de résultat :

errors.txtlibpython-stdlib_2.7.11-1_i386.debpython2.7_2.7.11-7ubuntu1_i386.debpython-minimal_2.7.11-1_i386.debpython-tk_2.7.11-2_i386.deb

Voir? La commande ci-dessus n'a téléchargé que les packages 32 bits.

Vous savez maintenant comment télécharger des packages avec des dépendances dans les systèmes Ubuntu. Ces méthodes sont les mêmes pour tous les systèmes basés sur DEB.

Lire connexe :

  • Comment télécharger les dépendances récursives d'un paquet dans Ubuntu
  • Comment simuler des commandes Linux sans rien changer au système

Ubuntu
  1. Comment installer Pip sur Ubuntu 18.04, Debian 9 et Linux Mint 19

  2. Comment installer Firefox 10 sur Ubuntu 11.10 / Linux Mint 12

  3. Comment configurer Android SDK 4.0.3 avec NetBeans IDE 7.1 sur Linux Mint 12 / Ubuntu 11.10

  4. Comment installer Opera 16.1 sur Ubuntu 11.10 / Linux Mint 12

  5. Comment installer PostgreSQL 9.1.3 avec pgAdmin3 sur Ubuntu 11.10 / Linux Mint 12

Comment répertorier tous les packages pouvant être mis à niveau dans Ubuntu, Debian et Mint

Comment installer NetBeans IDE 12.4 dans Ubuntu, Debian et Linux Mint

Téléchargez les packages Spotify Deb à installer sur Ubuntu, Debian et Linux Mint

Comment installer NetBeans IDE 12 dans Debian, Ubuntu et Linux Mint

Comment installer Wine 5.0 sur Debian, Ubuntu et Linux Mint

Comment supprimer les paquets cassés dans Ubuntu Linux