コンピューターが自動的に起動するたびに異なるLinuxディストリビューションをロードしますか?


15

2つの異なるパーティションに2つのLinuxディストリビューション(OpenSuSE、Ubuntu)がインストールされています。マシンを起動するたびにGRUBがロードされ、2つのディストリビューションのいずれかを選択できます。

GRUBを表示したくないので、/ boot / grub / menu.lstでタイムアウトをゼロに制限します。これは、メニューの最初のオプションであるため、PCを起動するたびにマシンにOpenSuSEをロードさせる可能性が最も高いです。 .lst。

2回目にPCを再起動すると、Ubuntuが自動的にロードされる可能性はありますか?3回目の再起動でOpenSuSEが起動し、4回目の再起動でUbuntuが起動するなどの問題がありますか?

言い換えれば、次回の再起動時にmenu.lstで次のOSを起動するようにするにはどうすればよいですか?


1
詳細を追加していただけますか:Karmic(Grub2を使用)を使用していますか?また、両方のディストリビューション間で/ bootパーティションを共有していますか?または、1つのディストリビューションのブートパーティションが、両方のディストリビューションカーネル/ initrdなどにリンクしていますか?

まったく変ではありません!以前は、Partimageを使用してWindowsを復元する専用のLinuxパーティションでこれを行いました。他のすべてのブートは、復元のためにLinuxに移動し、その後すぐにWindowsに再起動します。(ただし、私はLiLoを使用し、その後-RスイッチIIRCを使用しました。)

回答:


11

スタートアップスクリプトに何かを書き直してください menu.lst

Ubuntuに menu.lst OpenSuSEをロードするバージョンを記述させ、OpenSuSEにUbuntuをロードするバージョンを記述させてください。

これを行うには、比較的安全な方法は、3つのファイルを持っているだろうmenu.lstmenu.lst.ubuntumenu.lst.SuSEしてスクリプトが実行します:

cp menu.lst.ubuntu menu.lst

SuSEおよび:

cp menu.lst.SuSE menu.lst

Ubuntuで。


9

GRUBの「savedefault」オプションを使用して、探していた機能を実現しました。menu.lstの各OSのエントリの最後に、他のオペレーティングシステムに値を設定していました。

助けようとしたすべての人に感謝します。:)


1
+1 savedefaultを提案しようとしていましたが、あなたは私にそれを打ち負かしました;)
クリス

3

リロはこれを行うことができます。

ただし、各OSでgrubのデフォルトとして他の OS を設定する単純なスクリプトを検討することもできます。たとえば、次のスクリプトはdefault 1設定を次のように変更しますdefault 0

echo -e "g/default 1/d\ni\ndefault 0\n.\nw" | ed /boot/grub/menu.lst

(edはViによく似ています。最初のコマンドを実行するだけで、実行内容を確認できます。)

他のOSでは、対応するものを実行できます。

echo -e "g/default 0/d\ni\ndefault 1\n.\nw" | ed /boot/grub/menu.lst

おかげでjhs。私はそれがうまくいくと思う。しかし、GRUBで機能を達成できなかった場合、LILOに到達します。

2

これを行う理由/目的は何ですか?

2つの異なる仮想マシンを実行することを検討したことがありますか?VMを検討できる場合は、ゲストを改ざんすることなく、ホストマシン自体からこれを実現するためのさまざまな方法があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.