xpt*_*xpt 5 boot grub ubuntu grub2 syslinux
编辑:在这个问题成为“流行”问题后,再添加我的两分钱。我一直是它的忠实粉丝,grub因为它能够启动我使用的所有东西。然而,当grub2它到来时,我真的不喜欢它,因为它是
/boot,其中 99.9% 对我来说毫无用处grub2确实是一个 ROYAL PITAgrub我的 CD 引导加载程序,但我不知道是否grub2可以这样做 - 我不再关心,因为我找到了更好的替代方案。syslinux 生态系统(包括 extlinux)现在正在引导我使用的所有内容,CD/DVD、FAT、Ext2/3/4,甚至 Btrfs。此外,它还可以顺利处理 MBR/PBR 中继或 GPT。它很小,但重点突出,并且全面保持通用语法。extlinux (syslinux) 目前是我选择的解决方案来引导我使用的任何东西。
现在回到OP。
有人知道如何正确启动 Linux 吗extlinux?
我已经用尽了谷歌搜索,但仍然无法弄清楚设置extlinux启动 Linux 的正确方法是什么。我发现的所有点击都谈到了/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
Run Code Online (Sandbox Code Playgroud)
我已经以各种方式运行了extlinux-update无数extlinux -update次,但文件仍然保持不变。问题是,这个文件不会启动任何东西!
如果我自己编辑它,然后extlinux-update再次运行,然后 BOOM,它再次回到上面的无启动版本。
有人知道如何在 Ubuntu 下正确设置 extlinux 来启动它(无需直接编辑 extlinux.conf)吗?
这是来自最新 Ubuntu Trusty 的 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
Run Code Online (Sandbox Code Playgroud)
好的,如您所愿,以下是我安装 extlinux 的绝对最少步骤:
sudo apt-get install extlinux
sudo extlinux --install /boot/extlinux
Run Code Online (Sandbox Code Playgroud)
这做到了。简直不敢相信,但这确实有效。所以这里有一些额外的信息:我的系统(uname)
3.13.0-24-generic (Kernel)
#46-Ubuntu SMP .. (Kernel version)
i686 (Processor and machine)
Run Code Online (Sandbox Code Playgroud)
还有
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
Run Code Online (Sandbox Code Playgroud)
/boot/extlinux/extlinux.conf
default l0
prompt 1
timeout 50
include themes/debian/theme.cfg
Run Code Online (Sandbox Code Playgroud)
我想这和你的一样。我不认为 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
Run Code Online (Sandbox Code Playgroud)
好的,就是这样。但是我发现了一些关于引导过程的其他有趣的事情:我创建了“myvmlinuz”和“myinitrd.img”作为 /boot 下原始文件的副本,并将 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
Run Code Online (Sandbox Code Playgroud)
据我了解,这是使系统正常工作的最低配置。靴子很适合我。请注意,/ 是这些文件中标记为带有 extlinux 的引导分区的根文件夹。
APPEND initrd=/myinitrd.img root=/dev/sda5
Run Code Online (Sandbox Code Playgroud)
也确实有效。我在一张磁盘上使用了不同的分区 / (sda5)、/boot (sda1)、swap 等。我创建了 /boot 作为主分区,不知道这是否重要。也许你可以尝试
cat /usr/lib/extlinux/mbr.bin > /dev/sda
Run Code Online (Sandbox Code Playgroud)
如果 grub 做了坏事。
好吧,我希望你能运行它,如果它有效,请告诉我!
| 归档时间: |
|
| 查看次数: |
17710 次 |
| 最近记录: |