Así es como instaladores de software funciona en windows, macos y linux

Los sistemas operativos modernos le proporcionan métodos fáciles de instalar nuevas aplicaciones. Estos incluyen paquetes de instalación automatizada, así como los comandos que instalan muchos bits de software a la vez. Pero lo que realmente sucede, al ejecutar este instalador o emitir esa orden?

Vamos a echar un vistazo a cómo el software se instala en los tres principales plataformas de escritorio: Windows, MacOS y Linux.

Los métodos de instalación del software

Hay algunas maneras diferentes, usted puede obtener nuevas aplicaciones que se ejecutan en el ordenador. Con el fin de aumentar la complejidad, estos incluyen:

  • Compilación de software - La construcción de la aplicación de su código fuente. Sólo para los usuarios más técnicos.
  • Archivos de software - descompresión de archivos tales como archivos ZIP y ejecutar el programa desde donde lo extrajo. Esto puede requerir algún ajuste adicional.
  • Paquetes de instalador - Búsqueda de un archivo de instalación y (doble) hacer clic para iniciar la instalación.
  • Administradores de software / Tiendas - Selección de la aplicación de una interfaz agradable y haciendo clic en un botón grande “Instalar”. ¡Es magia!

En este artículo vamos a examinar los paquetes de instalación, ya que la mayoría de los administradores de software / Tiendas en última instancia, se ocupan de este tipo de paquetes detrás de las escenas de todos modos. Para las principales plataformas de escritorio de hoy - Windows, MacOS y Linux - vamos a ver lo que constituye uno de estos paquetes, y lo que se produce al instalar ellos.

Microsoft Windows

Los paquetes de instalación es muy probable que venir a través para Windows vienen en una de sus dos principales versiones. Los archivos ejecutables (EXE) puede configurar el programa haciendo el trabajo pesado de colocar los archivos en la ubicación correcta y realizar actualizaciones del Registro de Windows. paquetes de Windows Installer (MSI) se suman a esto proporcionando servicios estandarizados tales como desinstala.

Puede inspeccionar el contenido de archivos EXE o MSI por abrir el archivo comprimido con 7-Zip. Si lo usa para mirar propio instalador EXE del 7-Zip, encontrará una serie de diferentes archivos dentro de:7zip - un programa libre para Descomprimir Archivos Formatos poco frecuentes7zip - un programa libre para Descomprimir Archivos Formatos poco frecuentesLee mas

Paquetes de software de la anatomía contenidos 7zip

Aunque estos archivos tienen ninguna carpeta que contiene dentro del instalador, el desarrollador se han señalado cada uno en un directorio de destino. La mayoría de ellos terminan en el “ubicación de instalación predeterminada” - la misma sugerencia que normalmente se observa para una carpeta como “C: Archivos de programa [nombre del programa]” o “C: Archivos de programa (x86) [su nueva aplicación ] “.

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

software de registro de la anatomía paquete installshield

Con InstallShield, los archivos de aplicaciones y otras personalizaciones envolverse en una setup.exe archivo. Al abrirlo con 7-Zip mostrará que el interior es un paquete MSI que, cuando se ejecuta, se parece a la instalación de todo lo que estamos acostumbrados. Vamos a repasar lo que sucede durante este proceso.

paquete de software anatomía installshield instalar

Vídeo: How to Run Mac OS X in Linux

Proceso de instalación de Windows

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

  1. Un instalador puede contener otros archivos, como la mencionada MSI o formatos como CAB. Como primer paso, el instalador extraerá éstos en una ubicación temporal.
  2. A continuación, se comprobará que todas las dependencias que han sido establecidos están disponibles. Si falta algo que lo descargará si es posible, o salir del instalador con un error si no.
  3. Si se requieren las dependencias, que se instalarán en primer lugar utilizando cualquier instalador vienen con (Ha tenido alguna vez una instalación interrumpida para .NET Framework?).
  4. A continuación, el programa de instalación comenzará a copiar los archivos de la aplicación y colocarlos en su posición correcta.
  5. Si el desarrollador ha configurado ningún acceso directo, el instalador creará y el punto de la ruta de instalación real (recuerde, puede cambiar este cuando el instalador se ejecuta).
  6. Los cambios en el registro de Windows, si lo hay, será ejecutado.
  7. Por último, el instalador puede solicitar al usuario que introduzca 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 en la lista. Vamos a echar un vistazo a la instalación de software en MacOS.

