Com descarregar paquets DEB amb dependències localment?

Descarregar paquets deb localment

El poder instal·lar aplicacions en Ubuntu, Linux Mint així com en els seus derivats ha diversos mètodes. El més usual i conegut és amb ajuda de el centre de programari de la distribució en el qual podem trobar una gran quantitat d'aplicacions llistes per poder ser instal·lades.

Un altre dels mètodes usuals que solem ocupar és amb ajuda de la terminal i un altre dels més concorreguts és mitjançant la instal·lació des d'un paquet deb.

Generalment quan instal·lem un paquet deb, no solem revisar les dependències d'aquest, Ja que només és el pur paquet i no inclou tots aquells paquets o llibreries que necessita per al seu correcte funcionament.

primer mètode

Usant aquest mètode, podem descarregar paquets d'un sistema i instal·lar-més endavant en el mateix sistema o en qualsevol altre, que no tingui connexió a Internet.

També és possible descarregar paquets per a diferents sistemes d'arquitectura. Per exemple, pot descarregar els paquets de 32 bits des d'un sistema de 64 bits i viceversa.

Com descarregar paquets deb amb dependències localment?

Per a la descarregar localment paquets amb dependències en Debian, Ubuntu i derivats, pot un dels mètodes següents.

Aquest és el mètode més simple i directe.

Per a això n'hi ha prou amb executar la següent comanda per descarregar un paquet amb totes les dependències sense instal·lar-les:

sudo apt-get install --download-only nombre-del-paquete

Tots els arxius descarregats es guardaran a la carpeta /var / cache / apt / archives.

Ara simplement podem procedir a copiar tota la carpeta de memòria cau en qualsevol pendrive per posteriorment fer ús d'aquests paquets descarregats.

Per instal·lar els paquets descarregats, només cal dirigir-nos a la còpia que realitzem i instal·lar amb la següent comanda:

sudo dpkg -i *

Ara el problema d'utilitzar aquest mètode, encara que sembla senzill, és que la carpeta de memòria cau no només emmagatzema el paquet que acabes de descarregar amb les seves dependències, sinó que conté molts més paquets que han estat instal·lats en el sistema.

Pel que has de realitzar una neteja de la memòria cau si no vols carregar amb paquets innecessaris. Tot i que per a aquest cas podem utilitzar un altre mètode.

ubuntu_story

segon mètode

Una altra forma de poder fer això, és primer baixar les dependències de el programa que necessitem.

Pel que, per poder conèixer la llista de totes les dependències d'un paquet, hem d'executar la següent comanda

sudo apt-cache depends nombre-del-paquete

La sortida serà més o menys així:

nombre-del-paquete
PreDepends: …..
Depends: xxx
Depends: xxxx
Conflicts:
Breaks: update-manager-core
Suggests: xxxx
Suggests: xxxx
Replaces: xxx

Ara, simplement hem de descarregar el paquet amb les seves dependències. Això ho podem fer amb la següent comanda:

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

La comanda anterior descarregar el paquet juntament amb totes les dependències necessàries i guardar-les en el directori de treball actual.

Aquesta comanda també guardarà qualsevol error en el fitxer ERRORS.TXT el qual podem visualitzar en cas de tenir un problema i conèixer l'origen de l'conflicte.

Com descarregar paquets per arquitectura?

Ara com va ser esmentat anteriorment, és possible descarregar paquets de qualsevol tipus d'arquitectura, però atès que per als que són usuaris de 64 bits cal afegir el suport per a l'arquitectura de 32 bits.

Per a això primer, hem d'habilitar l'arquitectura que vulguin en el seu sistema amb la comanda:

sudo dpkg --add-architecture i386*

També podem descarregar paquets per a ARM així com habilitar l'arquitectura residenciala en el nostre sistema, només hem de habilitar l'arquitectura amb:

sudo dpkg --add-architecture armhf

De la mateixa manera podem comprovar que arquitectures tenim disponibles al nostre sistema amb:

sudo dpkg --print-foreign-architectures

Després d'habilitar l'arquitectura de la seva elecció, han de d'executar la següent comanda per descarregar paquets relacionats amb l'arquitectura específica.

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

Feta la descàrrega dels paquets juntament amb les seves dependències, ara, simplement n'hi ha prou amb copiar-los a la seva unitat USB i instal·lar els paquets en qualsevol sistema.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   Bux va dir

    Gràcies per acostar-nos el tutorial, aquesta comanda el vaig veure fa molt de temps en algun fòrum de reddit i m'ha salvat la vida en múltiples ocasions, un cop el vaig tenir que fer servir amb l'ajuda d'un live cd per poder instal·lar en un servidor en manera text el controlador de la targeta de xarxa.

  2.   Omar Baptista González va dir

    Moltes gràcies! Em pot servir perquè en el context on viu (el de República Dominicana) no sempre es disposa de fàcil connexió a la Internet. De manera que aquest tutorial em podria servir per poder instal·lar en diferents ordinadors a alguns paquets si la necessitat de disposar d'Internet, tan sols transportant aquests paquets en alguna memòria USB o alguna cosa per l'estil.

  3.   Maxim va dir

    Gràcies, se m'havia oblidat implementar en el meu ubuntu mat, el de l'arquitectura i386, que és una cosa indispensable, i pràcticament es em presenta l'error en bionic ubuntu, crec que aquest el problema