web-dev-qa-db-ja.com

extlinuxでLinuxを起動する方法

編集:この質問の後に2セントを追加するだけで、「人気のある」質問になります。使用したものすべてを起動できたので、私はgrubの大ファンでした。しかし、grub2が来たとき、私はそれが本当に好きではありません。

  • 巨大なそれ自体
  • 私の/bootフォルダにたくさんのジャンクを残してください。99.9%は私には役に立たないです。
  • 「拡張された」構文は私には複雑すぎます
  • grub2を使用してUEFIを起動してみてください本当にロイヤルピットです
  • grubをCDブートローダーとして使用できましたが、grub2がそれを実行できるかどうかはわかりません。より良い代替手段を見つけたので、もう気にしません。 。

Syslinuxエコシステム(extlinuxを含む)は、CD/DVD、FAT、Ext2/3/4、さらにはBtrfsなど、私が使用するすべてのものを起動しています。さらに、MBR/PBRリレーまたはGPTを問題なく処理します。それは要点まで小さく、全面的に普遍的な構文を維持します。 extlinux(syslinux)は現在、私が使用するものをすべて起動するために選択したソリューションです。

OPに戻ります。

extlinuxでLinuxを正しく起動する方法を知っている人はいますか?

グーグル検索を使い果たしましたが、Linuxを起動するためにextlinuxをセットアップする適切な方法がまだわかりません。私が見つけたすべてのヒットは、/boot/extlinux/extlinux.confファイルを直接編集することについて話します。ただし、その中に大きな警告があり、そうすることを思いとどまらせます。

## /boot/extlinux/extlinux.conf
##
## IMPORTANT WARNING
##
## The configuration of this file is generated automatically.
## Do not edit this file manually, use: extlinux-update


default l0
Prompt 1
timeout 50

include themes/debian/theme.cfg

extlinux-updateまたはextlinux -updateをさまざまな方法で何億回も実行しましたが、ファイルは同じままです。問題は、このファイルは何も起動しません!

自分で編集してextlinux-updateをもう一度実行し、次にBOOMを実行すると、上記のブートなしバージョンに戻ります。

Ubuntuでextlinuxを正しくセットアップして(extlinux.confを直接編集せずに)起動する方法を知っている人はいますか?

これは最新のUbuntuTrustyBTWのextlinuxです。

% apt-cache policy extlinux
extlinux:
Installed: 3:4.05+dfsg-6+deb8u1
Candidate: 3:4.05+dfsg-6+deb8u1
Version table:
*** 3:4.05+dfsg-6+deb8u1 0
500 http://us.archive.ubuntu.com/ubuntu/ trusty/universe AMD64 Packages
100 /var/lib/dpkg/status
3
xpt

さて、あなたが望むように、これが私がextlinuxをインストールするための絶対的な最小ステップです:

Sudo apt-get install extlinux

Sudo extlinux --install /boot/extlinux

そして、これはそれをしました。本当に信じられませんでしたが、うまくいきました。だからここにいくつかの追加情報があります:私のシステム(uname)

3.13.0-24-generic (Kernel)
#46-Ubuntu SMP .. (Kernel version)
i686 (Processor and machine)

そしてその

apt-cache policy extlinux
extlinux:
  Installed: 3:4.05+dfsg-6+deb8u1
  Candidate: 3:4.05+dfsg-6+deb8u1
  Version table:
 *** 3:4.05+dfsg-6+deb8u1 0
        500 http://de.archive.ubuntu.com/ubuntu/ trusty/universe i368 Packages
        100 /var/lib/dpkg/status

/boot/extlinux/extlinux.conf

default l0
Prompt 1
timeout 50

include themes/debian/theme.cfg

あなたと同じだと思います。そして、私はDebianのテーマが変わるとは思いません。だからここに私の特定のlinux.cfgがあります:

label l0
    menu label Ubuntu GNU/Linux, kernel 3.13.0-24-generic
    linux /vmlinuz-3.13.0-24-generic
    append initrd=/initrd.img-3.13.0-24-generic root=UUID=61e460f5-878a-4cff-be9c-12239153d59c ro quiet

label l0r
    menu label Ubuntu GNU/Linux, kernel 3.13.0-24-generic (recovery mode)
    linux /vmlinuz-3.13.0-24-generic
    append initrd=/initrd.img-3.13.0-24-generic root=UUID=61e460f5-878a-4cff-be9c-12239153d59c ro single
    text help
    This option boots the system into recovery mode (single-user)
    endtext

さて、それだけです。しかし、ブートプロセスについて私が見つけた他の興味深いことがいくつかあります。/bootの下に元のファイルのコピーとして「myvmlinuz」と「myinitrd.img」を作成し、extlinux.confファイルを次のように編集しました。 :

default test
Prompt 1
timeout 50

#include themes/debian/theme.cfg
LABEL test
    MENU Test entry
    LINUX /myvmlinuz
    APPEND initrd=/myinitrd.img root=UUID=61e460f5-878a-4cff-be9c-12239153d59c

私が理解している限り、これはシステムを機能させるための最小構成です。私にとってはブーツは大丈夫です。 /は、これらのファイルでextlinuxを使用してブートとしてフラグが立てられたパーティションのルートフォルダーであることに注意してください。

APPEND initrd=/myinitrd.img root=/dev/sda5

も動作しました。 /(sda5)、/ boot(sda1)、スワップなど、1つのディスクで異なるパーティションを使用しました。/bootをプライマリパーティションとして作成しましたが、それが重要かどうかわかりません。多分あなたは試すことができます

cat /usr/lib/extlinux/mbr.bin > /dev/sda

grubが何か悪いことをした場合。

さて、あなたがそれを実行することを願っています、それがうまくいくかどうか私に知らせてください!

3
ju.kreber

これは、MBRの標準的な「手動」インストールの内訳です。

Extlinuxをディスクディスクデバイスにインストールすると仮定します/dev/sda

  • ディスクに標準のMBRをインストールします。このMBRは、「ブート」フラグを持つパーティションを探してブートしようとします。
    dd /usr/lib/extlinux/mbr.bin of=/dev/sda bs=440 count=1
  • EXTLINUXを含むパーティションにブートフラグを設定します
  • extlinuxファイルと使用されているモジュールをコピー ブートパーティションのディレクトリ(またはルート)に。例のために、/boot/を使用してみましょう。
  • このパーティションにブートローダーをインストールし、syslinuxディレクトリをポイントします。
    extlinux --install /boot/
  • 構成が正しいことを確認してください。

したがって、起動すると、MBRは起動可能なパーティションブートローダーをロードします。これにより、extlinux.confを読み取るEXTLINUXが起動します。

いくつかの手順は冗長かもしれませんが、何が起こるかを理解するための手順を書き出すのは良いことだと思います。

私はEXTLINUXが好きです。これがソフトウェアのあり方です。私は実際に何が起こっているのかを知り理解し、それを使ってコンピューターについて何か新しいことを学びました。

1
Rolf

これは Debianでのextlinuxの自動更新の設定 についての良いチュートリアルです。

数日前、extlinux(syslinux)をブートローダーとしてセットアップおよび構成する方法について書きました。ただし、DebianまたはUbuntuでは、/ boot/extlinux/extlinux.confなどのファイルに直接変更を加えると、それらは上書きされます。

構成ファイルは、カーネルを更新するたびに自動的に実行されるextlinux-updateというプログラムによって再生成されます。 (具体的には、linux-baseパッケージのpostinstスクリプトから実行されます。/var/lib/dpkg/info/linux-base.postinstで確認できます。)

[...]

1
tst