it-swarm.dev

Comment puis-je installer des logiciels ou des packages sans Internet (hors ligne)?

J'ai un ami qui a un ordinateur qui n'est pas connecté à Internet. Est-il possible d'installer le logiciel hors ligne facilement?

252
akshatj

Départ Keryx ; c'est un gestionnaire de référentiel hors ligne.

Comment ça marche? Il vous permet de télécharger les mises à jour et les nouveaux programmes (avec dépendances) sur votre clé .

Son interface est similaire à synaptic, mais elle fonctionne à partir d’une clé USB (elle n’a pas besoin d’être installée). Malheureusement, l'interface graphique a besoin de wxwidgets, qui ne sont pas préinstallés sur Ubuntu (ils sont multi-plateformes et installables à partir de ici et du référentiel Ubuntu ici ). Il ne peut installer des logiciels que sur un système Ubuntu, mais vous pouvez télécharger les mises à jour ou les nouveaux packages dans n’importe quel système Linux, Windows ou OS X.

Ici vous pouvez trouver n tutoriel .

Un autre didacticiel détaillé, étape par étape, est disponible dans cette réponse .

Launchpad héberge également fichiers téléchargeables .

Une capture d'écran:

Screenshoot

128
Javier Rivera

Un rapide bidouillage

Un hack rapide consiste à copier tous les paquets que vous avez téléchargés pour votre installation sur sa machine ( instructions détaillées ici ). Les fichiers .deb sont stockés dans /var/cache/apt/archives, puis dans l’autre ordinateur de lancement Synaptic et sélectionnez File -> Add Package Downloaded, puis effectuez une recherche dans le dossier dans lequel vous avez ouvert et ouvrez les fichiers. tout accepter (ou installer depuis un terminal à l’aide de la commande Sudo dpkg -i DEB_PACKAGE_NAME).

NOTE:
Cela suppose que votre gestionnaire de paquets n'est pas configuré pour supprimer les paquets immédiatement après l'installation. Cela suppose également que vous utilisez la même version d’Ubuntu (10.10, 12.04, etc.) et la version d’architecture (32b ou 64b) .


Un dépôt de DVD

Si vous souhaitez disposer des derniers correctifs de bogues et des derniers correctifs de sécurité, jetez un œil à ce tutoriel , qui couvre la création de votre propre référentiel de DVD.

57
jr0cket

Un référentiel USB

Si vous avez une clé USB de taille correcte - en supposant environ 4 à 8 Go (ou un disque dur externe), vous pouvez configurer une copie personnalisée du référentiel Ubuntu et le configurer en tant que référentiel local, comme indiqué dans la section AptGet/Offline/Repository sur help.ubuntu.com.

Pour obtenir les fichiers de package réels (les fichiers .deb), je suggère d'utiliser apt-mirror.

Le package apt-mirror vous aidera à créer un miroir personnalisé qui devrait être plus petit que les 30 Go du référentiel complet. Installez le paquet:

Sudo apt-get install apt-mirror

et éditer son fichier de configuration

gksudo gedit /etc/apt-mirror/mirror.list

ou depuis Ubuntu 14.04

gksudo gedit /etc/apt/mirror.list

Incluez uniquement les sections du référentiel que vous souhaitez. Voici un exemple simple qui copie les fichiers binaires .deb de toutes les 4 sections (principale, restreinte, univers et multivers) ainsi que les dernières corrections de bugs.

# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#
set base_path    /tmp/ubuntumirror
#

## Repositories to copy from - 

## use a mirror so you don't overload the main server!!!

# Lucid binaries - no source files
deb http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse


## Clean up older .deb files no longer in the archive
clean http://archive.ubuntu.com/ubuntu

Il est estimé que vous aurez besoin d'environ 15 Go d'espace libre pour les 4 sections, sans la source.

J'ai mis le chemin pour que tous les fichiers .deb soient /tmp, assurez-vous de disposer de suffisamment d'espace pour que votre disque dur ne soit pas saturé (si votre disque dur se remplit et que votre ordinateur se bloque, /tmp doit être effacé par un redémarrage) .

Si vous souhaitez uniquement les fichiers principaux, supprimez les noms restreint, univers et multivers du fichier de configuration.

Si vous utilisez une architecture différente (vous avez 64 bits, mais votre ami en a 32 bits), ajoutez ce qui suit au début de la configuration mirror.list fichier:

set defaultarch i386

Une fois que vous avez la configuration de apt-mirror que vous voulez, lancez apt-mirror et faites quelque chose d’amusant ou de changement de vie, car il faudra des heures, voire des jours, pour obtenir le référentiel (en fonction de votre connexion et du miroir Ubuntu que vous utilisez).

Une fois que vous avez les fichiers .deb, copiez-les sur votre clé USB (ou votre disque dur externe) et configurez le référentiel local conformément à l'article mentionné précédemment.

Testez-le avant de le porter à votre ami!

40
jr0cket

J'utilise apt-get avec l'option "--print-uris" pour le faire. J'ajoute aussi "-qq" pour que ce soit silencieux.

