squashfs がディスク ブロック番号をファイル システム ブロックにマップする方法を誰か教えてください。基本的に私は squashfs の read_blocklist() について言っています。
ありがとう、カピル
squashfs がディスク ブロック番号をファイル システム ブロックにマップする方法を誰か教えてください。基本的に私は squashfs の read_blocklist() について言っています。
ありがとう、カピル
通常のファイルの squashfs メタデータは、おおよそ次のようになります。
===== ヘッダー start_block: ファイル内の最初のブロックの位置 file_size: ファイルのサイズ (バイト単位) ... ===== ブロックリスト size0: 最初のブロックの 32 ビット ヘッダー サイズ1 サイズ2 ... =====
ブロック ヘッダーには、ブロックの圧縮サイズが含まれます。したがって、start_block と先行するすべてのブロックのサイズを合計することで、特定のブロックの位置を計算できます。
純粋なルビーの squashfs パーサーをいじってみると役立つかもしれません: https://github.com/vasi/squash.rb