GNU/Linux >> Linux の 問題 >  >> Linux

実際にカーネル圧縮の種類を示すにはどうすればよいですか?

ウィキペディアの引用

<ブロック引用>

05 という一般的な誤解がありますが、 プレフィックスは bzip2 圧縮が使用されることを意味します [...]、これは当てはまりません。

あなたの理論とは反対のことを言っています:19 2735 とは関係ありません 、および 48 50 で圧縮する必要はありません .実際、カーネルのデフォルトの圧縮モードはまだ 66 です 、そして 76 を使用する理由はほとんどありません 現在 — LZMA や 84 より遅い

特定のカーネル イメージにどのような圧縮が使用されたかを最終的に判断するには、カーネル イメージを実行したり、その構成を見つけたりする必要はありません。 スクリプト:

  • 画像内のコンプレッサーの署名を探します:

    • 107 :111
    • 123 :136
    • 142 :156
    • 163 :174
    • 189 :197
    • 206 :215
    • 228 :238
  • 見つけた署名のオフセットから始めて、画像からデータを抽出してみてください。

  • 結果 (存在する場合) が ELF イメージであることを確認します。

ここでは、圧縮タイプのみを報告するようにスクリプトを調整しました。 GPL 2 のみでライセンスされているため、ここには含めません。


カーネルがサポートしている圧縮方法を確認できます。選択できるのは 1 つだけなので、それがどれかを証明します。

ここでは、gzip を使用しています:

$ zgrep CONFIG_KERNEL_ /proc/config.gz
CONFIG_KERNEL_GZIP=y
# CONFIG_KERNEL_BZIP2 is not set
# CONFIG_KERNEL_LZMA is not set
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
# CONFIG_KERNEL_LZ4 is not set

Linux
  1. Linux – Linuxカーネルシステムコールの実装を見つける方法は?

  2. Linux –どのモジュールがカーネルを汚染しているかを判断する方法は?

  3. Linux –ターミナル経由でファイルシステムタイプを表示する方法??

  1. LinuxでMimeタイプのアプリケーションを見つける方法は?

  2. 内部カードリーダーの種類を取得するにはどうすればよいですか?

  3. Imgファイルのタイプを見つけてマウントする方法は?

  1. Linux カーネルが使用するキャッシュを消去する方法

  2. コンパイルされたカーネルモジュールのバージョンを見つける方法は?

  3. Linux VPS の仮想化タイプを調べる方法は?