スラックウェアのインストール後にエラーが発生しました。

スラックウェアのインストール後にエラーが発生しました。

Slackwareをインストールした後、この結果が出ました。間違い新しくインストールした後に発生します。解決策ここに記載されている内容は機能しません。 4回再インストールしようとしましたが、同じエラーが発生しました。巨大なカーネルで起動すると、次のような結果が出ます。このエラー。私が何を逃したか教えてください。よろしくお願いします! !

ベストアンサー1

最初のスクリーンショットには、パニックが発生する前に最後に「prepare_namespace」および「mount_root」機能のみが表示されます。

2番目は正しいエラーメッセージです。

VFS: unable to mount root fs on unknown-block...

他のカーネルを使用するのと同じ問題があります。カーネルパニックは次のように大きく異なります。どれほど無力なのかカーネルは次のとおりです。一言で言えば、root=直接的または間接的に影響を与えない基本的な始動パラメータです。


簡単な理由は次のとおりです。VFS:ルートディレクトリをマウントできません。。これはいくつかのコンテキストを提供します。


私の場合、起動パラメータがありませんinitrd=最大カーネルがディスクにアクセスするには、initrdにモジュールが必要です。

スラックウェアイメージのあるUSBフラッシュドライブから起動してインストールしたようです。したがって、これは単なる構成問題です。

4回再インストールしよう

何を言うのか分かります。時には5回目の試みもしたが、その後は体系的なアプローチを取ろうとします。


以下は、Uefi Shellでスラックウェアを起動するために保存した2つのカーネルコマンドラインです。

slack\huge.s root=/dev/sda2

そして

slack\huge.s initrd=slack\initrd.img

しかし、どちらもそのように動作しません。動作するには2つの引数が必要です。 Grubはほぼ同じラインを持っています。

これは働きます:

arch5\vmlinuz-linux initrd=arch5\initramfs-linux.img root=/dev/sda3

これは、SSDモジュールが組み込まれた唯一のカーネルでもあります。

fedora\vmlinuz root=/dev/sda2

slackarch5カーネルfedoraとそのinitrdを保存するために作成されたディレクトリです。


slackwareLinuxベースのオペレーティングシステムというラベルを見ました。

私はこれに完全に同意しません、そしてそれをLinuxディストリビューションと呼びたいので、面白く聞こえるかもしれません。しかし、このウェブサイトはPosix&DistrosではなくUnix&Linuxと呼ばれています。


mount_block_root()以下がありますinit/do_mounts.c(#ifdefを削除しました)。

                 /*
                 * Allow the user to distinguish between failed sys_open
                 * and bad superblock on root device.
                 * and give them a list of the available devices
                 */

                __bdevname(ROOT_DEV, b);

                printk("VFS: Cannot open root device \"%s\" or %s: error %d\n",
                                root_device_name, b, err);
                printk("Please append a correct \"root=\" boot option; here are the available partitions:\n");

                printk_all_partitions();

                panic("VFS: Unable to mount root fs on %s", b);
        }
        if (!(flags & SB_RDONLY)) {
                flags |= SB_RDONLY;
                goto retry;
        }

        printk("List of all partitions:\n");
        printk_all_partitions();
        printk("No filesystem could mount root, tried: ");
        for (p = fs_names; *p; p += strlen(p)+1)
                printk(" %s", p);
        printk("\n");

        __bdevname(ROOT_DEV, b);

        panic("VFS: Unable to mount root fs on %s", b);
out:
        put_page(page);
}

したがって、有用なエラーメッセージがありますが、問題が(欠落している)ブロックデバイスドライバ/モジュール自体である場合は、とにかく少し破損しています。カーネルのコマンドラインが正しくないため、さまざまなカーネルパニックが発生しました。

おすすめ記事