file(1) 5.28 バイトのパラメータを使用すると、パラメータが無効です。

file(1) 5.28 バイトのパラメータを使用すると、パラメータが無効です。

バージョン 5.26 では、カスタムfile(1)バイト読み取り制限のサポートが追加されました。

2016-03-31  13:50  Christos Zoulas <[email protected]>

    * make the number of bytes read from files configurable.

を使用して-Pバイト制限を設定できる必要があります。ただし、Invalid argumentこのパラメーターを使用するとエラーが発生します。たとえば、次のようになります。

$ file -i --mime-encoding -P bytes=15000 myinput
file: compiled magic version [528] does 
file: Can't set bytes Invalid argument

関係があるかどうかはわかりませんが、ファイルを実行するとバージョン差の警告も表示されます。file: compiled magic version [528] does not match with shared library magic version [524]

私は5.28ファイルを使用しています。

$ file -v
file-5.28
magic file from /etc/magic:/usr/share/misc/magic

編集する私が従ったインストールプロセスは次のとおりです。

  1. ./configure
  2. make
  3. make check- エラーなし
  4. sudo make install
  5. make installcheck- エラーなし

答え1

削除することを忘れないでくださいlibmagicソースからインストールする前にシステムからfile

$ sudo apt-get purge libmagic1 file

次に、以下をインストールしますfile

$ wget ftp://ftp.astron.com/pub/file/file-5.28.tar.gz
$ tar xvzf file-5.28.tar.gz
$ cd file-5.28
$ ./configure --prefix=/usr
$ make
$ sudo make install

これは私にとって効果的です。

$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.1 LTS
Release:        16.04
Codename:       xenial
$ file -i --mime-encoding -P bytes=15000 $(which file)
/usr/bin/file: application/x-executable; charset=binary

関連情報