Au sens strict, un fichier binaire est un fichier qui n'est pas codé en tant que texte lisible par l'homme. Plus familièrement, un «binaire» fait référence à un fichier qui est compilé, du code exécutable, bien que le fichier lui-même ne soit pas exécutable (se référant moins aux autorisations qu'à la capacité à être exécuté seul; certains fichiers de code binaire tels que les bibliothèques sont compilés, mais indépendamment des autorisations, ils ne peuvent pas être exécutés par eux-mêmes). Un binaire qui s'exécute en tant qu'exécutable autonome est un "exécutable", bien que tous les fichiers exécutables ne soient pas des binaires (et il s'agit de permissions: des fichiers texte exécutables qui invoquent un interpréteur via un shebang comme le #!/bin/sh
sont aussi les exécutables).
Qu'est-ce qu'un paquet binaire?
Un package binaire dans un contexte Linux est un package d'application qui contient des exécutables (pré-construits), par opposition au code source.
Notez que cela ne signifie pas qu'un fichier de package est lui-même un exécutable. Un fichier de package est une archive (un peu comme un .zip
) qui contient d'autres fichiers, et un fichier de package "binaire" est un fichier qui contient spécifiquement des exécutables (même si, encore une fois, les exécutables ne sont pas nécessairement de véritables binaires, et en fait des packages binaires peuvent être utilisés pour bibliothèques compilées qui sont du code binaire, mais pas des exécutables). Cependant, le package doit être décompressé pour que vous puissiez accéder à ces fichiers.
Habituellement, cela est pris en charge par un système de gestion de paquets (par exemple apt / dpkg) qui télécharge le paquet et décompresse et installe les fichiers binaires à l'intérieur pour vous.
Quelle est la différence entre le paquet binaire et le paquet deb?
Il n'y en a pas - les .deb
paquets sont des paquets binaires, bien qu'il y ait des .deb
s qui contiennent la source à la place, ceux-ci sont généralement -src
ajoutés à leur nom.
J'exécute un paquet direct qui est au format "xyz.linux.run" Quels sont ces paquets?
Ce sont généralement des packages binaires auto-extractibles; ils fonctionnent en incorporant une charge utile binaire dans un script shell. "Auto-extractible" signifie que vous n'avez pas besoin d'appeler une autre application (comme un gestionnaire de packages) pour les décompresser et les utiliser. Cependant, comme ils ne fonctionnent pas avec un gestionnaire de packages, la résolution de leurs dépendances peut être plus un crapshoot et donc certains de ces packages utilisent des exécutables liés statiquement (ils ont toutes les bibliothèques nécessaires intégrées), ce qui gaspille un peu de mémoire lors de leur utilisation. .