Así es como funcionan los instaladores de software en Windows, macOS y Linux

  • Gabriel Brooks
  • 0
  • 3075
  • 164
Anuncio

Los sistemas operativos modernos le proporcionan métodos sencillos para configurar nuevas aplicaciones. Estos incluyen paquetes de instalación automatizados, así como comandos que instalan muchos bits de software a la vez. Pero, ¿qué sucede realmente cuando ejecuta ese instalador o ejecuta ese comando??

Echemos un vistazo a cómo se instala el software en tres plataformas principales de escritorio: Windows, macOS y Linux.

Métodos de instalación de software

Hay algunas maneras diferentes en que puede ejecutar nuevas aplicaciones en su computadora. En orden de complejidad creciente, estos incluyen:

  • Compilación de software - Construyendo la aplicación desde su código fuente. Solo para los usuarios más técnicos.
  • Archivos de software - Desempaquetar archivos como archivos ZIP y ejecutar el programa desde donde lo extrajo. Esto puede requerir algunos ajustes adicionales.
  • Paquetes de instalador - Encontrar un archivo instalador y (doble) hacer clic para comenzar la instalación.
  • Gerentes de software / tiendas - Seleccionar la aplicación desde una interfaz agradable y hacer clic en una gran “Instalar” botón. Es magia!

En este artículo examinaremos los paquetes del instalador, ya que la mayoría de los gerentes / tiendas de software se ocupan de este tipo de paquetes detrás de escena. Para las principales plataformas de escritorio de hoy en día, Windows, macOS y Linux, veremos qué constituye uno de estos paquetes y qué ocurre cuando los instala..

Microsoft Windows

Los paquetes de instalación que probablemente encontrará para Windows vienen en uno de los dos sabores principales. Los archivos ejecutables (EXE) pueden configurar su programa haciendo el trabajo pesado de colocar los archivos en la ubicación correcta y realizar actualizaciones del Registro de Windows. Los paquetes de Windows Installer (MSI) se suman a esto al proporcionar servicios estandarizados como desinstalaciones.

Puede inspeccionar el contenido de EXEs o MSI abriendo el archivo con 7-Zip 7Zip: un programa gratuito para descomprimir formatos de archivo poco comunes 7Zip: un programa gratuito para descomprimir formatos de archivo poco comunes. Si lo usa para mirar el propio instalador EXE de 7-Zip, encontrará varios archivos diferentes en:

Si bien estos archivos no tienen una carpeta que contenga el instalador, el desarrollador habrá apuntado cada uno a un directorio de destino. La mayoría de ellos terminan en el “ubicación de instalación predeterminada” - la misma sugerencia que normalmente ves para una carpeta como “C: \ Archivos de programa \ [nombre del programa]” o “C: \ Archivos de programa (x86) \ [su nueva aplicación].”

Cuando se utiliza una herramienta sofisticada como InstallShield para crear paquetes de instalación, los desarrolladores de aplicaciones pueden personalizar la instalación. Por ejemplo, pueden designar en qué versiones de Windows se instalará, configurar accesos directos que se crearán en el menú Inicio y / o en el escritorio, o recopilar información del usuario como nombre, dirección, etc. El proyecto de ejemplo InstallShield en la imagen a continuación muestra la pantalla para configurar si las claves del Registro de Windows deben crearse o actualizarse.

Con InstallShield, los archivos de la aplicación y otras personalizaciones se envuelven en un setup.exe expediente. Abrirlo con 7-Zip mostrará que dentro hay un paquete MSI que, cuando se ejecuta, se parece a la instalación a la que todos estamos acostumbrados. Repasemos lo que sucede durante este proceso..

Proceso de instalación de Windows

