主にRedHat系のディストリビューションで採用されているinitrd/initramfsの作成・編集のツール
普通に使う分には滅多に触らない。
initd/initramfsを編集したい時は、設定ファイルを編集することで実現する
基本的には/etc/dracut.confだけで良い。
/etc/dracut.conf.d/○○○○.confについては、ファイルが存在しないので、必要に応じて作成する
設定ファイルの内容を変更したら、一度depmodした上で、initrd/initramfsを再作成する
# depmod `uname -r` # dracut -f /boot/initramfs-`uname -r`.img.new `uname -r`
↑これで現在のカーネルバージョンに合わせたinitrd/initramfsが作成される。
ちなみにdepmodし忘れるとファイルの内容が更新されなかったりする。
少数派ではあろうが、作成したinitramfsを展開して中身が見たい人もいよう。
以前であれば、gzipで展開したものをcpioコマンドに流し込めば展開できたが、dracutで作成すると、そうは行かなくなる。
dracutのツールにskipcpioというものがあり、これを使うことで展開できるようになる。
# gzip -dc /boot/initramfs-`uname -r`.img | cpio -i
# /usr/lib/dracut/skipcpio /boot/initramfs-`uname -r`.img | gzip -dc | cpio -i
※/etc/dracut.confなどにcompress=オプションを記述していない場合のみ。
記述してある場合はgzipの部分の変更が必要。
# /usr/lib/dracut/skipcpio /boot/initramfs-`uname -r`.img | xz -dc | cpio -i