文章目录
  1. 1. 惨痛教训
  2. 2. 正式开始吧!
    1. 2.1. 制作启动盘
    2. 2.2. 安装ubuntu
    3. 2.3. 安装GRUB4DOS引导
  3. 3. 问题2详细解决方法
  4. 4. 双硬盘安装双系统(SSD-Windows / HDD-Ubuntu)
    1. 4.1. 处理try (hd0,0) ext2问题
      1. 4.1.1. 解决方案
      2. 4.1.2. 遗憾
    2. 4.2. 双硬盘双系统更好的解决方案
      1. 4.2.1. 方案1
      2. 4.2.2. 方案2
  5. 5. 重要参考文献

引言:由于我的台式机性能比较好,所以一般在寝室都用台式机办公,但免不了出门用笔记本办公的时候,于是想到有一个移动硬盘,把ubuntu装进移动硬盘岂不美哉!完美移动办公了!


惨痛教训

在我奋战了三天共计4+5+12=21个小时后,我终于走出了一条正确的道路。现在想想,花费这么多时间有很大一部分原因是因为一开始自己不太重视这个问题,没有正面去解决这个问题。

  • 问题1:使用台式机在移动硬盘上装好ubuntu后,windows和ubuntu的引导被grub整合,拔掉移动硬盘台式机无法启动,且ubuntu无法在其他机器运行。

    解决:在安装过程中有一个“安装启动引导的设备”,应选择/dev/sda(准确说选择移动硬盘),这样grub引导程序将安装在移动硬盘,而不是windows下。如此可以解决拔掉移动硬盘台式机无法启动的问题。

  • 问题2:手动boot选择移动硬盘之后,进入grub命令行,却启动不了ubuntu,或根本进不了grub命令行怎么办?

    解决:windows下使用bootice手动添加uefi启动序列,然后修改grub.cfg文件(解决方法在文末单独列出)。

  • 问题3:我在台式机上把ubuntu装在了移动硬盘上,boot也没问题,选windows就windows,选移动硬盘就ubuntu,换了个电脑咋就不行了?

    解决:这正是我遇到的最恶心的问题。最终解决方案是手动装GRUB4DOS建立引导。

正式开始吧!

准备:

ubuntu镜像文件:ubuntu-16.04.3-desktop-amd64.iso

启动盘制作软件:Universal-USB-Installer

磁盘管理软件:DiskGenius

引导程序:GRUB4DOS

硬件准备:

  1. 移动硬盘(或10G以上U盘)
  2. U盘(作安装启动盘和LiveCD)

制作启动盘

运行Universal-USB-Installer,关键步骤如下图:

安装ubuntu

完毕后重启,在boot menu中选择该U盘进入(如何进入boot menu视主板而定,可观察boot前的提示或询问淘宝客服该型号电脑进入boot menu的方法)。

在接下来的界面选择第一项:Try Ubuntu without installing,不要选第二项Install Ubuntu。

进入系统后,双击桌面上的Install Ubuntu。

在上述步骤时,推荐勾选Download updates while installing Ubuntu,这可省去你在装好ubuntu之后的一些麻烦,对了,记得保持联网。

上述步骤选择something else。

