現在、Squashfsをルートマウントポイントとして使用するためにx86 64ビットシステムを設定しようとしていますが、いくつかの問題が発生しています。現在私はSquashfsでコンパイルされた4.4.0-89カーネルを使用しています。ハードドライブでこれを行いたいのですが、学習とテストのために現在USBで実行しようとしています(これが問題を引き起こすかどうかはわかりませんが、疑わしいです)。
私は次のようにデバイスを設定しました。
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 14583807 14581760 7G 83 Linux
/dev/sdb2 14583808 15656959 1073152 524M 83 Linux
/dev/sdb1 は、Ubuntu 16.04.3LTS を使用して作成した squashfs ファイルシステムです。
dd if=filesystem.squashfs of=/dev/sdb1
/dev/sdb2 はブートです。
drwxr-xr-x 5 root root 4096 Oct 5 09:57 grub/
-rw-r--r-- 1 root root 40177135 Oct 5 09:28 initrd
-rw-r--r-- 1 root root 6913440 Oct 4 13:12 vmlinuz
私のgrub設定メニュー項目は次のとおりです。
menuentry 'test' {
set root=(hd0,msdos2)
linux /vmlinuz root=/dev/sda1 ro rootfstype=squashfs quiet splash
initrd /initrd
}
現在ブートしようとしているときに、Gub Ubuntuブート画面を削除するためにEscキーを押すと、同じエラー行が実行されます。
madm: No device listed in conf file were found.
madm: CREATE group disk not found
最終表示前:
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/sda1 does not exist. Dropping to a shell
ビジボックスにアクセスできるシェルです。
私はrootdelayを300に増やして同じ結果を返し、/dev/sda1の代わりにルートパーティションUUIDを試しましたが、やはり動作しませんでした。
busybox initramfs シェルでは、/dev/ ツリーに sdx も表示されません。
おそらくこれを完全に誤って実装しようとしていますが、次に何をしようとするのか混乱しています。誰もが私を助けることができれば幸いです!
ありがとうございます。