在没有BIOS支持的情况下启动USB密钥

我使用pendrivelinux.com将Ubuntu安装到USB密钥上。 我现在需要启动笔式驱动器,但BIOS不支持此function。 我仍然可以直接在计算机上启动Linux而无需X支持(破X是我想从笔驱动器启动以重新安装的原因之一)。 有没有办法从正在运行的Linux安装或其他方式启动USB密钥?

在grub菜单中添加(usb support via) plop启动管理器 – Ubuntu 12.04。 (控制台模式)

这个答案基于Ubuntu希腊语社区的教程

现在,从桌面环境开始,这个过程最简单,但是对于你来说,因为你必须干扰控制台模式,所以它会变得更加困难。 如果你注意并按照我相信你会成功的步骤。

通过wget下载Plop启动管理器

当前版本是5.0.14

wget "download.plop.at/files/bootmngr/plpbt-5.0.14.zip" -O ~/Downloads/plpbt-5.0.14.zip 

通过7z提取。 如果您没有该软件包,请通过apt-get安装p7zip-full

 cd Downloads && 7z e plpbt-5.0.14.zip 

Linux文件夹中复制/ boot中的两个文件plpbt.binplpcfgbt

 sudo cp ~/Downloads/plpbt-5.0.14/Linux/plpbt.bin /boot/ sudo cp ~/Downloads/plpbt-5.0.14/Linux/plpcfgbt /boot/ 

现在对你来说是困难的部分(因为你没有图形环境,我不知道其他任何方式)。 您必须记下/boot/grub/grub.cfg文件中的一些行。 最简单的方法(IMO)是移动高清照片,但如果你更喜欢传统的方式,纸和铅笔。

打开文件

 sudo nano /boot/grub/grub.cfg 

找到(用箭头键向下滚动)Ubuntu条目。 它将开始像

 menuentry 'Ubuntu, with Linux 3.2.0-XX-generic-.....` 

注意3行

 insmod ext2 set root='(hdX,msdosX)' search --no-floppy --fs-uuid --set=root XXXXXXXXXXXXXX 

用实际数字替换X. 使用Ctrl + X关闭文件

现在打开另一个文件,您必须输入这些行和另一行。 这里需要root权限

 sudo nano /etc/grub.d/40_custom 

在此文件的末尾添加您之前记下的行加上一个更重要的行

重要的是 linux16 /boot/plpbt.bin并且不要忘记括号。

40_custom中的内容示例

 #!/bin/sh exec tail -n +3 $0 # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. menuentry "Plop Bootmanager" { insmod ext2 set root='(hdX,msdosX)' search --no-floppy --fs-uuid --set=root XXXXXXXXXXXXXXXXXXXXX linux16 /boot/plpbt.bin } 

使用Ctrl + X然后按Y(es)然后按ENTER保存文件

终于跑了

 sudo update-grub 

插入USB闪存盘,重启并从Grub菜单中选择plop boot manager,然后选择USB。

在此处输入图像描述

在此处输入图像描述

@NikTh谢谢你的解决方案帮了我很多,我花了一些时间坚持一个错误,并认为包装其他人有同样的错误我会分享我(作为Ubuntu的新用户)解决它。

我完全按照NikTh的步骤,但得到了“找不到文件”样式错误。 经过几个小时的挣扎后,我做了两件事。

  1. 在启动目录中,我为plpbt.bin文件添加了更多权限:

    chmod 777 /boot/plpbt.bin

  2. 在/etc/grub.d/40_custom文件中,我更改了bin位置:

    linux16 /plpbt.bin

我意识到这可能是常见的,但我不熟悉整个Linux,所以对于像我这样的人来说,我希望这有助于节省几个小时的混乱。 如果我有更多的代表(对不起),这也是一个评论。