apple macOS

instaladores de Windows tienen mucho que hacer bajo el capó. Pero si usted ha usado un Mac sabe que la instalación de una aplicación es a menudo tan fácil como descargar una copia de la aplicación, la apertura de la imagen de disco (DMG), y siguiendo algunas instrucciones fáciles. A veces, incluso la descarga le proporciona un icono de “Arrastre aquí!”.Cómo instalar & Quitar software Mac: 5 sencillos métodosCómo instalar & Quitar software Mac: 5 sencillos métodosAl cambiar a un Mac y llegar a enfrentarse con los conceptos básicos? Se pregunta cómo instalar el software desde la línea de comandos? Envejeció aplicaciones de Windows que simplemente hay que ejecutar en el equipo de Apple?Lee mas

Vamos a bucear en el haz de APP, así como su contraparte el instalador PKG.

Estructura macOS Paquete

El archivo de la aplicación en la superficie es de hecho, más simple que la de Windows por dos razones principales. En primer lugar, se trata de una carpeta estándar. La única diferencia es que termina con un sufijo “.APP”. Si descarga una de ellas en Windows, verá que muestra al igual que cualquier otra carpeta de archivos en el Explorador. En segundo lugar, la demanda de aplicación Archivos que absolutamente todo el programa requiere se incluye. No hay preocupación por perder dependencias con estos tipos de instaladores.

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

carpetas de aplicaciones de Mac

Por el contrario, el formato PKG es una combinación de un tipo Windows instalador con una estructura similar a Unix. La aplicación 7-Zip también se abrirá un archivo PKG, que se comprime en XAR formato. Dentro es uno o más Carga útil archivos, que es también un archivo. Para extraer su contenido utilizan la siguiente cadena de comandos (cpio es un formato de archivo, así como un programa para la manipulación de ellos) en un terminal de Mac o Linux:3 de tipo Unix sistemas operativos que no son Linux3 de tipo Unix sistemas operativos que no son LinuxRecientemente, la gente empezó a confundir "UNIX" con "Linux." Linux fue influenciado por UNIX, pero los sistemas UNIX no tienen relación con Linux. Aquí están algunos sistemas basados ​​en UNIX importantes para saber más.Lee mas

gato Carga útil | gunzip -dc | -i cpio

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

En el siguiente ejemplo, he utilizado convertidor de documentos, Pandoc. Incluye un binario en / / Local / bin usr y algunos documentos / Usr / local / share / man. ¿Cómo estas cosas consiguen realmente en su lugar? Vamos a echar un vistazo a cómo cada una de estas instalaciones en realidad a su Mac.

estructura mac PKG

Vídeo: Así funciona Vivaldi, el navegador diferente para Windows, Mac y Linux

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

Proceso de instalación macOS APP

Al colocar ese archivo APP en la carpeta de aplicaciones, que en realidad no cambia casi nada. Recuerde, todo lo necesario para ejecutar el programa es autónomo. La única diferencia con un arrastrar y soltar estándar es que el archivo “Info.plist” se ha registrado en el sistema.

copia aplicación mac

Esto configurará cosas tales como qué ejecutable se llama cuando se inicia la aplicación, el icono que se muestra, los tipos de archivos que soporta, y más. Pero por lo demás su aplicación (por ejemplo, el paquete de APP para el Editor de Atom se muestra a continuación) ya está listo para su uso.

Mac App instalado

Proceso de instalación PKG macOS

Al abrir un archivo PKG, por el contrario, pone en marcha un programa de instalación “del mago-estilo”. Para programas simples, esto es típicamente una componente del instalador, que normalmente pasa a través de los siguientes pasos:

  1. Corre el preinstalar guión.
  2. Desempaquetar el contenido “carga útil” a la máquina.
  3. Corre el postinstall guión.

mac PKG instalar

Los desarrolladores pueden entonces combinar múltiples componentes en un solo archivo de producto instalar. Esto añade opciones como mostrar un EULA para el usuario que acepte, la recogida de información por parte del usuario, y seleccionar los componentes a instalar. Mientras tanto, el instalador de Apple se encarga de todos los detalles de la instalación de los componentes necesarios de una en una en el fondo.

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