Un instalador tomará los siguientes pasos para configurar su aplicación para su uso (el orden exacto de los cuales puede variar dependiendo de las personalizaciones del desarrollador):

  1. Un instalador puede contener otros archivos, como el mencionado MSI o formatos como CAB. Como primer paso, el instalador los extraerá a una ubicación temporal.
  2. A continuación, verificará si las dependencias que se han establecido están disponibles. Si falta algo, lo descargará si es posible, o saldrá del instalador con un error si no.
  3. Si se requieren dependencias, se instalarán primero utilizando el instalador con el que vengan (¿alguna vez se interrumpió la instalación de .NET Framework? Microsoft .NET Framework: por qué lo necesita y cómo instalarlo en Windows Microsoft .NET Framework: por qué Lo necesita y cómo instalarlo en Windows Es necesario instalarlo o actualizarlo, pero ¿sabe qué es .NET Framework? Le mostramos por qué lo necesita y cómo puede obtener la última versión)..
  4. A continuación, el instalador comenzará a copiar los archivos de la aplicación y colocarlos en su ubicación correcta..
  5. Si el desarrollador configuró algunos accesos directos, el instalador los creará y los señalará a la ruta de instalación real (recuerde, puede cambiar esto Cómo crear accesos directos de escritorio de Windows de manera fácil Cómo crear accesos directos de escritorio de Windows de manera fácil Los accesos directos de escritorio inteligentes pueden ahorrarle examinando menús y carpetas sin pensar. Le mostramos formas rápidas y fáciles de crearlos. cuando se ejecuta el instalador).
  6. Cambios en las herramientas del Registro 3 de Windows para monitorear y examinar Las herramientas del Registro 3 de Windows para monitorear y examinar el Registro de Windows El registro de Windows es una de las partes menos conocidas del sistema operativo Windows. Le mostramos herramientas que pueden simplificar el registro y ayudarlo a identificar problemas. , en su caso, se ejecutará.
  7. Por último, el instalador puede solicitar al usuario que ingrese información como el nombre o la dirección del sitio web.

Este proceso puede parecer complejo en comparación con el próximo sistema operativo de la lista. Echemos un vistazo a la instalación de software en macOS.

Apple macOS

Los instaladores de Windows tienen mucho que ver debajo del capó. Pero si ha utilizado una Mac, sabe que instalar una aplicación es a menudo tan fácil como descargar una copia de la aplicación, abrir la imagen de disco (DMG) y seguir algunas instrucciones sencillas Cómo instalar y eliminar el software de Mac: 5 métodos fáciles Cómo instalar y eliminar el software de Mac: 5 métodos sencillos ¿Se cambió a una Mac y se familiarizó con lo básico? ¿Se pregunta cómo instalar el software desde la línea de comandos? ¿Tienes viejas aplicaciones de Windows que simplemente debes ejecutar en tu computadora Apple? . A veces, la descarga incluso te proporciona un “Arrastre aquí!” icono.

Vamos a sumergirnos en el paquete de aplicaciones, así como en su contraparte, el instalador de PKG.

Estructura del paquete macOS

El archivo APP en la superficie es de hecho más simple que Windows por dos razones principales. En primer lugar, es una carpeta estándar. La única diferencia es que termina con un “.APP” sufijo. Si descarga uno de estos en Windows, verá que se muestra como cualquier otra carpeta de archivos en Explorer. En segundo lugar, los archivos APP exigen que se incluya absolutamente todo lo que requiere el programa. No hay que preocuparse por la falta de dependencias con este tipo de instaladores..

Estos paquetes deben contener tres cosas en una carpeta llamada “Contenido”: 1) un “Info.plist” archivo que contiene metadatos de la aplicación, como nombre, idioma, número de versión, etc. 2) a “Mac OS” directorio que contiene el ejecutable principal; y 3) un “Recursos” directorio que contiene activos que la aplicación necesita para funcionar (por ejemplo, un icono de aplicación). Hay otras carpetas opcionales como “Marcos” (paquetes de funcionalidad que no son específicos de la aplicación), “Plug-Ins” (funcionalidad para la aplicación que no se requiere para ejecutarla) y “SharedSupport” (datos extraños como plantillas).

