Nein, es ist sehr unatomar. Dies kann zu großen Problemen führen, wenn Sie eine Datei gzipen, an die gelegentlich angehängt wird, z. B. ein Weblog.
Gzip liest, erstellt die GZ-Datei (mit dem aktuellen Zeitstempel), kopiert den Zeitstempel der Originaldatei und löscht dann das Original.
Bestimmte Unterbrechungen können eine verirrte, unfertige .txt.gz
Datei direkt neben der .txt
Datei hinterlassen . Dies führt dann zu einem Datenintegritätsproblem: Welches ist die eigentliche Datei? Ist das
- ein gzip, das fehlgeschlagen ist und ein unvollständiges / beschädigtes hinterlassen hat
.txt.gz
? Oder
- Ein Gunzip, der fehlgeschlagen ist und eine unvollständige / abgeschnittene
.txt
Datei hinterlassen hat ? Oder
- Eine erfolgreich gezippte Datei
txt.gz
und eine neu erstellte .txt
Datei?
(Letzteres passiert, wenn Sie in Ihr HTTP-Protokollverzeichnis gehen und gehen gzip *
).
Ich finde es im Allgemeinen ratsam, dies von Hand zu klären, es sei denn, Sie wissen genau, was passiert ist, weil Sie es gerade getan haben.
Glücklicherweise arbeitet gzip normalerweise seriell, sodass Sie dieses Problem nur mit einer Datei haben sollten. Das Parallelschalten von gzip ist keine gute Idee - obwohl die CPU stärker ausgelastet ist, wird die Festplatte überlastet, sodass mehrere Dateien gleichzeitig gelesen werden müssen, wodurch alle gzip-Dateien erheblich verlangsamt werden. SSD oder RAMdisk dagegen ...