問題タブ [syslinux]
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.
c - syslinux から見たブート ファイルシステム環境をデバッグしていますか?
すぐに回答を受け入れることができなくても、これを書き留めても問題ないことを願っています(そして、それが問題ないことを願っています-以下にCパッチがあるため):
デスクトップ PC ( ) のハードディスクを台無しにしたようです{DRDY err}
。そこで、起動可能なメディアを実行して を実行したかったfsck
のですが、このデスクトップの CD が壊れているため、USB フラッシュしか使用できません。Ubuntu と Suse の USB サムドライブがいくつかあります。これらはデスクトップで起動します。しかし、ブート中に udev はハード ドライブを検出しようとします。ハード ディスクがねじ止めされているため、そこでループするだけで、それぞれの OS がブートを終了することはありません。
だから私はSystemRescueCdをダウンロードしようとしました。SystemRescueCD をインストールしようとしたこの USB サムドライブがあります。
Ubuntu 11.04 Natty ネットブックを使用してサムドライブのイメージを作成しようとしましたが、両方を使用しました
- 推奨されるusb_inst.sh インストーラー; と
- 私は
unetbootin
(経由でsudo apt-get install unetbootin
)使用しようとしました;
どちらの場合も、デスクトップで USB サムドライブを起動しようとすると、起動手順が次のように失敗します。
....起動時にプロンプトを表示します。(実際、unetbootin
入力する前に「DMIプールデータの検証」で失敗しますsyslinux
-おそらく、イメージしようとしている.isoよりもはるかに古いためです)。
まず、 No Default or UI Configuration Found!で述べたように md5 をチェックしました。
...しかし、Sysresccd-versionsによると、問題ないようです。
sudo gparted /dev/sdc
次に、ドライブを (経由で) FAT16 に再フォーマットしようとしました。usb_inst.sh
とunetbootin
メソッドの両方を繰り返しました-再びサイコロはありません。これらすべてのケースで、QEMU エミュレーターでフラッシュ USB サムドライブを実行しようとすると、非常に面白いです。
...正常に起動します-syslinuxメニューなどを表示します; ただし、デスクトップでの起動は常に失敗します。
ここで、問題のあるデスクトップ PC の起動画面から次の情報を書き留めることができることを言及しておく必要があります。
経由F12でアクセスできる起動メニューがあり、起動メニューでは、他のオプションの中でも、これらは USB 用です。
通常、私は USB-HDD を選択しますが、他のものも試しました。入る前に手順がフリーズするか、syslinux
上記のように起動に失敗します。
ディレクトリ/ファイルの名前を からisolinux
に手動で変更することをお勧めしますsyslinux
( USB から起動しようとしています- Ubuntu に問い合わせてください) 。また、USB フラッシュ サムドライブのルートにコピーするというアドバイスもあります (ライブ USB を起動できない、Linux - スーパー ユーザー)。しかし、まだ改善はありません - 構成ファイルが見つからないという不平を言っています - どうやら.usb_inst.sh
syslinux/isolinux.bin
syslinux.cfg
syslinux
syslinux.cfg
次に、どうにかしてsyslinuxを「デバッグ」できるかどうかを調べてみました。syslinuxでログ トレース/デバッグ/トラブルシューティングが見つかりました - The Syslinux Project - reboot.pro :
> syslinux をトレースまたはログ記録するための特定のコマンドはありますか?
オープン ソースであるため、Syslinux をコンパイルして追加のデバッグ出力を有効にすることができます。
また、[解決済み] 起動時にスタック: Syslinux 問題 [アーカイブ] - Ubuntu フォーラム: "_ syslinux のデバッグについては、http: //www.syslinux.org/wiki/index.php/Development/Debugging で説明されていますが、効果的なデバッグ (正しく呼び出すには、デバッグ フックを追加するために再コンパイルする必要があります。_". ただし、Development/Debugging - Syslinux Wikibochs
では、 ;と呼ばれるものについて説明しています。そして、それはそれ自体をデバッグすることだと思いsyslinux
ます-必ずしもそれが存在する環境を「デバッグ」(またはクエリ)する必要はありません.
syslinux
とにかく、ついに、ソースから取得する以外に方法がわかりませんでした。基本的に、これはビルドするために必要でした:
syslinux
結局のところ、特定のコンピューターに接続されたときに何が「見える」かを示すようなデバッグを有効にする方法は明確ではありません。起動時にロードすることを考えるとsyslinux
、問題はファイルシステムとして認識されるものです。上記のように DEBUG 環境変数を有効にしようとしました (に追加override OPTFLAGS :=
した後Makefile
) - しかし、それ自体は、起動失敗時に新しいメッセージを生成しませんでした。次のコマンドを使用して、USB サムドライブを「書き込み」ました (Gnome アプレットからアンマウントした後)。
...そして、私はありとなしの両方を試しましたstupid
(そして、ソースビルドバージョンとNattyのUbuntuパッケージリポジトリからのバージョンの両方)。
rosh
ソースを調べてみると、 ( Read-Only SHell )と呼ばれるものがあることに気付きました- ただし、それは - としてコンパイルされ、rosh.c32
- でブート カーネル オプションとして使用することになっていますがsyslinux.cfg
、前述のように、ロードできません。残念ながら、私rosh.c32
の問題にはあまり役に立ちません。
ただし、 がコマンドをrosh
実装していることを考慮してls
、関連する部分を - のコードにコピーし、構成ファイルをスキャンするときにルートのリストをsyslinux
トリガーしようとしました。これらの変更はsyslinux-e40ba60-rosh-ls.patchに記録されています。起動時に次のようになります。ls /
syslinux
興味深いことに。root/
の場合、_ls
関数は少なくとも「0 個のファイル」を返します。他のもの ("/syslinux" と空の文字列 "") は既にopendir
呼び出しに失敗しているため、_ls
関数は呼び出されません!
関数のドタバタ コピーはls
意図したとおりに機能しないと考えていたでしょう。しかし、ネットブックでサムドライブを実行するとqemu
、実際にはファイルの完全なリストが提供されます-少なくとも/
、関数が呼び出されてデスクトップに戻るとすれば、実際に機能すると思います.
しかし、それでも私の問題は解決しません。起動後にルートの下に 0 ファイルが表示されるのはなぜですか? この問題をデバッグするために他に何ができますか? いくつかの C コードをパッチしてもかまいませんが、何を探すべきかわかりません。デスクトップ マシンで起動するための USB サムドライブを正しく準備する必要があります...syslinux
/
syslinux
interrupt - 保護モードでの BIOS 割り込み
isolinux (syslinux 4.5) をブートローダーとして使用し、0x200000 に編成されたマルチブート ヘッダーをカーネルにロードして、オペレーティング システム プロジェクトに取り組んでいます。
私が知っているように、カーネルはすでに 32 ビット保護モードになっています。私の質問: BIOS 割り込みにアクセスする簡単な方法はありますか? (基本的には 0x10 が欲しい:D)
ロード後、カーネルは独自の GDT および IDT エントリを設定し、さらに IRQ を再マップします。では、カーネルがロードされて VGA/SVGA モード (VBE 2.0 モード) が設定された直後にリアル モードにジャンプすることは可能ですか? 次に、カーネルを続行し、VBE 2.0 物理バッファー アドレスを使用して画面に書き込むプロテクト モードにジャンプしますか? はいの場合、どのように?いろいろ試しましたが、うまくいきませんでした:(
補足: インターネットでよく検索したところ、syslinux 1.x+ が _intcall API を提供していることがわかりました。100% 確信があるわけではありません。「syslinux 4.5\com32\lib\sys\initcall.c」を参照
linux - インストール済みの RHEL 7.1 を extlinux (syslinux) で起動できない
オプションで RHEL 7.1 をインストールしようとしています
キックスタート構成ファイルで。インストールは仮想マシン QEMU KVM で行われます。
yocto - yocto スプラッシュ画面が表示されない
syslinux を使用して USB スティックから起動する yocto イメージを作成しています。非表示にしたいブート出力がたくさんあります。yocto ドキュメントを読むと、スプラッシュ スクリーンを追加すると、これが非表示になるように見えます。に追加splash
しましたIMAGE_FEATURES
が、スプラッシュ スクリーンが表示されず、syslinux の起動出力がまだ表示されています。私が間違っているかもしれないことは何ですか?そのブート出力を非表示にする方法に関する他の提案も歓迎します。