1. 程式人生 > >Windows10安裝Ubuntu16.04

Windows10安裝Ubuntu16.04

由於最近要在Ubuntu上面開發,得安裝一個Ubuntu的系統,這些是很常見的安裝,但是也踩了一些坑,下面記錄下來。

安裝環境

  • Windows10
  • Ubuntu16.04

基礎理論

在安裝的時候有一些概念要弄明白

Bios啟動模式

  • legacy:在Windows8之前的Windows電腦啟動
    使用的是legacy的啟動模式(是這樣吧??)這個好像速度不行
  • UEFI:更加先進的安全啟動模式,Ubuntu本身支援這種啟動模式。所以下面的安裝是基於這種模式來安裝的

開始安裝

在開始安裝之前準備了下面幾個輔助的軟體:
- 傲梅分割槽助手
最下面會列出所需的所以軟體的下載地址。

Windows分割槽

沒有使用系統自帶的磁碟管理來進行分割槽,怕有啥問題不好處理。Ubuntu需要一塊未分配空間,所以不用去格式化,我們在Windows下面分出這個未分配的空間即可


通過軟體選擇要分配哪些空間給Ubuntu使用然後刪除分割槽即可。

製作Ubuntu U盤工具

所需軟體:
- Ubuntu映象檔案網易開源映象站
我下載的是64位的Ubuntu16.04的版本
- UltraISO - EZB Systems, Inc:燒錄工具
通過這個軟體把Ubuntu的ISO映象檔案刻錄到U盤裡面使用 UltraISO 製作 U 盤啟動盤

設定BIOS選項

插入U盤重啟電腦進入Bios系統選項。 關閉Security Boot,修改Change Mode為UEFI


選擇帶UEFI的U盤進入安裝Ubuntu

安裝詳情

  • 安裝型別選擇其他型別

  • 我安裝的時候有一個強制使用UEFI選項,我選擇了是(這裡有一個坑)

  • 開始分割槽
    點選分配的空閒區間分配給Ubuntu使用
    • swap交換空間:選擇主分割槽和空間起始位置,大小最好為實體記憶體的兩倍。
    • efi系統分割槽:選擇邏輯分割槽和空間起始位置,系統啟動的掛載分割槽,大小我給的1024M
    • /home:型別為EXT4日誌系統,選擇邏輯分割槽和空間起始位置,相當於個人資料夾,和Windows的User類似,我給的32G
    • /user:型別為EXT4日誌系統,選擇邏輯分割槽和空間起始位置,軟體安裝位置,Linux安裝軟體沒辦法該安裝目錄,系統會放到這裡,我給的32G
    • /:型別為EXT4日誌檔案系統,選擇邏輯分割槽和空間起始位置,把剩下的空間都給了它

下面的安裝啟動引導器選擇efi分割槽所在的位置

一直繼續點選安裝,等待下載安裝完成。

  • 拔掉U盤重啟進入BIOS設定Security Boot On模式,等待結果,按道理現在就已經可以了

但是出現了問題,並沒有出現我們要得Ubuntu系統。

問題分析與解決

既然Ubuntu無法起來,第一反應就是把之前的Windows系統能起來。

在我安裝上面的步驟沒有選擇步驟二中的強制使用UEFI的時候,通過BIOS啟動安裝的Ubuntu系統的時候無法啟動,但是我可以啟動原來的Windows系統,因為它沒有被那個強制UEFI的安裝擦除或者損壞。

現在就很尷尬,電腦哪個都起不來了,這個時候可能會想到重灌系統,其實沒有必要,因為Windows起不來是安裝Ubuntu的時候導致的起不來,而Ubuntu起不來,是找不到boot device,可能就是我們在上面的步驟中設定efi分割槽的時候,電腦並沒有找到這個Ubuntu的boot啟動,現在要解決的就是讓Ubuntu的boot啟動可以讓電腦啟動項找到。

解決問題

  • 插入U盤通過BIOS進入Ubuntu試用版本,可以呼叫終端命令
  • alt+ctrl+T調出終端命令
  • 開始解決命令

    • 掛載新的安裝檔案系統在/mnt:
    sudo mount /dev/sda9 /mnt
    sudo mkdir /mnt/boot/efi
    sudo mount /dev/sda6 /mnt/boot/efi
    for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done

    sda9為根目錄,sda6為efi的目錄

    • 載入efivars
      sudo modprobe efivars

    • 重灌grub-install64位

    sudo apt-get install --reinstall grub-efi-amd64
    sudo grub-install --no-nvram --root-directory=/mnt
    • 改變root目錄位/mnt並且更新grub
    sudo chroot /mnt
    sudo update-grub
    • 移除並且重命明bootloader
    cd /boot/efi/EFI
    cp -R ubuntu/* BOOT/
    cd BOOT
    cp grubx64.efi bootx64.efi
    • 重啟系統

    終於出現了Ubuntu的系統 ,因為在上面有個步驟強制使用了UEFI導致Windows起不來了,得讓它的boot可以找到,在Ubuntu中下載boot-repari來修復一下:

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair

之後選擇推薦修復,重新啟動在Ubuntu的啟動介面可以看到Windows的下拉選項了。

總結

在安裝的時候強制UEFI安裝選項最好不要選擇,會減少好多問題,強制了之後會導致原來的Windows起不來了,要通過各種麻煩的配置。