# 安装Windows\&Ubuntu双系统

### 写在前面：

本文借鉴部分网络资源，结合自身操作，整理成文，仅供参考，不可作为他用。\
网络上关于双系统安装的教程多如牛毛，本文或有不足，望读者海涵。\
但，网络资源鉴于鱼龙混杂，且大多数安装方式为共存安装，删除ubuntu系统会带来诸多不便，故此单独整理成文，以供参考。\
由于撰写本文之时，笔者手上没有可使用的WIN\&UBUNTU电脑，故此部分截图或来源于网络，希望读者谅解。

### 系统版本：

* Windows10
* Ubuntu 18.04 &#x20;

> 注：版本问题在本文中影响不是很大，但在其他软件安装或者环境布置中或有差异，不一一阐述。
>
> 就笔者所知版本而言，Ubuntu16，Ubuntu18，Ubuntu19与windows10或者Windows7/8均可按本文所述步骤。若有疑问，可[联系笔者](http://junbin.xyz)。

### 所需硬件设备

* 一台装有Windows的电脑（装有Linux，或者Mac电脑另当别论）
* 一个U盘或者移动硬盘（存储容量需大于Ubuntu镜像大小）

### 适用场景

* 在装有Windows10电脑上安装Ubuntu18.04，使双系统共存。值得说明的是，区别于网上大多数教程，本文将单独分区，单独制作引导，使得两个系统完全分离，移除任意系统，不会影响另一个系统的使用。
* 本文将讲述开机引导界面的美化和配置，提高双系统的用户体验。

### 双系统安装

* 下载Ubuntu18.04（或者其他可用版本）镜像（ISO文件），这里推荐从国内镜像源下载，如[华中科技大学开源镜像站](http://mirror.hust.edu.cn)，[东北大学开源镜像站](http://mirror.neu.edu.cn)。
* 从网络上下载UltraISO软件，插上U盘，制作u盘启动盘（若下载遇到困难，可联系笔者）。

> 制作步骤如下所示：
>
> 打开UltraISO软件->"file"->"打开"->"选择你的iso文件"\
> 打开ubuntu镜像文件后，选择"启动“->"写入硬盘映像”\
> 点击写入。注意：写入会格式化u盘，注意文件的备份。等几分钟，刻录成功。\
> 到此为止，u盘启动盘制作成功。

* 给Ubuntu腾出一个窝：找一个空出来的盘，或者找一个较大的盘，从中开辟出一个块区域给ubuntu住。

> 具体步骤如下所示：
>
> 右键”我的电脑“->”管理“->”磁盘管理”\
> 找到存储下的磁盘管理，你会看到磁盘情况，这里大家可能会看到自己的C盘，D盘或者E盘（如果有的话）。\
> 由于笔者不习惯分区，所以只有C盘，选择C盘（当然你完全可以找一个别的空的空间较大的盘），"右键“->"压缩卷"，输入压缩空间量，这也就是你希望分给ubuntu的房间的大小，硬盘大的话给多点，由于本人用到Ubuntu比较多，存储的东西，安装的软件较多，所以给了100G，这里建议大家50G左右足够了，最后点击压缩即可。

* 修改BIOS，选择U盘启动。每个电脑进入BIOS的按键可能不太一样，我的戴尔电脑是F10，大家可以根据自己的型号百度查询进入BIOS的方法。进入BIOS选择Boot，设置电脑从u盘启动，或者找到启动优先级把U盘启动放到最高，这里的具体操作不同电脑方法可能不大一样，但是大同小异，在此不在赘述，若有疑问，可自行网上查阅资料，或者联系笔者。
* 退出BIOS，开机。进入Ubuntu安装界面。

> 刚开始会进行一些常规安装操作，如选择语言，地区等等，这里不多做赘述，一直进行到下图所示步骤为止。（图片来源于网络，故此显示Windows7）\
> &#x20;<img src="https://3857766388-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8EdP159RyjUv9qUZIH%2F-M8EfCurlZhN6ZoIjpwA%2F-M8EfP77RieNUPxyk9h9%2F1.jpg?alt=media&#x26;token=2d8b586a-c549-465a-a768-b10e2fae6541" alt="" data-size="original"> \
> 注意：如果选择第一项“安装Ubuntu与win共存”，将会覆盖windows的mbr，以后删除ubuntu后会导致windows进不去。我们选择第四项“其它选项”，并选择现在安装。

* 这一步很重要☆

> 首先找到刚刚在windows下压缩的空白卷（如果对相关内容不熟悉的同学，这里寻找千万别找错地方，找标有空闲的分区，或者自己看总大小和已用大小，跟自己刚才分区的大小是否一致来判断是否是正确的卷，当然Linix下是用MB做单位的，你可以将Linux显示的大小去掉三个0大致估算一下是否一致）。\
> 选择空白卷，点击“+ - Change”中的“+”，这步操作循环多次，分别创建以下几个分区：\
> 1\. 大小：300MB，主分区，空间起始位置，Ext4日志文件系统，挂载点：/boot\
> 2\. 大小：16000MB（交换分区大小与自己系统内存差不多大即可，我是16G内存，这里设置16000MB），主分区，空间起始位置，交换空间。\
> 3\. 大小：80000MB（剩余空间，我这里粗略给的），主分区，空间起始位置，Ext4日志文件系统，挂载点：/\
> 还可以加一个/home的挂载点，也可不加。\
> 最后选择系统安装引导项的设备，这里很重要，一定要选择你刚刚建立的挂载点为/boot的磁盘（我的为/dev/sda8）如果你没选择，将会覆盖掉你的win引导项，以后删除ubuntu会进不去系统。

* 等待安装，安装完后重启,修改BIOS启动项,将Ubuntu优先级设置高于Windows（原因后续我会说，这里如果Windows优先级高于Ubuntu的话，开机不会自动进入Ubuntu）

> 一般情况下安装ubuntu后默认会优先启动ubuntu，这一步也可不设置，不过大家刚安装完若直接启动，且没有拔出U盘，会再次进入安装界面，所以要么进入Bios设置硬盘启动，要么拔出U盘再启动。

### 开机引导界面设置与美化

开机，选择进入（或者默认进入）Ubuntu系统，会发现选择系统界面丑不可耐，且选择系统界面只有默认的几秒钟等待，时间过后会自动进入默认系统，按完开机键出去倒杯茶的我，回来发现默认进了Ubuntu系统，天呐，我明明要开Windows打游戏的！

作为颜值控，美化开机引导界面是必须的，而且我希望系统开机默认进入的是Windows，且开机后需要等待我选择，我不选择，就一直停留在系统选择界面。

grub引导的设置文件是 /etc/default/grub ，对其进行修改可以得到我们想要的结果。

在命令行中输入：\
如果你会使用vim： `sudo vim /etc/default/grub`\
如果你不会使用vim： `sudo gedit /etc/default/grub`\
注： 不知是否是我使用不当的原因，ubuntu上的vim一堆bug（但我在mac下使用很正常），建议大家使用gedit编辑。 多提一句，若提示没有装vim，可以将vim命令替换成vi。或者自行安装vim。

1. 优化设置

   grub引导的设置文件是 /etc/default/grub ，对其进行修改可以得到我们想要的结果。

   ```
   sudo vim /etc/default/grub
   ```

![](https://3857766388-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M8EdP159RyjUv9qUZIH%2F-MI-652FaU6lr1yQl8ny%2F-MI-FT5ZHR7Z1uNo8Qd8%2F2.png?alt=media\&token=d02d34b2-00d7-4a26-a892-40e0b5c724dc)

GRUB\_DEFAUL从0开始编号，分别代表开机启动时候你选择系统从上至下的排序。GRUB\_TIMEOUT\_STYLE（是否显示倒计时，hidden的属性表示不会显示倒计时）、GRUB\_TIMEOUT（等待时间，单位是秒，-1表示无限等待，直到你选择操作系统）、GRUB\_GFXMODE（屏幕的显示像素，可以不用管这一项）。

更改保存后，更新。

```
   sudo update-grub
```

1. 页面美化

登陆（需要翻墙）：<https://www.opendesktop.org/s/Gnome/browse/cat/109/order/latest/>

下载你喜欢的一款主题，将其解压。

创建一个文件夹：

```
sudo mkdir  /boot/grub/themes/
```

将下载解压后的文件夹拷贝进去：

```
sudo cp -r $dir /boot/grub/themes/
```

编辑：

```
sudo vim /etc/grub.d/00_header
```

在文件头上加上以下两行：

```
# /boot/grub/themes下的刚刚复制进来的文件夹名称，加上/theme.txt
GRUB_THEME=”/boot/grub/themes/$dir/theme.txt”
# 你的屏幕分辨率，可以在ubuntu下设置中查看
GRUB_GFXMODE=”1920×1080”
```

更新grub:

```
sudo update-grub
```

大功告成，重启，就能看到好看的界面了！


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://junbin.gitbook.io/studynotes/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
