文章目录
- 说明
- 准备
-
- 启动盘制作
- 安装Ubuntu到随身存储设备
-
- 为便携式系统创建GRUB引导
- 安装 GRUB2 到U盘或移动硬盘
- 制作Grub引导菜单
- 问题与解决
- 拔掉U盘进不了原来的系统
- 随身系统无法在别的电脑上启动
- welcome to emergency mode
- 参考
说明
UEFI和Legacy双模式引导参见: https://www.ithome.com/html/win10/316637.htm
准备
硬件
- 一个空U盘用于安装系统时的启动盘
- 一个空U盘或移动硬盘用于安装系统
- 一台装有Ubuntu系统的电脑(本文 16.04 LTS)
软件
启动盘制作
安装Ubuntu到随身存储设备
概述
- U盘启动系统后, 选择 “Install Ubuntu”
- 在安装类型(Install Type)界面一定要选择 其它(some thing else) 选项, 以便选择将系统安装到便携设备
- 创建分区, 若为 UEFI 模式, 需要创建一个
EFI
分区, 设为500Mb
即可, 此外还需要创建 swap
交换分区, 大小2GB即可, 还可以创建根分区 /
启动分区 /boot/
home
分区, 当然也可以不创建. - 在创建分区的页面, 记得 选择安装启动引导器为你想随身携带系统的移动硬盘或U盘, 否则默认覆盖你现有PC机上的引导菜单(Ubuntu16好像有Bug, 即使选择了别的盘, 还是会覆盖之前的, 好在可以修复). 此部分可参考本人博客 U盘系统盘制作与系统安装(详细图解)
- 安装完成后, 重启可能并不能进入系统, 参考如下内容操作.
为便携式系统创建GRUB引导
插上安装了系统的U盘, 启动 原來的系统 , 拔掉启动盘.
安装 GRUB2 到U盘或移动硬盘
其中, xy
为EFI分区所在盘号
sudo apt-get install grub-efi-amd64-bin grub-pc-bin
mkdir /mnt/tmp
sudo mount /dev/sdxy /mnt/tmp
sudo grub-install --target=i386-pc --recheck --boot-directory=/mnt/tmp/boot /dev/sdxy
sudo grub-install --target=x86_64-efi --efi-directory=/mnt/tmp/ --boot-directory=/mnt/tmp/boot --removable
制作Grub引导菜单
仿造已有的系统内的 grub.cfg
写即可, 使用 sudo gedit /mnt/tmp/boot/grub/grub.cfg
新建配置文件并打开, 添加类似如下的内容
if [ "${grub_platform}" == "efi" ]; then
menuentry "Microsoft Windows Vista/7/8/8.1 UEFI-GPT" {
insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root $hints_string $fs_uuid
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
fi
if [ "${grub_platform}" == "pc" ]; then
menuentry "Microsoft Windows Vista/7/8/8.1/10 BIOS-MBR" {
insmod part_msdos
insmod ntfs
insmod search_fs_uuid
insmod ntldr
search --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 69B235F6749E84CE
ntldr /bootmgr
}
fi
问题与解决
拔掉U盘进不了原来的系统
插上安装了系统的U盘, 启动 原來的系统 , 拔掉启动盘, 通过如下命令更新grub, 并将其安装到目标的盘(sdx
), 注意你的盘号.
sudo update-initramfs -u
sudo update-grub
sudo update-grub2
sudo grub-install /dev/sdx
随身系统无法在别的电脑上启动
- 首先查询该电脑支持什么模式
BIOS
还是 UEFI
, 确认与自己的系统安装模式是否兼容 - 然后检查 为便携式系统创建GRUB引导 小节所述内容
welcome to emergency mode
若在其它电脑上启动出现 welcome to emergency mode
提示信息, 分别 通过 sudo blkid
和 cat /etc/fstab
查看所有列出的盘号是否一致, 重点关注 fstab文件中是否有多余的盘, 如有, 使用 #
注释掉即可.
参考
- 基于 GRUB2 制作滋瓷 BIOS/UEFI 双模式启动的 Linux/Windows 安装U盘
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)