戻る

前へ| 次へ

initrd 再構成

まあそのまま 縮小 しても良いのでしょうが

領域 確保

出来上がった というか色々変更した initrd の 内容を 新しく作成した領域に コピー します。 まあ容量の関係 ということです。そうして 元の initrd が ext2 で したので ファイルシステム を ext2 にて作成します。

# cd ../../
# umount qmt/
# ls
initrd  qmt/
# dd if=/dev/zero of=DEVICE bs=1k count=4000
4000+0 records in
4000+0 records out
# mke2fs -m 0 -i 2000 DEVICE
mke2fs 1.34 (25-Jul-2003)
DEVICE is not a block special device.
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
2048 inodes, 4000 blocks
0 blocks (0.00%) reserved for the super user
First data block=1
1 block group
8192 blocks per group, 8192 fragments per group
2048 inodes per group

Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
# mkdir mtdest
# mount -o loop DEVICE mtdest/
# ls -a mtdest/
./  ../  lost+found/
# rm -r mtdest/lost+found/

これで 新しい 領域が 確保 された事になります。

ファイルのコピー

色々改悪した initrd の 内容を 新しい領域に コピー します。

#  mount -o loop initrd qmt/
# df | sed 2d
Filesystem           1k-blocks      Used Available Use% Mounted on 
/home/oboot/003_final_root/a_files/DEVICE
                          3739         1      3738   1% /home/oboot/003_final_root/a_files/mtdest
/home/oboot/003_final_root/a_files/initrd
                          3745      2835       910  76% /home/oboot/003_final_root/a_files/qmt
   /* まあ こういう具合になっています そこでコピー を開始します。 */
# cd mtdest/
# cp -dpR ../qmt/* .
# cd -
/home/oboot/003_final_root/a_files
# df | sed 2d
Filesystem           1k-blocks      Used Available Use% Mounted on
/home/oboot/003_final_root/a_files/DEVICE
                          3739      2835       904  76% /home/oboot/003_final_root/a_files/mtdest
/home/oboot/003_final_root/a_files/initrd
                          3745      2835       910  76% /home/oboot/003_final_root/a_files/qmt
# umount mtdest/
# umount qmt/

圧縮 gzip -v9

とまれ コピー は終わりました。圧縮するので オリジナルを 退避します。

# mv initrd type01_initrd 
# dd if=DEVICE bs=1k | gzip -v9 > initrd.gz
4000+0 records in
4000+0 records out
 68.9%
# ls
DEVICE  initrd.gz  mtdest/  qmt/  type01_initrd

rootdsk.pcmcia

置き換え

オリジナルの initrd.gz を 新しく作成した initrd.gz で 置き換えます。

# cd ../
# mount -o loop rootdsk.pcmcia pmt/
# ls pmt/
initrd.gz
# mv pmt/initrd.gz .
# mv initrd.gz ORG_initrd.gz /*  退避させます。    */
# ls a_files/
DEVICE  initrd.gz  mtdest/  qmt/  type01_initrd
# mv a_files/initrd.gz pmt/ /*  入れ換え 完了です。  */
# df | sed 2d
Filesystem           1k-blocks      Used Available Use% Mounted on
/home/oboot/003_final_root/rootdsk.pcmcia
                          1421      1250       171  88% /home/oboot/003_final_root/pmt
# umount pmt/
# cp rootdsk.pcmcia rootdsk.pcmcia_type01 /*  まあ 保存用のコピーを 作成  */

これで 準備 完了 動作するか否か は別問題です。

rootdsk.pcmcia 改悪版 作成

へたら 改悪版 rootdsk.pcmcia を 作成します。 近年 フロッピー ディスク 装置自体 無いようですが 装置もディスクも 生産を 止めるようです。

# dd if=rootdsk.pcmcia_type01 of=/dev/fd0 bs=1k
1440+0 records in
1440+0 records out

あるうちは使用しましょう。

にゃんたろう 拝!

2010年 5月 3日 (月) 21:37:32 JST 作成


前へ| 次へ

戻る

Copyright © 2006.-2010. nyantarou All Rights Reserved.