Je ne sais pas quelle est l'extension exacte du fichier exécutable. Est-ce .deb
ou .tar.gz
?
executable
utilisateur54905
la source
la source
.exe
extensions ne sont pas nécessaires pour les exécutables natifs. Le premier explique le contenu de/dev
; ce dernier est dû aux autorisations d' exécution et à l'examen de l'intérieur d'un fichier pour déterminer le type de fichier.Réponses:
Il n'y a pas d'extension de fichier standard telle qu'un fichier ".exe" dans Windows.
Sous Linux, presque tous les fichiers peuvent être exécutables. La fin du fichier décrit simplement (mais pas nécessairement) quoi ou comment un fichier est "exécuté".
Par exemple, un script shell se termine par .sh et est "exécuté" via le shell bash.
Dans votre question, vous demandez les fichiers .deb et .tar.gz. Bien, le fichier .deb installe un logiciel sur votre système (soyez prudent!). Le fichier .tar.gz est un fichier compressé ressemblant à un fichier .zip que vous pourriez connaître. Les fenêtres.
la source
.deb
fichiers ne sont généralement pas des exécutables: ce ne sont ni des scripts ELF ni des scripts "elle-bang" et il est peu probable qu'ils soient enregistrés avec binfmt. Même avec des autorisations exécutables, le noyau ne saurait pas quoi en faire. Le fait que votre explorateur de fichiers puisse être enregistré pour ouvrir des fichiers avec une application particulière basée sur l'extension n'a rien à voir avec le fait qu'ils soient exécutables (en termes d'autorisation de fichier ou d'exécution du format binaire du noyau)..deb
ressemble plus à un.msi
fichier qu’à un.exe
fichier.Je résumerais le système de la manière suivante:
Tout fichier commençant par
#!
(appelé shebang ou hashbang) sur la première ligne est simplement un script. Le chemin après le shebang est un chemin d'accès au programme (exécutable) qui doit analyser le script, en supposant que l'autorisation d'exécution a été définie sur le fichier avecchmod a+x filename
.Donc, répondez à votre question initiale, il n’ya pas de prolongation, ou rarement, c’est
.elf
ou.bin
.Cela a été fait Communauté Wiki, donc tout le monde peut ajouter une entrée.
la source
Le concept d'un exécutable est différent sous unix / linux de Windows.
les fenêtres
Tout ce qui se termine
.exe
ou.com
devient un fichier exécutable.Linux / Unix
Chaque fichier a un bit exécutable, donc tout fichier peut être exécuté, contrairement à Windows. Pour voir si un fichier est exécutable, vous pouvez vérifier ses propriétés (onglet Autorisations), ou même les voir marqués dans le terminal (ils sont tous marqués d'un *).
Même les fichiers texte (comme les scripts de shell) peuvent avoir leurs bits exécutables et être exécutés comme tel.
la source
#!/bin/bash
par exemple) situé au début des ensembles de fichiers, quel programme exécute le fichier.man magic
, ELFman elf
et ligne de hachageman execve
)Pour savoir ce que le système d'exploitation UNIX considère comme un type de fichier particulier, utilisez la commande file:
Dans l'exemple ci-dessus, je donne le chemin du programme 'ls', que vous remplaceriez par le chemin de votre fichier.
Un fichier de script ressemblerait à ceci:
Un fichier texte aléatoire:
Un fichier d'archive:
Il est même assez intelligent pour identifier correctement un programme Windows, si vous en aviez un sur votre machine UNIX:
Et quand il ne peut pas comprendre ce qu'est un fichier (mais est capable de l'ouvrir), il l'appelle data:
la source
L'exécution de fichiers sous Linux n'est pas du tout liée au nom ou à l'extension du fichier. Tout fichier peut potentiellement être exécuté, à condition qu'il soit géré par le
binfmt
mécanisme du noyau (et que ses autorisations exécutables soient définies).Le format le plus courant pour les exécutables est ELF , bien que certains noyaux puissent être compilés pour prendre en charge l’ancien
a.out
format. (Pour plus de détails techniques,binfmt_elf.c
c'est où chercher.)Un autre mécanisme commun est le système "Shebang" , géré par
binfmt_script
, qui cherche#!/path/to/interpreter
au début du fichier.binfmt_misc
permet l'enregistrement d'autres gestionnaires, comme documenté ici .Si vous avez envie de programmer un peu le noyau, vous pouvez même écrire le vôtre .
Bien que cela ne soit pas directement lié, la
file
commande devrait vous indiquer si un fichier est un exécutable ELF ou autre chose.La convention de dénomination n'a rien à voir avec le statut d'exécutable d'un fichier (sauf lorsqu'il est utilisé pour l'
binfmt_misc
enregistrement). Ce ne sont que des conventions. En règle générale, un.exe
fichier sous Linux peut être une application mono et obtenir l'.exe
extension comme une convention provenant du monde Windows / .Net.L’autre aspect qui peut arriver lorsque vous souhaitez "exécuter" un fichier est de disposer de l’explorateur de fichiers avec lequel vous utilisez les extensions de registre afin de pouvoir lancer un programme permettant d’ouvrir ces fichiers. C’est ce qui se produirait si vous double-cliquez sur un
.txt
,.tar.gz
ou.deb
, par exemple: les fichiers ne sont ni exécutables, ni exécutés, mais ce que vous utilisez pour double-cliquer permet de choisir quel exécutable lancer pour ouvrir ces fichiers.la source
Dans Windows, un fichier .exe est un fichier informatique qui se termine par l'extension ".exe", couramment appelé fichier exécutable. Quand on clique sur un fichier exe, une routine intégrée exécute automatiquement le code qui peut activer plusieurs fonctions. Les fichiers EXE sont couramment utilisés pour installer des fichiers dans le système d'exploitation Windows.
En outre, vous disposez de fichiers .tar, généralement appelés fichiers compressés. Les versions Linux, telles qu'Ubuntu, utilisent les fonctionnalités de manière évidente dans diverses distributions logicielles, la plupart du code source du logiciel étant disponible au format tar.gz. Depuis lequel vous pouvez utiliser ce fichier tar. gz est une forme du format bien connu .tar, utilisé pour l'archivage.
Dans Ubuntu, en revanche, le format de fichier .deb est celui qui se comporte le plus comme le fichier .exe dans Windows. Lorsque vous l'ouvrez, le centre logiciel gère son code et installe le programme qu'il contient, tel qu'un fichier exécutable.
Même si vous pouvez toujours installer des logiciels et des packages à partir du format source (tar.gz), le format le mieux adapté pour l’installation des logiciels est celui .deb. Prenez comme exemple le Centre de logiciel Ubuntu; toutes les applications qu’il contient sont en fait des fichiers .deb. En général, sous Linux, presque tous les formats de fichiers (y compris les fichiers .deb et tar.gz, ainsi que les très connus fichiers bash .sh) peuvent se comporter comme des fichiers exécutables. pouvez installer des packages ou des logiciels avec cela.
la source
Il n'y a pas d'équivalent à l' extension de fichier exe dans Windows pour indiquer qu'un fichier est exécutable. Au lieu de cela, les fichiers exécutables peuvent avoir n'importe quelle extension et n'ont généralement aucune extension .
Linux / Unix utilise les autorisations de fichier pour indiquer si un fichier peut être exécuté. Plus précisément, une autorisation d' exécution de fichier indique au système que l' exécution de ce fichier est autorisée . Cependant, l'absence de cette autorisation n'indique pas que le fichier n'est pas un fichier exécutable. simplement que l'utilisateur concerné n'est pas autorisé à essayer de l'exécuter. De même, la présence de cette autorisation n'indique pas toujours que le fichier est un exécutable valide.
Linux / Unix a un format de fichier exécutable binaire appelé ELF, équivalent aux formats exécutables binaires PE (Windows) ou MZ / NE (DOS) portant généralement l'extension .exe.
Cependant, d'autres types de fichiers peuvent être exécutables, en fonction du shell. Généralement, si vous essayez d'exécuter un fichier que le système ne reconnaît pas comme un exécutable binaire (par exemple, le format ELF), il est interprété par l'interpréteur de shell actuel. Cela produit le même effet que les fichiers de commandes sous Windows ou DOS, sauf que, là encore, ce n'est pas l'extension qui identifie son type ni la façon de l'exécuter.
Les fichiers shell peuvent éventuellement commencer par un hashbang (les deux premiers caractères du fichier sont
#!
suivis d'un chemin d'accès à un interprète), auquel cas, plutôt que d'interpréter le reste du fichier avec l'interpréteur de shell actuel, il peut lancer un interpréteur de commandes alternatif exécuter le fichier. Ainsi, vous pouvez avoir un script dans n’importe quel langage interprété et le faire exécuter avec le bon interprète lorsque vous essayez d’exécuter le script.la source
Les fichiers EXE et DLL sont des fichiers exécutables portables. Celles-ci sont basées sur les fichiers unix PE / COFF.
Lisez http://en.wikipedia.org/wiki/Portable_Executable pour plus d'informations.
Dans Ubuntu, vous n’avez pas d’extension spécifique pour un fichier exécutable. Ce sont généralement des fichiers nommés d'après l'application à laquelle ils se rapportent.
Le facteur important est que ces fichiers ont le bit exécutable défini. Si vous avez un terminal couleur, vous remarquerez qu'il s'agit d'une couleur différente lors de l'utilisation de la liste
ls
.Dans le système de fichiers Unix, les fichiers exécutables binaires sont généralement stockés dans leur propre emplacement.
alors que d’autres ressources d’application peuvent être stockées dans / usr / lib / ou / usr / share /
Un fichier deb correspond plus correctement à un fichier msi dans Windows (c'est-à-dire un programme d'installation de paquet).
Généralement, les fichiers tar.gz ou bz2 contiennent le code source à partir duquel une application peut être construite.
la source
Ubuntu est un fichier sans extension. En général, certaines extensions telles que .bin, .run, etc. y sont ajoutées pour des raisons de confidentialité.
Il existe plusieurs alternatives pour le fichier .bat (presque tous les fichiers), la plus populaire est .sh
.deb est juste une archive de fichiers binaires (similaire à .msi dans Windows) avec les standards Debian
.tar.gz est juste un format d’archivage commun utilisé dans Ubuntu
la source
N'importe quel nom de fichier peut être défini sur exécutable indépendamment de son extension, mais le fichier doit avoir les permissions appropriées. L'autorisation peut être donnée en cliquant avec le bouton droit de la souris sur le fichier dans Nautilus, en cliquant sur Propriétés et en cochant la case "Autoriser l'exécution du fichier en tant que programme":
la source
.deb Paquet Debian pour Linux et les archives TAR compressé avec l’algorithme de compression GNU zip (gzip) standard; contient un ou plusieurs fichiers compressés; couramment utilisé sur les systèmes d'exploitation Unix pour conditionner les fichiers, les programmes et les programmes d'installation.
REMARQUE : Les fichiers TAR.GZ doivent d'abord être décompressés, puis développés à l'aide d'un utilitaire TAR. Ils incluent à la fois les types de fichiers .TAR et .GZ.
la source