在随后的这个界面中,假设/dev/sda是你的移动硬盘,选中其下的所有盘符,点击下面的“-”删去(相当于格式化),然后点击free space,点击下面的“+”,按下图挂载三个partition:

  • 根目录(建议50GB以内)

  • 交换空间(建议与内存大小相同)

  • home(用户文件等均在此part下,建议分配较多的空间)

  • 成果图

  • 注意:

    • 无需挂载boot类型的partition
    • 记得在Device for boot loader installation中选择你的移动硬盘,否则开机引导会被grub2无情整合导致不插硬盘启动不了
  • 在选择地区的时候,可以选择台北,网速要快一点,而且时区也是正确的。

  • 安装完毕后提示是否重启,不要点击重启,一定先点一下继续,这样移动硬盘会加载回来。然后用ubuntu自带的文件管理器打开移动硬盘安装盘的根目录("/“挂载盘),用gedit打开”/etc/fstab",把挂载点为"/"的盘符(如/dev/sdc5)和UUID记下来,然后使用命令cat /proc/version 获取内核版本号(如4.10.0-28),也记录下来。

安装GRUB4DOS引导

  • 趁热打铁,下载**GRUB4DOS**, 解压后有一个menu.lst,将其中的4.10.0-28 全部替换为你的内核版本号,将8578bdcd-8385-4121-80c4-d48cc0b2e282 全部替换为你的UUID,将(hd0,0) 的0全部替换为你的盘符号减1的值(如/dev/sdc5则把(hd0,0)替换为(hd0,4)),保存修改。
  • 在menu.lst文件所在目录下右键open in terminal,使用命令sudo cp menu.lst grldr /media/ubuntu/UUID (将UUID替换为刚记下的UUID)。
  • 关闭计算机,用同样的方法进入boot menu,选择打开WINDOWS。在WINDOWS下使用**GRUB4DOS** 中的grubinst_gui.exe,一定要以右键以管理员身份打开,否则刷新不出磁盘来。在磁盘中选择你的移动硬盘,下面勾选Grub第二版,点击安装。
  • 现在你的移动硬盘已经可以到处使了!想进入ubuntu的时候,在开机的时候进入boot menu切换ubuntu即可。

注意:升级内核后须手动修改menu.lst中的kernel、initrd项,新内核方可生效!

问题2详细解决方法

WINDOWS分区表格式:GPT

需要工具:BOOTICE、DiskGennius

  1. 进入WINDOWS,如果无法进入WINDOWS,找个PE启动盘进入。

  2. 打开BOOTICE工具,分区管理

    给ESP分区分配盘符,假设分配为F

  3. 修改启动序列

    按图示进入WINDOWS引导分区,依次进入/EFI/ubuntu/,双击shimx64.efi

    可以调整这个新序列的菜单标题和序列顺序,记得保存当前启动项设置。

  4. 插入移动硬盘,打开DiskGenius,将移动硬盘中分区(0)/boot/grub中的grub.cfg拷贝到桌面上

    使用ctrl+c复制桌面上的grub.cfg,进入WINDOWS引导分区下的EFI/ubuntuctrl+v 替换该文件。

  5. 大功告成!!!

双硬盘安装双系统(SSD-Windows / HDD-Ubuntu)

案例:单机器双硬盘(SSD+HDD),在SSD中存在windows系统的情况下,在HDD中安装ubuntu,并且使用grub整合引导windows和ubuntu

需求:1TB HDD中安装UBUNTU,并且保留600G作为NTFS格式储存空间

简略历程:

  1. 操作:给HDD分区时挂载了\ \boot swap \home 并且将引导装在SSD的EFI分区下。

    出现情况:安装过程中出现失败(猜测是EFI分区空间不足)

  2. 操作:给HDD分区时挂载了\ \boot swap \home 并且将引导装在HDD的boot分区下。

    出现情况:boot menu选择HDD启动后,找不到引导,只有一个光标一直闪动

    操作:进入windows安装GRUB4DOS引导,用LiveCD弄好剩余步骤。

    出现情况:boot menu选择HDD启动后,出现try (hd0,0) ext2:

  3. 操作:给HDD分区时挂载了\ swap \home 并且将引导装在HDD下(按本教程将HDD当做移动硬盘安装UBUNTU)

    出现情况:boot menu选择HDD启动后,出现try (hd0,0) ext2:

处理try (hd0,0) ext2问题

解决方案

由于目的是使用grub整合windows和ubuntu,于是我使用了有UEFI引导的LiveCD(必须用UEFI进入,如果不支持UEFI,在使用Universal-USB-Installer时选中格式化U盘的选项再装一次,直到支持UEFI)。

使用LiveCD进入try without install的ubuntu系统后,我们选择使用boot-repair来修复引导,它会用grub整合windows和ubuntu,这也是我们想要的(注意,制作移动硬盘ubuntu时,这往往不是我们想要的。但它会在windows盘EFI分区创建好ubuntu的引导,这可以帮助我们在无法使用移动硬盘的机器上手动创建efi引导从而曲线救国)。

此方法在gmr笔记本奏效(联想IdeaPad,SSD-Windows / HDD-Ubuntu)。

遗憾

上述解决方案只是为了解决问题而解决问题,我依然不明白为什么手动安装的GRUB4DOS无法正确引导……

双硬盘双系统更好的解决方案

方案1

先使用DiskGenius在HDD划分出600G的NTFS空间,保留400
G未使用。用Universal-USB-Installer在U盘制作好LiveCD后,开机进入boot menu进入U盘安装Ubuntu。在下图步骤中选择与windows(windows manager)共存而不是Something else。这样会充分利用剩余空间安装Ubuntu。

方案2

有时上述方案并不奏效。

方案2是在待安装Ubuntu的硬盘挂载3个区:/ /root swap /home ,然后将引导装在待安装Ubuntu的硬盘(不要选分区)

此方法在zyh笔记本奏效(惠普,SSD-Windows / HDD-Ubuntu)。

重要参考文献

文章目录
  1. 1. 惨痛教训
  2. 2. 正式开始吧!
    1. 2.1. 制作启动盘
    2. 2.2. 安装ubuntu
    3. 2.3. 安装GRUB4DOS引导
  3. 3. 问题2详细解决方法
  4. 4. 双硬盘安装双系统(SSD-Windows / HDD-Ubuntu)
    1. 4.1. 处理try (hd0,0) ext2问题
      1. 4.1.1. 解决方案
      2. 4.1.2. 遗憾
    2. 4.2. 双硬盘双系统更好的解决方案
      1. 4.2.1. 方案1
      2. 4.2.2. 方案2
  5. 5. 重要参考文献