On Fri, Feb 15, 2019 at 11:11:18AM +0100, Heiko Schlittermann wrote:
Christian Perle chris@linuxinfotag.de (Do 14 Feb 2019 23:11:11 CET):
ns2:~# file /var/log/syslog /var/log/syslog: ASCII text, with very long lines
Wenn eine Datei nur lang genug ist, erkennt file nicht, wenn sich irgendwo weiter hinten Binaermuell darin befindet. Probeweise habe ich meine /var/log/syslog (aktuell 3 MB) nach /tmp kopiert und in die Kopie ab Offset 1500000 eine Folge von 8000 Nullbytes geschrieben:
File schaut nur am Anfang nach magic patterns, aus dem Bauch würde ich sagen, daß schon nach ca 1k Schluß ist. Ich weiß nicht, ob es führende binäre Nullen „skippen“ würde, glaube es aber nicht.
man 1 file man 5 magic
da passiert viel "Magie" :-)
Default für die maximale Anzahl an Bytes ist laut der manpage von file 1 MiB, ob aber überhaupt soviel gelesen wird, hängt aber vom Dateityp ab.
In der Definition für libmagic kann man für bestimmte Tests Offsets angeben, wenn die magischen Bytes erst später in einer Datei kommen, für den Fall von oben wird das aber wahrscheinlich nicht helfen. Das Überspringen von Null-Bytes hab ich nicht gefunden.
Viele Grüße Jan