制作便携式随身系统(以Ubuntu为例)

说明

准备

硬件

  • 一个空U盘用于安装系统时的启动盘
  • 一个空U盘或移动硬盘用于安装系统
  • 一台装有Ubuntu系统的电脑(本文 16.04 LTS)

软件

  • Ubuntu系统镜像

启动盘制作

安装Ubuntu到随身存储设备

概述

  1. U盘启动系统后, 选择 “Install Ubuntu”
  2. 在安装类型(Install Type)界面一定要选择 其它(some thing else) 选项, 以便选择将系统安装到便携设备
  3. 创建分区, 若为 UEFI 模式, 需要创建一个 EFI 分区, 设为500Mb 即可, 此外还需要创建 swap 交换分区, 大小2GB即可, 还可以创建根分区 / 启动分区 /boot/ home 分区, 当然也可以不创建.
  4. 在创建分区的页面, 记得 选择安装启动引导器为你想随身携带系统的移动硬盘或U盘, 否则默认覆盖你现有PC机上的引导菜单(Ubuntu16好像有Bug, 即使选择了别的盘, 还是会覆盖之前的, 好在可以修复). 此部分可参考本人博客 U盘系统盘制作与系统安装(详细图解)
  5. 安装完成后, 重启可能并不能进入系统, 参考如下内容操作.

为便携式系统创建GRUB引导

插上安装了系统的U盘, 启动 原來的系统 , 拔掉启动盘.

安装 GRUB2 到U盘或移动硬盘

其中, xy 为EFI分区所在盘号

# 安装依赖包
sudo apt-get install grub-efi-amd64-bin grub-pc-bin

# 挂载EFI分区
mkdir /mnt/tmp
sudo mount /dev/sdxy /mnt/tmp

# 将 BIOS 模式 GURB2 安装到U盘
sudo grub-install --target=i386-pc --recheck --boot-directory=/mnt/tmp/boot /dev/sdxy

# 将 UEFI 模式 GURB2 安装到U盘
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
# 更新grub
sudo update-grub
sudo update-grub2
# 重建grub
sudo grub-install /dev/sdx

随身系统无法在别的电脑上启动

  • 首先查询该电脑支持什么模式 BIOS 还是 UEFI, 确认与自己的系统安装模式是否兼容
  • 然后检查 为便携式系统创建GRUB引导 小节所述内容

welcome to emergency mode

若在其它电脑上启动出现 welcome to emergency mode 提示信息, 分别 通过 sudo blkidcat /etc/fstab 查看所有列出的盘号是否一致, 重点关注 fstab文件中是否有多余的盘, 如有, 使用 # 注释掉即可.

参考

发布了84 篇原创文章 · 获赞 131 · 访问量 41万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览