在没有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.bin
和plpcfgbt
。
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的步骤,但得到了“找不到文件”样式错误。 经过几个小时的挣扎后,我做了两件事。
-
在启动目录中,我为plpbt.bin文件添加了更多权限:
chmod 777 /boot/plpbt.bin
-
在/etc/grub.d/40_custom文件中,我更改了bin位置:
linux16 /plpbt.bin
我意识到这可能是常见的,但我不熟悉整个Linux,所以对于像我这样的人来说,我希望这有助于节省几个小时的混乱。 如果我有更多的代表(对不起),这也是一个评论。