Unterschied tar.gz - Programmen und exe - Programmen?

3 Antworten

.tar oder .tar.gz -Dateien sind keine Programme, es sind einfach nur Dateien, die nach bestimmten Vorschriften behandelt wurden.
.tar deutet auf ein Tar-Archiv hin, in das mehrere Dateien und Verzeichnisse "eingesperrt" wurden.
Damit kann man alle eingesperrten wie eine Datei betrachten, was u.a. das Versenden oder Archivieren stark vereinfacht.
Dabei ist nicht zwingend die Endung .tar vorgeschrieben. Als Mensch muss man sie aber später auch mal wieder erkennen, daher ist nicht sinnvoll, sie mit .exe zu kennzeichnen.
Wird so eine Tar-Datei zusätzlich mit gzip komprimiert, damit kann man die Anzahl der Bytes verringern, was bei Text-Dateien recht effektiv ist, bei ausführbaren Programmen weniger. Solche komprimierte Dateien erhalten dann noch die Endung .gz . Das Programm zum dekomprimieren ( gunzip) ist da pingelig, denn das ignoriert Dateien, die nicht auf .gz enden.

Ausführbare Dateien werden und müssen bei Windows mit .exe enden.
Ausführbare Linux-Dateien brauchen keine bestimmte Endung, wobei sie auch .exe oder .doc oder .jpg oder als Endung haben dürfen. Sinnvoll ist das nicht, weil man doch bei .jpg an eine Bild-Datei denken würde.

Wie unter Linux eine Programm-Datei anfängt ist nicht reglementiert. Wer  MZ gern hätte, der macht's einfach.

Woher ich das weiß:Berufserfahrung – openSuSE seit 1995

Unter linux sind eigentlich die dateiendungen ziemlich egal. Eventuell werden sie höchstens von manchen Programmen nichtmehr erkannt. Tar.gz ist übrigens ein Archiv ähnlich wie unter Windows zip oder rar. Exe dateien kannst du mit wine auf linux distributionen emulieren aber die linux programme haben im regelfall keine exe dateiendung -brauchen ja auch keine-

1.) tar.gz ist ein Archiv-Format für gepackte Dateien. Ähnlich wie .zip oder .rar

2.) Dateien, die auf .exe enden sind ausführbare Dateien (Programme) unter Windows

3.) unter Linux gibt es keine ausführbare Dateien, die auf .exe enden.

4.) Weder unter Windows, noch unter Linux fangen ausführbare Dateien zwingend mit "MZ" an

guenterhalt  12.10.2016, 19:36

3.) unter Linux gibt es keine ausführbare Dateien, die auf .exe enden.

das ist Quatsch. Für Linux erstellte Binaries (ausführbare Programme) können beliebige Namen haben. irgend-ein-name.exe gehört auch dazu. 

1.) tar.gz ist ein Archiv-Format für gepackte Dateien

hier werden zwei verschiedene Behandlungsmethoden angewendet.

gz zeigt an, dass eine Datei mit dem Kompressionsprogramm gzip behandelt (komprimiert) wurde.

tar zeigt an, dass eine oder mehrere Dateien in ein Archiv "eingesperrt" wurden. Aus mehreren Dateien (Verzeichnisse eingeschlossen) wird dann nur noch eine, ein Tar-Archiv.

1
Stadewaeldchen  13.10.2016, 08:28
@guenterhalt

das ist Quatsch. Für Linux erstellte Binaries (ausführbare Programme)
können beliebige Namen haben. irgend-ein-name.exe gehört auch dazu. 

Sagen wir besser: Sie könnten theoretisch so heißen, in der Praxis ist mir das in den letzten 18 Jahren nicht vorgekommen. Aus den Paketquellen installierte Programm-Dateien haben oft gar keine Dateiendung. Wenn mal eine Endung vorkommt, dann eher so was wie .run (z.B. bei propitären Treiber-Installationsroutinen) oder .sh bei Shell-Scripten. Hast du vielleicht ein konkretes Beispiel für ein natives Linux-Programm, das die Endung .exe hat? Würd mich der Neugier halber mal interessieren.

0
guenterhalt  13.10.2016, 14:39
@Stadewaeldchen

in der Praxis ist mir das in den letzten 18 Jahren nicht vorgekommen

ich habe nie behauptet, in den Repositories würde es Linux-Binaries mit der Extension .exe geben. Auch ich kenne keine, was aber nicht bedeutet, dass es keine gibt.
Ein einfaches mv /usr/bin/ls /usr/bin/ls.exe  reicht aus, um eins zu haben. Sinnvoll ist das aber nicht.  Bei "Eigenbau-Programmen" kann man das schon machen, um als Mensch eine schnelle Einordnung vorzunehmen.  An Stelle von .exe ist .bin vielleicht günstiger, um es  nicht als Windows-Programm zu betrachten.

An deiner Stelle hätte ich den Satz

unter Linux gibt es keine ausführbare Dateien, die auf .exe enden.

so nicht geschrieben, lesen doch hier auch völlig unerfahren Linux-Benutzer, die dann so einen Satz anders verstehen könnten.

unter Linux ist es nicht üblich, ausführbare (binäre) Dateien auf .exe enden zu lassen.

können wir uns so einigen?

0