Por el contrario, el formato PKG es una combinación de un instalador similar a Windows con una estructura similar a Unix 3 sistemas operativos similares a UNIX que no son Linux 3 sistemas operativos similares a UNIX que no son Linux Recientemente, la gente comenzó a confundir " UNIX "con" Linux ". Linux fue influenciado por UNIX, pero los sistemas UNIX no tienen relación con Linux. Aquí hay algunos sistemas importantes basados ​​en UNIX que vale la pena conocer. . La aplicación 7-Zip también abrirá un archivo PKG, que está comprimido en xar formato. Dentro hay uno o más Carga útil archivos, que también es un archivo. Para extraer su contenido, use la siguiente cadena de comandos (cpio es un formato de archivo, así como un programa para manipularlos) en una Terminal Mac o Linux:

Cat Payload | gunzip -dc | cpio -i

Una vez hecho esto, verá un árbol de directorios familiar similar a Unix.

En el siguiente ejemplo, he usado el convertidor de documentos, Pandoc. Incluye un binario en / usr / local / bin y algo de documentación en / usr / local / share / man. ¿Cómo se ponen realmente estas cosas en su lugar? Echaremos un vistazo a cómo cada uno de estos realmente se instala en tu Mac.

He usado la versión de Windows de 7-Zip para ilustrar esto, en lugar de la versión de Linux de línea de comandos solamente.

Proceso de instalación de la aplicación macOS

Cuando sueltas el archivo de la APLICACIÓN en tu carpeta de Aplicaciones, realmente no cambia tanto. Recuerde, todo lo necesario para ejecutar el programa es autónomo. La única diferencia de un estándar de arrastrar y soltar es que el “Info.plist” el archivo se registra con el sistema.

Esto configurará cosas como qué ejecutable se llama cuando inicia la aplicación, qué icono se muestra, los tipos de archivos que admite y más. Pero, de lo contrario, su aplicación (como el paquete de APLICACIONES para Atom Editor que se muestra a continuación) ahora está lista para usar.

Proceso de instalación de macOS PKG

Al abrir un archivo PKG, por otro lado, se inicia un “estilo mago” instalador Para programas simples esto es típicamente un instalador de componentes, que generalmente sigue los siguientes pasos:

  1. Ejecutar el preinstalar guión.
  2. Desempaquete el “Carga útil” contenido a la máquina.
  3. Ejecutar el postinstall guión.

Los desarrolladores pueden combinar múltiples componentes en un solo archivo de producto instalar. Esto agrega opciones como mostrar un EULA para que el usuario lo acepte, recopilar información del usuario y seleccionar los componentes para instalar. Mientras tanto, el instalador de Apple se encarga de todos los detalles de la instalación de los componentes necesarios uno por uno en segundo plano.

Hablando de instaladores basados ​​en Unix, pasaremos a los dos formatos principales de paquetes de Linux en la siguiente sección.

Ubuntu y Fedora Linux

Ah, DEB versus RPM Cómo instalar software en Linux: Explicación de los formatos de paquete Cómo instalar software en Linux: Explicación de los formatos de paquete Ha cambiado a Linux y desea instalar algún software. Pero los administradores de paquetes difieren según su distribución. Entonces, ¿qué aplicaciones puedes descargar e instalar? Todo está en las siglas. . Una de las grandes guerras de llamas, superada solo por personas como vi versus emacs o KDE versus GNOME. Sin embargo, estos formatos son más similares que diferentes. Vamos a ver.

Estructura de archivo de paquete de Linux

Para echar un vistazo al interior de un archivo DEB, puede probar un administrador de archivos GUI. De lo contrario, use el Arkansas mando. El siguiente comando ingresado en el terminal 40+ Comandos de terminal de Linux más usados ​​40+ Comandos de terminal de Linux más usados ​​Ya sea que recién esté comenzando o simplemente tenga curiosidad sobre el terminal de Linux, estos son los comandos más comunes que lo llevarán durante todo su tiempo en Linux extraerá el contenido de un paquete Debian:

