LinuxルートをF2FSUSBフラッシュドライブに持っています。カーネルは、ブートローダーからアクセスできる別のデバイス上にあります。パラメータroot=/dev/sda1 rootwait rootfstype=f2fs
で開始しようとしていますが、常にカーネルパニックが発生します。
VFS: Cannot open root device "sda1" or unknown-block(8,1): error -19
Please append a correct "root=" boot option; here are the available partitions:
0100 8192 ram0 (driver?)
0101 8192 ram1 (driver?)
0800 3913728 sda driver: sd
0801 3913728 sda1 973c7215-01
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)
---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)
sda1は正しいデバイスであり、ArchLinuxを実行している別のコンピューターに問題なくマウントできます。 fdisk
を使用してパーティション化し、f2fs-toolsのmkfs.f2fs
を使用してフォーマットしました。
カーネルパニックが発生するのはなぜですか? F2FSモジュールがありませんか?もしそうなら、どうすれば起動時にロードできますか?
@derobertが指摘したように、F2FSモジュールを使用してカーネルを構築する必要があります。私の場合、それはロード可能なモジュールとしてさえ含まれていませんでした。
カーネルを自分でビルドするには、 kernel.org からカーネルを取得します。プラットフォームのデフォルトのカーネル構成を取得します。 (TI-Nspire計算機シリーズの場合は ここ から取得しました。)CONFIG_F2FS_FS
をy
に設定して、F2FSを含めるように変更します。ダウンロードしたカーネルソースのルートに。configとして保存し、makeを使用してビルドします。次に、Arch/arm/bootに新しいカーネルのものがあります。