viernes, 14 de diciembre de 2012

apt y dpkg ya son multiarquitectura


¿Que es la arquitectura de un ordenador?

La arquitectura de ordenador, es el diseño conceptual y la estructura operacional fundamental de un sistema de computadora. Es decir, es un modelo y una descripción funcional de los requerimientos y las implementaciones de diseño para varias partes de un ordenador, con especial interés en la forma en que la unidad central de proceso (CPU) trabaja internamente y accede a las direcciones de memoria.


También suele definirse como la forma de seleccionar e interconectar componentes de hardware para crear ordenadores según los requerimientos de funcionalidad, rendimiento y costo.

El ordenador recibe y envía la información a través de los periféricos por medio de los canales.
La CPU es la encargada de procesar la información que le llega al ordenador. El intercambio de información se tiene que hacer con los periféricos y la CPU. Todas aquellas unidades de un sistema exceptuando la CPU se denomina periférico, por lo que el ordenador tiene dos partes bien diferenciadas, que son: la CPU (encargada de ejecutar programas y que está compuesta por la memoria central (MC) , la unidad aritmético-lógica (UAL) y la unidad de control (UC)) y los periféricos (que pueden ser de entrada, salida, entrada-salida y comunicaciones (E/S)).

APT y DPKG

El soporte multiarquitectura (Multiarch) está disponible en Debian GNU/Linux desde la versión 1.16.2 de dpkg y desde 0.8.12 de apt. 




apt y dpkg son aplicaciones con la que podemos instalar los paquetes .deb en Debian GNU/Linux, solo tenemos que teclear apt-get install nombre_del_paquete o dpkg -i nombre_del_paquete.deb tendremos la instalación lista.

Ahora las aplicaciones apt y dpkg tienen soporte Multiarquitectura (multiarch), que nos permite hacer la instalación de cualquier paquete que esté en otra arquitectura.

Por ejemplo si estamos usando Debian GNU/Linux Wheezy de 64 bits (amd64) y necesitamos instalar algún programa que solo existe para la arquitectura 32 bits (existen solo para 32 bits, o en su día solo existían versiones de 32 bits para: Google Earth, Packet Tracer, Peazip, Skype, Flash Player, etc...) a partir de ahora ya se pueden instalar sin problemas. Ya que apt y dpkg están preparados para instalar paquetes de otras arquitecturas diferentes a la que estamos usando, resolviendo todas sus dependencias


Añadir una arquitectura 32 bits distinta a la que usamos de 64 bits en DPKG y APT.

Vamos a añadir una arquitectura complementaria a nuestro sistema Debian GNU/Linux de 64 bits, usando el siguiente comando: dpkg --add-architecture nombre_de_la_arquitectura (por ejemplo, i386 si usted está en AMD64). APT seleccionará automáticamente la nueva arquitectura y empieza a descargar el archivo de paquetes para la nueva arquitectura
dpkg --add-architecture i386



Una vez añadida la nueva arquitectura tenemos que refrescar la lista de paquetes con el siguiente comando: apt-get update



Para saber las arquitecturas que hemos añadido usamos el siguiente comando: dpkg --print-foreign-architectures


y nos devuelve las arquitecturas que le hemos añadido.



A partir de ahora se puede instalar los paquetes con las arquitecturas añadidas usando el siguiente comando: apt-get install nombre_del_paquete:nombre_de_la_arquitectura

apt-get install linux-image-3.2.0-4-486:i386


o bien directamente desde dpkg usando el siguiente comando: dpkg -i nombre_del_paquete.deb

dpkg -i skype-debian_4.1.0.20-1_i386.deb



En synaptic seria así:
 


Eliminar una arquitectura añadida previamente

Para eliminar una arquitectura que previamente hemos añadido usamos el siguiente comando:
dpkg --remove-architecture nombre_de_la_arquitectura

dpkg --remove-architecture i386
















Enlace a la web oficial de Debian: http://wiki.debian.org/Multiarch/Implementation













3 comentarios:

Oscar dijo...

Tengo una duda, cual es el comando mas recomendable para actualizar, apt-get o aptitude. Hace un tiempo atrás sugerían usar para instalar actualizaciones el uso de aptitude safe-upgrade, este comando sigue vigente?.
Muy buen articulo, gracias por tu aporte.

Un saludo.

Usuario_Debian dijo...

Hola Oscar.

Algunos dirán que apt-get, otros que aptitude, el mejor es aquel tu decidas, prueba ambos y quédate con el mejor para ti. Como veras en este blog siempre usamos synaptic.

Pero te recomiendo aprender a fondo el que tu quieras, y veras que todos son semejantes por no decir casi iguales. Esto es lo bueno que tiene Debian GNU/Linux, que para una misma cosa existen varios caminos para llegar a la misma meta.

Saludos.

Marcos dijo...

Hay diferencias. Aptitude resuelve mejor las dependencias en caso de desinstalar algo, cosa que apt-get suele dejar alguna que otra huerfana por ahi. Sim embargo para hacer un upgrade de la distribucion se recomienda apt-get, info mas abajo.

http://www.debian.org/releases/squeeze/i386/release-notes/ch-upgrading.en.html#upgrading-full

Por lo general funcionan bastante bien cualquiera de las dos opciones.