Utilisez sed pour supprimer les caractères supplémentaires ajoutés à certains noms de fichiers (quelque chose comme 3% 2a) et pour obtenir l’url, le nom du fichier et la somme md5 des fichiers. Utilisez wget pour télécharger les fichiers. Utilisez md5sum pour vérifier si les fichiers sont téléchargés correctement.

Vous pouvez utiliser ceci pour créer un script Shell pour Linux ou Mac OS (remplacez ".cmd" dans les commandes en .sh et faites "chmod a + x (nom de fichier) pour ajouter l'autorisation d'exécuter le script) ou un fichier de commandes de commande Windows. et un fichier MD5Sum pour vous assurer que les fichiers sont téléchargés correctement.

Les commandes

Créer un script:

Sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd

Exemples:

Sudo apt-get install anjuta --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install-anjuta.cmd
Sudo apt-get upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > upgrade.cmd
Sudo apt-get dist-upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > dist-upgrade.cmd

Créez un fichier md5sum:

Sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

Exemples:

Sudo apt-get install anjuta --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
Sudo apt-get upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt
Sudo apt-get dist-upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4  .\/\2/p" > md5sum.txt

Si vous utilisez ce système d’exploitation pour télécharger des fichiers, vous avez besoin de md5sum pour Windows.


Créez un script pour télécharger les listes de référentiels:

Sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd

Vérification des sommes MD5

Vous pouvez les ajouter à la fin des scripts pour vérifier md5sum:

Linux:

md5sum --quiet -c md5sum.txt

Windows (utilise l’ancien md5sum, ne prend pas en charge --quiet):

md5sum -c md5sum.txt

Pour ajouter automatiquement au script:

echo -e "md5sum -c md5sum.txt\npause" >> script.cmd

Installation de fichiers de liste (commande de mise à jour)

Exécutez ces commandes sur l'ordinateur cible.

Vous devez utiliser bunzip2 pour extraire les fichiers de la liste du référentiel:

bunzip2 *.bz2

Puis copier dans le dossier de liste (le dossier actuel ne contient que des fichiers de liste):

Sudo cp * /var/lib/apt/lists/

Combinés ci-dessus (le dossier actuel peut contenir d'autres fichiers):

for listfile in `ls *.bz2`; do bunzip2 $listfile; Sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done

Téléchargements plus rapides

Si vous souhaitez accélérer le téléchargement des fichiers, essayez d’Axel.

Remplacez wget -c ... -O ... par axel ... -o ....

Hiérarchie des dossiers (téléchargement de fichiers sous Windows)

Je crée habituellement un dossier comme celui-ci:

  • apt-get /
    • poubelle/
      • msys-1.0.dll
      • msys-intl-8.dll
      • wget.exe
      • msys-iconv-2.dll
      • md5sum.exe
      • libeay32.dll
      • libintl3.dll
      • libssl32.dll
      • libiconv2.dll
    • mettre à jour/
      • update.cmd
      • md5sum.txt
    • installer/
      • install-foo.cmd
      • install-bar.cmd
      • upgrade.cmd
      • md5sum.txt

Puis changez wget dans les lignes ci-dessus en ..\\bin\\wget.exe, md5sum en ..\\bin\\md5sum.exe, etc.

Cela séparera les fichiers * .deb et les fichiers de liste dans des dossiers différents.

Mise à jour de votre système

  1. Démarrer l'ordinateur cible qui utilise Ubuntu
  2. Créer un script pour la mise à jour
  3. Démarrer sur un ordinateur avec une connexion Internet
  4. Exécutez update.sh (pour Linux ou Mac OS) ou update.cmd (Windows)
  5. Retourner à l'ordinateur cible
  6. Installer les fichiers de la liste
  7. Créez un script pour upgrade/dist-upgrade (ajoutez les commandes md5sum à la fin)
  8. Retour à l'ordinateur avec connexion internet
  9. Exécutez upgrade.sh/dist-upgrade.sh (Linux ou Mac OS) ou upgrade.cmd/dist-upgrade.cmd (Windows)
  10. Retourner à l'ordinateur cible
  11. Copier les fichiers * .deb dans le cache: Sudo cp *.deb /var/cache/apt/archives/
  12. Exécuter: Sudo apt-get upgrade ou Sudo apt-get dist-upgrade

Téléchargez les exécutables pour Windows

Wget pour Windows: http://gnuwin32.sourceforge.net/packages/wget.htm

md5sum pour Windows: http://gnuwin32.sourceforge.net/packages/coreutils.htm ou http://www.etree.org/cgi-bin/counter.cgi/software /md5sum.exe

Vous pouvez également utiliser celles de MinGW , qui sont ce que j'utilise. Vous avez seulement besoin de wget.exe, md5sum.exe et des bibliothèques partagées nécessaires. Consultez la section "Hiérarchie des dossiers".

Remarques

  • Je ne suis pas tout à fait sûr que toutes les commandes ci-dessus fonctionneront, car je ne les utilise pas depuis un mois. En particulier la commande update, que je n'ai pas testée aujourd'hui.
  • Pour voir facilement les résultats des commandes, ajoutez une ligne "pause" à la fin des scripts, si vous utilisez Windows.
  • Je recommande de créer des scripts Shell pour mettre à jour, mettre à niveau et installer des packages si vous utilisez souvent ces commandes.
32
Arnel A. Borja

Vous devez d’abord obtenir un ordinateur avec une connexion Internet, où vous pouvez télécharger les fichiers .deb requis. Une fois que vous avez téléchargé tous les fichiers, vous pouvez maintenant créer un CD/DVD-ROM ou un fichier ISO que vous pouvez utiliser pour installer le logiciel que vous avez téléchargé sur votre PC hors ligne.

Commencez avec une nouvelle installation ou une machine virtuelle.
Sudo apt-get install aptoncd

Installez les paquets que vous voulez sur un PC
Sudo apt-get install gbrainy

Exécuter aptoncd
enter image description here
Cliquez sur Créer
enter image description here
Cliquez sur Graver et définissez les options puis sur Appliquer.
enter image description here
Gravez-le ou enregistrez-le
enter image description here

Notez qu'aptoncd ne sauvegarde que les éléments présents dans apt-cache actuel.
C’est la raison pour laquelle nous avons commencé avec une nouvelle machine virtuelle/nouvelle installation et avons effectué tout cela en une seule fois.

29
RobotHumans

Dépôt hors ligne

Comment créer un référentiel hors ligne est décrit ici : Il vous suffit de télécharger les fichiers appropriés depuis archive.ubuntu.com . Vous pouvez également utiliser apt-medium .

EDIT: Une autre approche basée sur une liste locale de fichiers *.deb est décrite dans différentes entrées de blog (voir ici et ici ). Sarath Chandra résume comme suit:

  1. Rendre un répertoire accessible (au moins par la racine)

    Sudo mkdir /var/my-local-repo
    
  2. Copiez tous les fichiers deb dans ce répertoire.

  3. Faire le répertoire en tant que

    Sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
    

    ou

    Sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
    
  4. Ajouter le repo local aux sources

    echo "deb file:/var/my-local-repo ./" > /tmp/my-local.list
    Sudo mv /tmp/my-local.list /etc/apt/sources.list.d/my-local.list
    Sudo apt-get update
    
22
tohuwawohu

Étape 1: Obtenez les URL de téléchargement dans un fichier:

Exécutez la commande suivante en remplaçant les noms de paquet par les noms requis, en les séparant par un espace.

apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls

Étape 2: Copiez ce fichier (apturls) sur une machine disposant d'un accès Internet à haut débit, puis exécutez la commande suivante pour télécharger les packages:

wget -i path-to-apturls-file 

Étape 3: Téléchargez maintenant les packages téléchargés sur votre ordinateur et installez-les à l'aide de:

cd path-to-the-downloaded-packages-directory

Sudo dpkg -i *.deb

Terminé!

19
harisibrahimkv

Vous pouvez utiliser Cube. C'est un gestionnaire de paquets portable qui vous permet de télécharger des paquets sur un autre ordinateur connecté à Internet et de les réinstaller sur votre ordinateur Linux d'origine, hors ligne.

Téléchargement d'applications (Sous Windows)  

Installation d'applications (Sous Linux)  

Vous pouvez le télécharger sur le site Web de Cube .

18
Camicri

Dans synaptic, vous pouvez sélectionner les packages que vous souhaitez installer et, dans le premier menu, une option vous permet de générer un script que vous pouvez transférer sur une autre machine et y exécuter. Ce script va "wget" (c'est-à-dire "télécharger") tous les paquets que vous avez spécifiés que vous vouliez (et leurs dépendances) que vous exécutez sur un ordinateur qui a = a un accès Internet.

Une fois exécuté, vous aurez tous les fichiers de paquet nécessaires à l’ordinateur déconnecté. Transportez-les sur un CD/clé USB et installez-les avec Sudo dpkg -i *.deb.

17
popey

Vous pouvez utiliser apt-offline ou apt-offline-gui.
Pré-requis : système d'un ami avec connexion Internet. apt-offline installé sur vos deux systèmes.

L'installation hors ligne s'effectue en 3 étapes simples.

Étape 1 :
Générer un fichier de signature sur la boîte Debian déconnectée à la maison
apt-offline set /tmp/apt-offline.sig
La commande ci-dessus générera toutes les informations requises par apt concernant la mise à jour de sa base de données.

Étape 2 :
Télécharger les données en fonction du fichier de signature généré précédemment
apt-offline get C:\apt-offline.sig --threads 5
La commande ci-dessus téléchargera les données comme indiqué dans le fichier de signature. Pour accélérer les téléchargements (qui peuvent provenir de plusieurs référentiels apt), dans cet exemple, nous créons 5 threads de téléchargement.
Une fois que vous avez terminé, vous pouvez simplement copier les données (un fichier d’archive, si vous avez utilisé l’option --bundle) sur le support amovible et les recopier sur votre hôte hors ligne.

Étape 3 :
Une fois de retour sur la machine Debian d'origine, vous transmettez les données du support amovible à apt-offline:
apt-offline install /media/USB/apt-offline.Zip
Ceci mettra à jour la base de données APT sur votre ordinateur déconnecté de manière transparente.

Apt-offline peut même être utilisé dans les systèmes Windows. À mon avis, apt-offline est la meilleure option pour une installation hors connexion.

Source

15
Hashken

Il existe plusieurs bonnes réponses efficaces énumérées ci-dessus. Cependant, c’est le mécanisme que j’utilise personnellement - apt-ftparchive . Je le documente ici, au cas où j'en aurais besoin à nouveau. Peut-être que cela pourrait vous être utile.

Création de l'instantané d'archive

  • Créez une instance d'Ubuntu qui imite étroitement l'environnement cible
    • Par exemple, une instance Ubuntu 12.04 64 bits sur Amazon
  • Commencez avec un environnement de paquet propre
    • Sudo apt-get clean
  • Mettre à jour les listes de paquets
    • Sudo apt-get update
  • Téléchargez toutes les mises à jour de paquet disponibles
    • Sudo apt-get dist-upgrade --download-only
  • Téléchargez tous les packages et dépendances pertinents
    • Sudo apt-get install --download-only byobu run-one bikeshed dotdee powernap
  • Installez l'utilitaire apt-ftparchive
    • Sudo apt-get install apt-utils
  • Créez le manifeste de package
    • (cd /var/cache/apt/archives/ && Sudo apt-ftparchive packages . ) | Sudo tee /var/cache/apt/archives/Packages
  • Créer une archive des paquets
    • Sudo tar cvf snapshot.tar -C /var/cache/apt archives/

Utilisation de l'instantané d'archive sur le système cible hors ligne

  • Grâce à un mécanisme, vous devrez obtenir le fichier snapshot.tar du système source au système cible. Peut-être sur une clé USB, ou autrement.
  • Extrayez l'archive sur le système cible (dans ce cas, dans /home/ubuntu)
    • tar xvf snapshot.tar
  • Ajoutez la source locale hors ligne à /etc/apt/sources.list
    • echo "deb file:/home/ubuntu/archives /" | Sudo tee -a /etc/apt/sources.list
  • Mettre à jour la liste de paquets
    • Sudo apt-get update
  • Installez les paquets comme vous le souhaitez
    • Sudo apt-get install byobu run-one bikeshed dotdee powernap
10
Dustin Kirkland

Pour une installation hors ligne, vous aurez besoin des packages. Si vous utilisez un système Debian

  • Obtenez le fichier de package avec l'extension de fichier .deb et utilisez dpkg -i package_name pour l'installer.
  • Obtenez l'archive source avec l'extension de fichier .tar.gz ou .tar.bz2, puis extrayez-la et installez-la avec:

    tar -zxvf your_pack.tar.gz` or tar `-jxvf your_pack.tar.bz2
    make
    Sudo make install
    make clean        (optional, and may prevent uninstallation)
    

Vous pouvez avoir des problèmes avec les dépendances. Vous devez d'abord installer tous ceux-ci pour réussir votre installation hors ligne.

4
Harshit Chaudhary

La première chose à faire avant l’installation d’un paquet hors ligne est de mettre à jour le ou les référentiels dont vous avez besoin. Vous devriez évidemment avoir mis à jour le référentiel principal (pour les logiciels gratuits et officiellement pris en charge).

Les applications que vous souhaitez installer peuvent se trouver dans d’autres référentiels tels que l’Univers (gratuit mais sans support officiel), ou le Restreint (non -free, officiellement supporté), ou le référentiel Multivers (non-free, no support officiel). Donc, vous voudrez peut-être un ou plusieurs d'entre eux aussi.

La première étape du processus consiste donc à créer un référentiel hors ligne mis à jour. puis générez la liste "à télécharger" et téléchargez-la, puis l'insatllation. Voici comment c'est fait: source

  1. Entrez l'URL: http://archive.ubuntu.com/ubuntu/dists/ suiteCodename suiteCodename doit être substitué de manière appropriée, par exemple precise pour Ubuntu 12.04 (Pangolin précis) [ou utopic pour Ubuntu 14.10 (Utopic Unicorn)] afin que vous soyez maintenant dans http://archive.ubuntu.com/ubuntu/dists/precise/ ou tout autre élément spécifique à la suite que vous avez .

  2. Téléchargez les fichiers Release , Release.gpg et le fichier Sommaire - ????. gz pour votre architecture (c'est-à-dire Contents-i386.gz , en supposant que votre architecture est i386). Enregistrez ces trois fichiers dans un répertoire/dossier nommé d'après votre suiteCodename ( precise pour Precise Pangolin).

  3. Ensuite, vous devrez procéder comme suit pour chacun des référentiels (parmi Main, Univers, Restricted, Multiverse ).

    une. Accédez au répertoire du référentiel cible, par exemple. main puis dans le répertoire d'architecture, par exemple. binary-i386 pour que vous soyez dans http: //archive.ubuntu.com/ubuntu/dists/suiteCodename/repositoryName/binary- ???? /

    b. téléchargez le contenu Packages.bz2, Packages.gz, Release et enregistrez-le dans un répertoire nommé d'après le nom du référentiel, par exemple. main et placez ce répertoire dans le répertoire précédemment créé suiteCodename .

    c. répétez a. et B. pour chacun des dépôts que vous voulez.

  4. Enfin, vous devriez avoir une structure qui ressemble à ceci:

     precise
     ├── Contents-i386.gz
     ├── main
     │   └── binary-i386
     │       ├── Packages.bz2
     │       ├── Packages.gz
     │       └── Release.txt
     ├── Release.gpg
     ├── Release.txt
     └── universe
         └── binary-i386
             ├── Packages.bz2
             ├── Packages.gz
             └── Release.txt
    

    (en supposant que votre nom de série = nom exact = architecture est i386 et que vous avez besoin des référentiels principal et universel)

  5. Ensuite, après avoir téléchargé les référentiels mis à jour, placez les fichiers téléchargés dans une structure appropriée (comme indiqué ci-dessus) dans un répertoire de l'ordinateur hors ligne cible. Enregistrez la structure de répertoires precisedans un dossier nommé offlineRepository/dists/precise dans votre répertoire utilisateur (~/offlineRepository/dists/precise) ou ailleurs (/home/offlineRepository/dists/precise à l'aide de Sudo previleges dans un terminal ou avec le gestionnaire de fichiers Nautilus démarré avec gksu nautilus; assurez-vous également que vous disposez des autorisations appropriées pour la structure copiée). Les informations de votre référentiel hors ligne seraient alors prêtes à être utilisées.

  6. Ajouter le référentiel local dans votre liste de sources . Avec Centre logiciel Ubuntu , allez à Éditer -> Sources de logiciels ... -> Autres logiciels -> Ajouter ... , puis à le champ pour la ligne APT, ajoutez: deb file:///home/offlineRepository precise main universe et cliquez sur Add Source . Assurez-vous de modifier la ligne en fonction de la structure et de la suite de votre répertoire/fichier. Rechargez ensuite les packages ou exécutez Sudo apt-get update dans un terminal. snap1

  7. Maintenant, avec les référentiels mis à jour (et probablement récemment ajoutés), vous pouvez vider la liste des URL pour les paquetages et les dépendances.

    J'emprunte la ligne de code suivante d'un des messages précédents de askUbuntu:

    Sudo apt-get install packageName --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    par exemple. pour installer le gestionnaire de paquets Synaptic:

    Sudo apt-get install synaptic --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    (Vous pouvez également générer des listes de mises à jour de la même manière.)

    La liste générée peut être utilisée pour télécharger le package et les dépendances complètes sur un ordinateur en ligne. Créez un script pour télécharger ou utilisez la liste pour le téléchargement par lots dans certains gestionnaires de téléchargement. (Notez également que le fichier texte généré utilise une fin de ligne Unix/Linux, et que vous voudrez peut-être passer à Windows.) Auparavant, il existait un moyen plus simple pour cela Synaptic Package Manager était une application par défaut dans Ubuntu.

  8. Enfin, dans le système cible, vous pouvez installer les packages avec dpkgou de toute autre manière.

Obtenir la base de données de paquets mise à jour, y compris les mises à jour de sécurité

La structure suivante, en plus de l'explication ci-dessus, devrait vous donner l'idée:

/opt/offlineRepoList/
└── dists
    ├── precise
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release.txt
    │   ├── Release.gpg
    │   ├── Release.txt
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release.txt
    ├── precise-security
    │   ├── Contents-i386.gz
    │   ├── main
    │   │   └── binary-i386
    │   │       ├── Packages.bz2
    │   │       ├── Packages.gz
    │   │       └── Release
    │   ├── Release
    │   ├── Release.gpg
    │   └── universe
    │       └── binary-i386
    │           ├── Packages.bz2
    │           ├── Packages.gz
    │           └── Release
    └── precise-updates
        ├── Contents-i386.gz
        ├── main
        │   └── binary-i386
        │       ├── Packages.bz2
        │       ├── Packages.gz
        │       └── Release
        ├── Release
        ├── Release.gpg
        └── universe
            └── binary-i386
                ├── Packages.bz2
                ├── Packages.gz
                └── Release
2
precise

Pour un système qui sera toujours maintenu hors ligne, il est généralement préférable d'utiliser l'une des méthodes de gestion des paquets hors connexion robustes présentées dans certaines des autres réponses. Ceci parce qu'ils facilitent la mise à jour des paquets déjà installés, plutôt que d'installer simplement une poignée de paquets une fois.

Toutefois, dans les cas isolés où vous souhaitez simplement installer rapidement des packages sur un système ne disposant pas de connexion Internet (et que vous avez la possibilité de les télécharger sur une autre machine et de les transférer), vous pouvez le faire. La principale complication consiste à déterminer ce dont vous avez besoin, car un paquet a souvent d'autres paquets dont il dépend, et qui doivent donc être installés avant ou en même temps que le paquet.

Cette réponse est motivée par la question en double g ++ dans Ubuntu 14.04 , et utilise le cas de la nécessité d'installer g++ comme exemple principal.

Je souligne que cette méthode ne doit pas être utilisée à long terme comme une alternative à quelque chose qui facilite au moins la détermination et l'installation automatiques des mises à jour de sécurité nécessaires. Ne jamais se connecter à un réseau réduit considérablement le potentiel d'attaque, mais certains problèmes de sécurité peuvent être exploités via des données provenant de n'importe quelle source.

Bien que cette méthode puisse sembler complexe, elle ne prend généralement que quelques minutes. Pour les packages comportant un grand nombre de dépendances, cela peut prendre plus de temps. Pour installer des méta-paquets qui génèrent un très grand nombre de dépendances (par exemple, ubuntu-desktop sur un système minimal), le téléchargement de tous les fichiers .deb nécessaires peut prendre beaucoup plus de temps. Il est peu probable que cette méthode convienne.

Détermination des dépendances nécessaires

Vous pouvez simuler l'installation pour déterminer quels autres packages sont nécessaires pour satisfaire les dépendances du package. Le passage de l'indicateur -s à apt-get (before vous spécifiez une action) effectue cette opération.

apt-get -s install g++

J'ai omis Sudo, car il ne s'agit que d'une simulation, les privilèges root ne sont donc pas nécessaires.

Si vous souhaitez réellement installer tous les outils les plus courants pour la construction de packages, plutôt que simplement g++, vous préférerez peut-être:

apt-get -s install build-essential

La sortie (pour g++) ressemblera à ceci:

NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  g++-4.8 libstdc++-4.8-dev
Suggested packages:
  g++-multilib g++-4.8-multilib gcc-4.8-doc libstdc++6-4.8-dbg
  libstdc++-4.8-doc
The following NEW packages will be installed:
  g++ g++-4.8 libstdc++-4.8-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Inst libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Inst g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Inst g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [AMD64])
Conf libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Conf g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [AMD64])
Conf g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [AMD64])