ar -x nombre-de-tu-paquete.deb

De esto saldrán tres archivos:

  • control.tar.gz - Esto a su vez contiene un archivo primario, Controlar, que contiene metadatos sobre el paquete, como su nombre oficial, versión y dependencias. También puede contener otros archivos, como scripts que se ejecutarán durante el proceso de instalación o archivos de configuración predeterminados.
  • data.tar.gz - Los archivos que componen la aplicación en sí están en este archivo TAR.GZ. Todo, incluidos los archivos binarios, la documentación y las configuraciones predeterminadas, están aquí. En el paquete de ejemplo kde-service-menu-encfs_0.5.2_all.deb, contiene archivos y directorios como se muestra en la imagen a continuación.
  • debian-binary - Este es un archivo que define qué versión del formato del paquete Debian está usando el archivo. Para las distribuciones modernas esto solo contendrá “2,0” en una sola línea.

En Fedora, puedes usar el rpm2cpio y cpio comandos para extraer un paquete RPM y examinar sus archivos:

rpm2cpio nombre-de-tu-paquete.rpm | cpio -idvm

Para el paquete kde-cli-tools-5.9.4-2.fc26.x86_64.rpm, verá un árbol de archivos similar al paquete DEB. Pero no proporciona los metadatos, al menos no en el binario paquete. Tendrá que descargar el RPM de origen (.SRC.RPM) correspondiente a su versión binaria, luego use el mismo comando anterior en ese archivo. Incluido en eso habrá un archivo SPEC que contiene muchos de los mismos elementos que el Controlar archivo en un paquete Debian.

Ahora que comprendemos la estructura de los paquetes de Linux, exploremos qué sucede cuando realmente los instala. Cómo instalar software en Linux: Explicación de los formatos de paquete Cómo instalar software en Linux: Explicación de los formatos de paquete Ha cambiado a Linux, y desea instalar algún software. Pero los administradores de paquetes difieren según su distribución. Entonces, ¿qué aplicaciones puedes descargar e instalar? Todo está en las siglas. .

Instalación del paquete de Linux

Cuando instala paquetes de cualquier formato, independientemente del front-end, sucede un conjunto similar de pasos:

  1. El sistema de paquetes examina el contenido del paquete para determinar si faltan dependencias. Dependiendo de la herramienta, te avisará o configurará la descarga..
  2. Si los paquetes contienen scripts o comandos previos a la instalación, se ejecutarán a continuación.
  3. Entonces el sistema de paquetes realmente extrae los archivos del paquete.
  4. Con los archivos en su lugar, se ejecutan los scripts posteriores a la instalación.
  5. Finalmente, el paquete se registra en la base de datos interna utilizando sus metadatos, por lo que puede desinstalarse más tarde.

Saber cómo se instala el software es algo bueno

Debido a que los desarrolladores de sistemas operativos y el software que se ejecuta en ellos hacen un gran trabajo al facilitar la instalación del software, realmente no necesita prestar atención a los detalles. Pero tener un poco de conocimiento sobre lo que sucede detrás de escena le dará tranquilidad sobre lo que se está instalando en su sistema, además de ayudarlo a resolver problemas.

¿Cuántos de los métodos de instalación de software anteriores has hecho? ¿Prefieres DEB o RPM? ¿O los paquetes de aplicaciones de Mac representan el pináculo de la facilidad de uso? ¿Alguna vez tuvo lugar una instalación de pesadilla? Háganos saber en los comentarios a continuación!




Nadie ha comentado sobre este artículo todavía.

Sobre tecnología moderna, simple y asequible.
Tu guía en el mundo de la tecnología moderna. Aprenda a usar las tecnologías y los dispositivos que nos rodean todos los días y aprenda a descubrir cosas interesantes en Internet.