Ubuntu y Fedora Linux

ah, DEB frente RPM. Una de las grandes guerras de la llama, superado solamente por los gustos de vi versus emacs o KDE contra GNOME. Sin embargo, estos formatos son más similares que diferentes. Vamos a ver.Cómo instalar el software en Linux: El paquete Formatos ExplicaciónCómo instalar el software en Linux: El paquete Formatos ExplicaciónQue haya cambiado a Linux, y desea instalar algún software. Sin embargo, los gestores de paquetes difieren en función de su distribución. Entonces, ¿qué aplicaciones se puede descargar e instalar? Todo está en las siglas.Lee mas

El paquete Linux Estructura de archivos

Para echar un vistazo en el interior de un archivo DEB, puede intentar un gestor de archivos GUI. De lo contrario, utilice el Arkansas mando. El siguiente comando entró en la terminal va a extraer el contenido de un paquete Debian:

ar nombre de-su-paquete.deb -x

Tres archivos van a salir de esta:

  • control.tar.gz - Esto a su vez contiene un archivo principal, Controlar, que contiene metadatos acerca del paquete, como es el nombre oficial, la versión y dependencias. También puede contener otros archivos tales como secuencias de comandos que se ejecutan durante los archivos de instalación de configuración de proceso o por defecto.
  • data.tar.gz - Los archivos que componen la aplicación en sí son en este archivo TAR.GZ. Todo, incluyendo binarios, documentación y configuraciones por defecto son aquí. En el ejemplo de paquete kde-servicio-menú-encfs_0.5.2_all.deb, que contiene los archivos y directorios, como se muestra en la siguiente imagen.
  • debian-binary - Este es un archivo que define qué versión del formato de paquetes de Debian el archivo está utilizando. Para las distribuciones modernas esto sólo contienen “2.0” en una sola línea.

de control principal deb

En Fedora, puede utilizar la rpm2cpio y cpio comandos para extraer un paquete RPM y navegar por sus archivos:

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

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 fuente (.src.rpm) correspondiente a su versión binaria, a continuación, utilizar el mismo comando anterior en ese archivo. Incluido en que será un archivo de especificación que contiene muchos de los mismos elementos que la Controlar presentar en un paquete Debian.

Ahora que tenemos una comprensión de la estructura de paquetes de Linux, vamos a explorar lo que sucede cuando en realidad se los instala.Cómo instalar el software en Linux: El paquete Formatos ExplicaciónCómo instalar el software en Linux: El paquete Formatos ExplicaciónQue haya cambiado a Linux, y desea instalar algún software. Sin embargo, los gestores de paquetes difieren en función de su distribución. Entonces, ¿qué aplicaciones se puede descargar e instalar? Todo está en las siglas.Lee mas

Instalación de paquetes de Linux

Al instalar los paquetes de formato, sin importar el front-end, un conjunto de pasos similar sucede:

  1. El sistema de paquetes examina el contenido del paquete para determinar si existen dependencias que faltan. Dependiendo de la herramienta, o bien que le avise, o un conjunto de descargarlos.
  2. Si los paquetes contienen pre-instalar scripts o comandos que se ejecutan siguiente.
  3. A continuación, el sistema de paquetes realidad extrae los archivos del paquete.
  4. Con los archivos en su lugar, después de la instalación de scripts se ejecuten.
  5. Por último, el paquete se ha registrado en la base de datos interna con sus metadatos, por lo que se puede desinstalar más tarde.

Saber cómo se instala el software es una buena cosa

Debido a que los desarrolladores de sistemas operativos y el software que se ejecuta en ellos hacen un gran trabajo de hacer la instalación de software fácil, que en realidad no es necesario prestar atención a los detalles. Sin embargo, tener algún conocimiento acerca de lo que está sucediendo detrás de las escenas le dará un poco de tranquilidad sobre lo que se está instalado en el sistema, así como para ayudar a solucionar problemas.

¿Cuántos de software por encima de los métodos de instalación que has hecho? ¿Prefiere DEB o RPM? ¿O es que los paquetes de aplicaciones de Mac representan el pináculo de la facilidad de uso? Alguna vez había una pesadilla install pasar? Háganos saber en los comentarios!

Artículos Relacionados