Cela signifie que pour installer g++ sur mon système, j'ai besoin des packages g++, g++-4.8 et libstdc++-4.8-dev.

Suivre les résultats d'une simulation est généralement préférable à simplement rechercher les dépendances d'un paquet (ou à supposer que vous avez besoin de la même chose que ci-dessus), car:

  1. Certaines dépendances sont peut-être déjà installées.
  2. Les dépendances (c'est-à-dire les autres packages qu'un paquet doit installer ou utiliser) peuvent elles-mêmes avoir des dépendances que vous n'avez pas déjà installées.

Obtenir les colis

Une fois que vous savez quels paquets vous avez besoin, vous pouvez les télécharger. Je suggère d'utiliser Launchpad pour cela, car les téléchargements sont cryptés avec SSL, ce qui permet d'éviter la corruption des fichiers.

  • Ce n'est pas simplement une garantie contre la manipulation délibérée par une partie malveillante; cela permet également d'éviter la corruption accidentelle de fichiers, qui est un problème beaucoup plus courant pour les fichiers téléchargés.
  • Il n’en empêche pas un type: quand un fichier ne se télécharge que partiellement mais que vous pensez que cela est fini.
  • L'installation d'un package normalement avec apt-get ou le Centre de logiciel ne nécessite pas HTTPS car son hachage est vérifié par rapport à une liste de hachages signée numériquement. Si vous finissez par mettre ces paquets dans votre cache de paquets et à utiliser apt-get pour les installer, cela se produira.
  • Mais si vous devez installer les packages téléchargés manuellement avec dpkg -i, cela ne sera pas fait.

