2025
01
18
2012
05
28
initrdの展開・編集・再構築
「ubuntuのLANドライバ変更してー」と言われ、e1000eの最新ドライバをmake, make installみたいな よくあるやり方で入れたつもりで再起動したが変更できてない!ってことが起きました。 どうやらinitrdをいじる必要があるようです。。ということでまとめ。 ※initrd はLinuxカーネルのブート時によく使われる一時的なファイルシステムの一種。 "initial ramdisk" の略。 真のルートファイルシステムをマウントできるようになる前にファイルシステムを 必要とする場面で使用される。
initrdの展開
su # とりあえずrootになる cd mkdir sagyou # /root/sagyouを作る cp /boot/initrd.img~ /root/sagyou/ # コピーしてくる gunzip < initrd.img~ | cpio -i # ←ここが肝 rm initrd.img~ # 展開した元のファイルは削除 # 以上でinitrdは展開されました。
initrdの編集
# たとえば、e1000eのドライバを変えるなら /root/sagyou/lib/modules/`uname -r`/kernel/drivers/net/e1000e/ の中のe1000e.koを変更するとかします。
initrdの再構築
find . | cpio -o -H newc | gzip -c > ./initrd-new # initrd-newの部分は自由 (※再構築したinitrdで立ち上げたいなら、展開時と同じファイル名にして、 /boot/に置いてあげればOK)
検索用タグ initrd 展開 編集 再構築
PR
2012/05/28 (Mon.) Comment(1) Linux
Comments
とても魅力的な記事でした!!
また遊びに来ます!!
ありがとうございます。。
履歴書の書き方 URL 2012/06/01 (Fri.) 10:01 edit