chromabox / initrampicker

initramfs(cpio) taken from kernel zImage

Home Page:https://github.com/chromabox/initrampicker/wiki

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

initrampicker
作った人:chromabox


-------------------------------------------------------------------------------
・これはなに?

カーネルのzImageからinitramfs(cpio形式)を抜き出します。
とある目的の為に製作しました。
LZO、GZIP、LZMAの3形式に対応しています。


-------------------------------------------------------------------------------
・前提

Linuxで動作確認していますのでLinuxが望ましいです。
また、圧縮の展開にlzopとgunzipとlzmaを使いますのでこれらのコマンドが必要です。

もしかしたらこの2つのコマンドさえあれば、Windows(Cygwin)、Macでも動くかも。

-------------------------------------------------------------------------------
・作り方

Linuxとかcygwinで
$ make

すればOK。

・つかいかた

$ initrampicker zImageファイル名 出力ファイル名

としてください。

[例示]
$ initrampicker zImage_l cpiotes.cpio
initram picker 1.00.00
check zimage file...
zimage LZO compressed.
decompress file...
lzop: tempdec00.lzo: warning: ignoring trailing garbage in lzop file
lzop -d  tempdec00.lzo 
 returncode 512
decompress success.
check cpio image file...
pickup cpio file... 
found end marker file...
pickup cpio success.

$ cpio -itvn < cpiotes.cpio  (確認の意味でのリスト表示)
drwxrwxr-x  12 0        0               0 Jun 14 16:09 .
drwxrwxr-x   2 0        0               0 Jun 14 16:09 data
-rw-rw-r--   1 0        0               0 Jun 14 16:09 data/.gitignore
drwxrwxr-x   2 0        0               0 Jun 14 16:09 tmp
-rw-rw-r--   1 0        0               0 Jun 14 16:09 tmp/.gitignore
-rw-rw-r--   1 0        0            2009 Jun 14 16:09 recovery.rc
…

$ cpio -idmv --no-absolute-filenames < cpiotes.cpio (この位置に展開。--no-absoluteほげほげは絶対指定すること)
.
data
data/.gitignore
tmp
tmp/.gitignore
recovery.rc
sys



-------------------------------------------------------------------------------
・履歴
ver 1.01.00 
  訳あってlzmaに圧縮されたイメージにも対応。
  lzmaは圧縮率が良いみたい。
  (lzoだと6M強のが4Mになる。最適化しまくりのzImageだとお世話になることもあるかと。。)

ver 1.00.00 (README変更)
  cpioの展開の説明に「--no-absolute-filenames」追加。
  このオプションを追加しないとアーカイブに絶対パス含まれてる場合色々まずい

ver 1.00.00 
  必要になるかもしれないので作成。

About

initramfs(cpio) taken from kernel zImage

https://github.com/chromabox/initrampicker/wiki


Languages

Language:C 100.0%