Vous pouvez rechercher un package en tapant son nom sous Packages sur https://launchpad.net/ubunt et en cliquant sur " Trouvez un forfait. " Par exemple, la recherche de g++-4.8 vous amène à la page du paquet source gcc-4.8 .

Ensuite, faites défiler jusqu'au nom de code de votre version Ubuntu. Vous utilisez 14.04, alors Trusty Tahr. Les noms de code pour toutes les versions d'Ubuntu sont répertoriés sur la page wiki des versions . Cliquez sur le triangle pointant vers la droite pour afficher les téléchargements de packages correspondants.

screenshot showing the rightward facing triangle with which one expands a release to see downloads for it

Pour certains paquets, vous pourrez peut-être développer des listes de téléchargements à partir de plusieurs pocket. Vous pouvez voir:

  • release, version d'un paquet livré avec une version d'Ubuntu (ou disponible au moment de la publication);
  • sécurité, mises à jour de sécurité fournies après publication;
  • pdates, toutes les mises à jour fournies après la publication;
  • proposé, les mises à jour pouvant être installées sont encore en cours de test et ne sont pas recommandées pour une utilisation générale;
  • backports, logiciel issu d'une version ultérieure d'Ubuntu et reconstruit pour une version antérieure.

Par exemple, voici ce qui est disponible pour Firefox dans 14.04:

