問題タブ [initrd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
62 参照

linux - Initramdisk init スクリプト - 無効なカーネル ドライバーの読み込みをキャッチ

最近、イメージに新しいドライバーを追加して、initrdVMware および Hyper-v プラットフォームでも実行できるようにしました。

私の質問は、ドライバーの読み込み中にエラーを検出するにはどうすればよいですか? insmod挿入中に失敗した場合は、 hv_vmbus5 つの追加ドライバーの読み込みをスキップします (「不明なシンボル xyz」を取り除くため)。

スクリーンショット

0 投票する
3 に答える
1192 参照

linux - カーネルが initrd で /init スクリプトを呼び出さない

みんな。私は最初の組み込み Linux に取り組んでおり、素敵なブートスプラッシュが必要です。できるだけ早く起動するために initrd を使用することにしましたが、カーネルが /init スクリプトを呼び出していないようです。RAM ディスクをマウントし、通常の起動シーケンスに進みます。

スクリプトが呼び出されているかどうかをテストするために、私が知っているあらゆる種類のデバッグを試みましたが、成功しませんでした。エラーはまったく発生しません。ログインすると、想定どおりに RAM ディスクが /initrd にマウントされていることがわかります。

コミュニティが提供するドライバーとカーネル (3.4) を備えた Cubieboard 2 を使用しています。古いバージョンであることはわかっていますが、これまでのところ、sunxi SoC のサポートが最も優れているバージョンです。また、 Linaroが提供する両方のファイル システム (rootfs と initramfs) をベースとして使用しています。

誰でも私を助けることができますか?

ありがとうございました。

0 投票する
1 に答える
1202 参照

android - abootimg を使用した AOSP リカバリ イメージのアンパック/パックが起動に失敗する

AOSP ソース コードを使用して、Nexus 7 デバイス用の recovery.img (flo lunch セットアップを使用) を作成しました。次のように使用できます。

ただし、bootimg ユーティリティを使用して (RAM ディスクに変更を加えずに) recovery.img ファイルを解凍して再パックし、recovery.img を使用して起動を再試行すると、Nexus 7 は単に Google スプラッシュ スクリーン ループに入ります。スプラッシュ画面になった後、デバイスが再起動し続けます。

詳細については、ここに私の手順があります:

結果として更新された recovery.img は、元の recovery.img ファイルの変更されていない単純なコピーであっても、意図したとおりに機能しません。

0 投票する
0 に答える
830 参照

linux-kernel - Linuxカーネルの起動時にinitプロセスが停止する

カスタム p2020 ボードでカーネルを起動しようとしています。以下の例外でカーネルがクラッシュします。

init[1]: 4801b9dc nip 4801b9dc lr 48002b08 コード 3000 で未処理の信号 4

initrdと同様に両方とも同じように死んでいramfsます。

t104x ベースのボードで動作していた initrd を使用しています。上記のエラーの原因は何ですか? initrd が P2020 に適合しないということですか? 特定のプロセッサ用に initrd を再コンパイルする必要がありますか?

0 投票する
1 に答える
423 参照

ubuntu - `scripts/init-top/all_generic_ide` にある `hooker script` とは何ですか?

initUbuntu の ramdisk で勉強しています。私はこのscripts/init-bottom/udevコードスニペットを見ました:

スクリプト内のほぼすべてのscripts/**スクリプト(scripts/init-top/all_generic_ide,scripts/local-bottom/ntfs_3g,scripts/local-premount/fixrtcなど)に表示されます。微妙な違いがあるかもしれませんが、ほとんどの場合、本体コードの上部に同じスニペットがあります。

Ubuntu から wiki を読みました: initramfs-tools

その目的が何なのか、まったくわかりません。流れは分かると思うけど、どうなるか分からない?

0 投票する
1 に答える
1656 参照

linux-kernel - ARM が「Starting kernel image ...」でスタックすることがある

最初に、これが部分的に成功した事例であることをお知らせしたいと思います。:-)

コンテキスト: 個人的な自己啓発のために、ARM Cubieboard2 用の Linux をビルドするためのセミ LFS 手順を完了するというアイデアがありました。なんでセミ?私の焦りが、すでにビルドされている Fedora 23 イメージからいくつかのコンポーネントを取得するというアイデアにつながったからです。

したがって、手順は多かれ少なかれ次のとおりでした。

フェーズ 0

Crosstool-ng は、クロスコンパイル ツールチェーンの構築に使用されています。(このステップの詳細はスキップしましょう。正直なところ、gcc-arm-linux-gnu、gcc-c++-arm-linux-gnu、および binutils-arm-linux-gnu パッケージを使用した場合の結果は同じです。)

フェーズ 1

MMCカードは次のように構成されています

ステップ1

ステップ2

sdb.gpt.prt コンテンツはどこにありますか

ステップ 3

ステップ 4

ステップ 5

ステップ 6

フェーズ2

U-Boot がコンパイルされました

ステップ1

最新のブランチは git://git.denx.de/u-boot からチェックアウトされています

ステップ2

ブートローダー + SPL は次のようにビルドされています

その結果、u-boot-sunxi-with-spl.bin が作成されました。

警告: SEMI は下から始まります。

フェーズ 3

Fedora 23 イメージがダウンロードされ、マウントされました

ステップ1

Raw 画像ファイルがダウンロードされました

ステップ2

画像は圧縮されていません

ステップ 3

ブートおよびルート ファイルシステムがマウントされました

フェーズ 4

Bootloader + SPL は MMC に記録されています

フェーズ 5

Fedora ブート パーティションがコピーされ、修正されました

ステップ1

ステップ2

フェーズ 6

Fedora ルート パーティションがコピーされ、修正されました

ステップ1

ステップ2

中間結果

ここで、スロットに MMC カードを挿入して Cubieboard を起動すると、有名な「Starting kernel image ...」というメッセージが表示されてシステムがハングします。

しかし、これで話は終わりではありません。冒頭で述べたように、ある実験は成功しました。つまり、Fedora 23 ie で提供されているレスキュー initramfs イメージを使用しようとしました。extlinux.conf と

成功をもたらしました!

有望な結果の根本原因を分析しようとしました。私が自問自答したのは、「この 2 つの画像の違いは何ですか?」ということでした。

次の出力が得られます。

さらに

次の結果が得られます。

そのため、追加のバイナリは「ほんの」いくつかあります。特別な設定ファイルはありません。

もちろん、上記のチェック方法が些細なものであることは承知しています。しかし、深く掘り下げる前に、いくつかのヒントを求めることにしました。

私の質問は:

レスキュー initramfs イメージの成功の根本原因はどこにありますか?


補遺

extlinux.conf エントリ

起動に失敗します。そして、ここにブートログがあります:

しかし、extlinux.conf エントリ

正常に起動します。そして、ここにブートログがあります: