Aktualisieren Sie Ihre /usr/share/file/magic
Datei.
#------------------------------------------------------------------------------ # pdf: file(1) magic for Portable Document Format # 0 string %PDF- PDF document >5 byte x \b, version %c >7 byte x \b.%c
Ich würde hexdump verwenden, um die ersten Bytes der PDFs zu betrachten, die nicht richtig erkannt werden.
Aktualisieren.
Wie Sie die Magic-Datei aktualisieren, hängt von Ihrem Betriebssystem und der Verteilung ab. Normalerweise verwenden Sie den Paketmanager. Zum Beispiel können Sie unter RedHat Linux und den nachfolgenden Downstream-Distributionen yum provides /usr/share/file/magic
herausfinden, welches Paket diese Datei enthält, und dann sudo yum update <packagename>
...
$ yum provides /usr/share/file/magic ... file-4.17-15.el5_3.1.x86_64 : A utility for determining file types. Repo : installed Matched from: Other : Provides-match: /usr/share/file/magic $ sudo yum update file Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: centos.mirroring.pulsant.co.uk * extras: centos.mirroring.pulsant.co.uk * rpmforge: nl.mirror.eurid.eu * updates: centos.mirroring.pulsant.co.uk Setting up Update Process Resolving Dependencies --> Running transaction check ---> Package file.x86_64 0:4.17-21 set to be updated rpmforge/filelists_db | 5.9 MB 00:08 updates/filelists_db | 1.9 MB 00:03 --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Updating: file x86_64 4.17-21 base 320 k Transaction Summary ================================================================================ Install 0 Package(s) Upgrade 1 Package(s) Total download size: 320 k Is this ok [y/N]: y Downloading Packages: file-4.17-21.x86_64.rpm | 320 kB 00:02 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : file 1/2 Cleanup : file 2/2 Updated: file.x86_64 0:4.17-21 Complete!
Wenn Sie möchten, können Sie die magic
Datei stattdessen mithilfe eines Texteditors aktualisieren, nachdem Sie die Beispieldokumentdateien gelesen man magic
und verwendet haben hexdump _C -n 20
, um Signaturen für sich selbst zu ermitteln.
Wenn Sie dies tun, ist es möglicherweise ratsam, zuerst eine separate Magic-Datei zu erstellen und die Option file
s -m magicfile
zum Testen zu verwenden.
PS
$ file --mime `locate *.pdf` /usr/share/doc/bind-9.3.6/arm/Bv9ARM.pdf: application/pdf /usr/share/doc/libtheora-1.0alpha7/Theora_I_spec.pdf: application/pdf /usr/share/doc/prelink-0.4.0/prelink.pdf: application/pdf /usr/share/doc/samba-3.0.33/Samba3-ByExample.pdf: application/pdf /usr/share/doc/samba-3.0.33/Samba3-Developers-Guide.pdf: application/pdf /usr/share/doc/samba-3.0.33/Samba3-HOWTO.pdf: application/pdf /usr/share/doc/speex-1.0.5/manual.pdf: application/pdf /usr/share/ghostscript/8.70/examples/annots.pdf: application/pdf /usr/share/gimp-print/doc/users-guide.pdf: application/pdf
Möglicherweise können Sie auf eine File-Sharing-Website Dateien hochladen, die file
nicht korrekt identifiziert werden können.