Launchpad screenshot showing expandable selections of package downloads for multiple pockets in the same release

Généralement, vous voudrez que les paquets soient dans security ou pdates s'ils existent, et sinon les packages dans release.

Une fois que vous avez développé la liste des packages, recherchez le fichier .deb de votre architecture. Les debs sont nommés name_version_architecture.deb. Les architectures les plus courantes sont:

  • PC/Mac 64 bits (appelé AMD64, pour les processeurs Intel et AMD)
  • PC/Mac 32 bits (appelé i386, également pour les deux)

Par exemple, pour obtenir le package g++-4.8 de la version 64 bits d’Ubuntu, vous pouvez télécharger g++-4.8_4.8.4-1ubuntu15_AMD64.deb.

Installer les paquets

Si les packages que vous avez récupérés sont les mêmes versions que l'action apt-get's install aurait automatiquement récupérés et installés (si votre système était connecté au réseau), vous pouvez alors placer les packages dans /var/cache/apt/archives et simplement exécuter cette commande :

Sudo apt-get install g++

Si ce système était jamais connecté à Internet, ce sera probablement le cas lorsque tous les paquets que vous aurez récupérés proviendraient de la version. Que le système soit connecté ou non à Internet, ce sera presque toujours le cas si aucun paquet dans aucune autre poche n’a été affiché sur le Launchpad. (En gros, la seule situation qui ne se produira pas si vous avez installé un système alpha ou bêta et ne l'avez jamais mis à jour.)

Dans le cas particulier de l’installation de g++, j’utiliserais apt-get.

Dans les cas où cela ne fonctionne pas ou si vous vous attendez à ce que cela ne se produise pas, installez les packages en les plaçant dans un dossier vide par ailleurs et en exécutant:

Sudo dpkg -Ri /path/to/folder

Ou vous pouvez nommer les paquets individuellement. Cet exemple suppose que les packages se trouvent dans le répertoire actuel (c'est-à-dire que vous avez cded dans le répertoire qui les contient):

Sudo dpkg -i package1.deb package2.deb ...

Sauf si le nombre de paquetages installés est très petit et ​​vous connaissez l'ordre exact dans lequel ils doivent être installés pour que les dépendances soient satisfaites, il est considérablement plus efficace d'utiliser ces méthodes que d'installer manuellement chaque paquet. individuellement.

2
Eliah Kagan

Après avoir parcouru les réponses sur ici: Comment puis-je installer des logiciels ou des packages sans Internet (hors ligne)? , j'ai trouvé ce code par Arnel A. Borja le plus utile.

Sudo apt-get install PACKAGE --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh


Quoi qu’il en soit, voici quelques instructions pour les débutants complets. J'espère que vous les trouverez utiles.

Instructions de téléchargement complètes pour les nouveaux utilisateurs d’Ubuntu 15.10+:

  1. Ouvrez le terminal (raccourci CTRL + ALT + T)
  2. Accédez au dossier dans lequel vous souhaitez télécharger le package à l'aide de la commande:

    cd FOLDERNAME
    (Exemple: cd Desktop)
    Conseil: Vous pouvez également utiliser la commande dirpour répertorier les dossiers.

  3. Dans le code ci-dessus les instructions, remplacez PACKAGE par le package que vous souhaitez télécharger.
  4. Copiez et collez le code modifié (raccourci CTRL + MAJ + V) et appuyez sur Entrée

    Exemple de code pour télécharger le gestionnaire de paquets Synaptic:
    Sudo apt-get install synaptic --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

    Exemple de code pour télécharger le lecteur VLC:
    Sudo apt-get install vlc --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

  5. Si on vous le demande, tapez le mot de passe root et appuyez sur Entrée. (Ne paniquez pas si les caractères du mot de passe ne s'affichent pas. C'est simplement une mesure de sécurité.)
  6. Le fichier "install.sh" devrait maintenant être généré. Toutes les dépendances nécessaires sont incluses dans le script.
  7. Maintenant, nous devons exécuter le script avec cette commande:
    sh install.sh
  8. Attendez que les fichiers soient téléchargés
  9. Ensuite, vous pouvez utiliser cette commande pour installer tous les packages du dossier:

    Sudo dpkg -i *.deb

    Vous pouvez également utiliser un programme tel que Synaptics pour installer les packages. (Synaptics: Fichier - Ajouter les packages téléchargés)
    Vous pouvez également cliquer deux fois sur les fichiers. Cela ouvrira le centre logiciel Ubuntu. Une fois le centre logiciel chargé, appuyez sur le bouton d'installation. Répétez cette opération jusqu'à ce que tous les fichiers du dossier soient installés.

2
GSM-S

Oui. Vous pouvez télécharger le DVD iso, le graver sur un DVD et installer le logiciel à partir du DVD. Voir ici Les CD et DVD peuvent être donnés comme source aux gestionnaires de paquets de la même manière que les archives en ligne.

2
txwikinger

Si vous n'avez aucune connexion Internet et que vous n'avez personne près de l'endroit où vous pouvez vous connecter à Internet, une option n'est pas encore mentionnée: demandez à quelqu'un d'envoyer les fichiers source par la poste.

Vous pouvez obtenir l'ensemble du système d'exploitation Ubuntu par courrier en payant un DVD. De la même manière, vous pouvez demander à un ami en ligne de vous envoyer les fichiers DEB ou même les fichiers source d’un paquet tel que VLC. Bien que cela puisse valoir la peine d’avoir quelqu'un qui envoie un DVD complet avec tous les paquets. De cette façon, vous pouvez l'installer à partir de ce DVD.

1
Rinzwind

J'ai un petit script python qui peut être exécuté sur Windows et qui analyse le site Web du paquet ubuntu pour trouver l'arbre de dépendance et télécharger tous les paquets nécessaires ainsi que la vérification de la somme de contrôle.

Cela peut évidemment télécharger plus que nécessaire, mais était la solution la plus simple pour moi.

https://Gist.github.com/Zitrax/2bad212a3b0571357e1b

Tous les packages téléchargés peuvent ensuite être installés avec dpkg -i E pkg\*. Cela évite la réinstallation de paquetages déjà installés.

Usage:

usage: ubuntu-deps.py [-h] [-a Arch] [-r RELEASE] [-m MIRROR] [-f FALLBACK] [-d DIRECTORY] dep [dep ...]

Download ubuntu dependencies

positional arguments:
  dep                                  The main/top package

optional arguments:
  -h, --help                           show this help message and exit
  -a Arch, --Arch ARCH                 The architecture to use (default: AMD64)
  -r RELEASE, --release RELEASE        Ubuntu release (default: trusty)
  -m MIRROR, --mirror MIRROR           Mirror to use for download (default: http://no.archive.ubuntu.com/)
  -f FALLBACK, --fallback FALLBACK     Mirror to use when main mirror is not found (default:
                                       http://security.ubuntu.com/)
  -d DIRECTORY, --directory DIRECTORY  Target directory (default: pkg)
1
Zitrax

Je suggère de personnaliser les Live CD et de les installer.

Vous pouvez également télécharger les fichiers sur http://packages.ubuntu.com/ nom de fichier , mais vous devrez payer attention aux dépendances aussi.

0
Jakob

Ce n'est pas une réponse entièrement détaillée, mais à un niveau élevé, vous pourriez:

  1. obtenir les fichiers .deb désirés (et en créer une liste) (inclure les paquets dont ils dépendent qui ne sont pas déjà installés)
  2. créer une archive apt qui les contient
  3. copier l'archive d'apt sur un CD ou une clé USB
  4. insérez le CD ou la clé USB dans le système cible
  5. configurez apt sur le système cible pour inclure le CD ou l’archive USB apt en tant que source
  6. installez les paquets de votre liste avec apt-get install (liste de pkgs)
0
kyleN

Une autre possibilité consiste à utiliser remastersys. Cet outil vous permet de créer une image ISO à partir de votre propre système. Après avoir créé une clé USB amorçable via unetbootin, vous pouvez installer un système personnalisé sur autant d’ordinateurs de votre choix.

0
dago

Cette question est un peu ancienne, donc une réponse à ce stade peut être redondante, mais vous pourriez peut-être aussi essayer d'utiliser dpkg-offline . Installez bzr, puis:

bzr branch lp:dpkg-offline

il contient un tutoriel et un fichier lisez-moi.

En supposant que vous souhaitiez installer git sur un système Ubuntu 14.04 AMD64, même si votre système est, par exemple, 12.04 i386, vous pouvez:

  • téléchargez l'image ubuntu-14.04-desktop-AMD64.iso
  • Exécutez dpkg-offline ubuntu-14.04-desktop-AMD64.iso git
  • Vous obtiendrez un fichier tar.gz que vous pourrez transporter vers le système cible. Il contiendra le paquet d'origine (git) et toutes ses dépendances. Il inclut également un script d'assistance pour ajouter un référentiel local. Vous pouvez donc utiliser apt-get pour installer vos packages.

dpkg-offline fonctionnera avec toutes les versions de bureau Ubuntu à partir de 10.04 (je n’ai pas testé avec les versions antérieures mais elles devraient également fonctionner), et avec Version du serveur Ubuntu à partir de 12h10. Il devrait également fonctionner avec les images AMD64, i386 et armhf, quelle que soit l'architecture de l'hôte. Encore une fois, je n'ai pas testé avec arm64 ou powerpc/ppc64el mais ils peuvent également fonctionner.

Disclaimer: J'ai écrit dpkg-offline.

0
roadmr

Certains paquets sont installés sur la clé USB d’installation. J'ai désinstallé network-manager et je souhaite l'installer à nouveau.

Ainsi, j'ai obtenu le stick avec lequel j'ai installé le système d'exploitation (Lubuntu 17.10). C'était /dev/sdb

Montez le stick sur un chemin (/tmp/mnt dans mon cas)

mkdir /tmp/mnt
Sudo mount /dev/sdb1 /tmp/mnt

Ensuite, je modifie /etc/apt/sources.list pour ne contenir que

deb file:///tmp/mnt/ main universe

Alors je fais

Sudo apt-get update

Et je peux installer network-manager.

Remarque: Ce n'est peut-être pas la réponse à la question ci-dessus, mais à la question que j'ai posée lors de la recherche de celle-ci.

0
User

J'ai quelques suggestions simples. Vous pouvez aller à la bibliothèque. Recherchez dans la section "Ordinateur" le système d’exploitation souhaité. Certains livres contiennent un DVD. De plus, si vous souhaitez utiliser le système d'exploitation le plus récent, je vous recommande ce site Web où vous pouvez acheter un DVD à un prix modique. www.ubuntu.com/download/desktop.

0
BJsgoodlife