安裝 Windows 10 + Centos 7 雙系統共存

第一步 準備工做

分區

給CentOS 系統單首創建一個分區,具體看空閒硬盤的大小決定。html

  • 右鍵桌面上 [個人電腦] 或者 [此電腦] 圖標,選擇 [管理] → [計算機管理] → [存儲] - [磁盤管理]
  • 選擇一個空閒空間較大的分區,右鍵選擇 [壓縮卷(H)...]
  • 在彈出的對話框中輸入須要分配給 CentOS 系統的空間大小,以 MB 爲單位
  • 輸入完畢後,點擊對話框右下角的 [壓縮] 按鈕執行壓縮便可
注意:壓縮出的新分區,不要執行 [新建簡單卷],不然稍後 CentOS 不識別,到此步便可

下載 CentOS 7 系統文件

CentOS官網 下載 ISO 文件,DVD 版便可。linux

製做優盤啓動盤

一樣很簡單:git

  • 準備一個優盤,備份裏面全部你認爲不能刪的文件,稍後將會格式化此優盤
  • UltraISO官網 下載軟件
  • 安裝,我基本是用完就卸載,因此,除了安裝路徑改下,其餘所有默認
  • 運行 UltraISO,選擇試用,選擇主界面菜單欄裏的[文件] → [打開],選擇你剛下載好的 CentOS 7 鏡像
  • 選擇菜單欄裏的 [啓動] → [寫入硬盤映像]
  • 在彈出框中確認選中的優盤無誤,其餘選項保持默認,無需修改,直接點擊下方的 [寫入] 按鈕,執行製做優盤啓動盤,稍後確認製做成功的提示信息便可

準備工做到此結束github

第二步 從優盤啓動安裝

調整 BIOS 引導順序

  • 插入剛剛製做的優盤啓動盤,重啓電腦,開機階段按 F2F8F12 進入 BIOS
  • 切換到 Boot 界面,找到優盤啓動項,使用 F5F6 調整其順序至第一位,即從優盤啓動
  • F10 保存並退出 BIOS ,便可從優盤引導啓動。
  • 稍後進入一個標題爲 CentOS 7 的黑白界面:

圖片加載中...

同時提示 Press Tab for full configuration options on menu items.Automatic boot in 60 seconds...centos

  • 默認選中的是 第一項即 Install CentOS 7,按 Tab 鍵,下方的提示信息將顯示爲 vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207x20x86_64 rd.live.check quiet

圖片加載中...

  • 移動光標,刪除 LABEL=CentOS\x207x20x86_64 rd.live.check 這部分,並用 linux dd 替換,最終的內容爲 vmlinuz initrd=initrd.img linux dd quiet

圖片加載中...

  • 確認無誤後回車,能夠看到以下界面

圖片加載中...
這裏能夠看到,界面下方有4列,分別是 DEVICETYPELABELUUIDLABEL 這一列就是驅動器名稱,據此找到你的優盤,並記下對應 DEVICE 列的值,通常是 sdb4ui

  • 強制關閉計算機後再開機,回到剛纔倒計時那個界面,依舊按 Tab 鍵,修改啓動參數,此次修改成 vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 rd.live.check quiet,這裏的 sdb4 替換成你剛纔記下的本身優盤對應的 DEVICE 列的值。

圖片加載中...

  • 確認無誤後回車,稍等片刻就能夠看到暖暖的界面啦!

圖片加載中...

開始安裝

  • 上面的系統語言根據須要自行選擇(爲了防止系統自動生成家目錄下有 桌面下載 這類中文名路徑,切換路徑的時候還要修改輸入法,比較麻煩,因此這裏我保持默認,即 English),這裏主要說下第二步的 INSTALLATION SUMMARY

圖片加載中...

選擇須要安裝的基礎軟件

  • 點擊 SOFTWARE 下的 SOFTWARE SELECTION 選擇一些須要安裝的基礎軟件,這裏只選擇安裝一個桌面軟件 GNOME Desktop 就夠了,選擇完成以後點擊左上角的 Done 回到 INSTALLATION SUMMARY 主界面。

圖片加載中...

磁盤分區

  • 點擊 SYSTEM 下的 INSTALLATION DESTINATION 選擇安裝位置,這裏能夠看到咱們以前壓縮出來的那個新分區,以及優盤分區。

選中那個新分區,並選中 Other Storage OptionsPartitioning 下的 I will configure partitioning 選項,切記,必定要選中此項,不然整個硬盤的數據都將被刪除!!!
確認無誤後,點擊左上角的 Done
圖片加載中...spa

  • 這一步對硬盤進行分區,能夠點擊 Click here to create them automatically 便可讓安裝程序自動建立分區,很是方便,也能夠點擊左下角寫有 AVAILABLE SPACE 字樣的紅色區域上方的 + 按鈕手動建立分區。

圖片加載中...
選擇手動分區的話,要注意單位,這裏我選擇自動分區。分區完成而且確認無誤後,點擊左上角的 Done 結束對硬盤的分區操做。下面我講下手動分區操做步驟。操作系統

點擊 + 按鈕,在彈出的對話框中選擇新分區掛載的路徑,並輸入新分區的大小,這裏咱們設置新分區的大小爲 6 GB,並掛載在 根目錄 / 下。點擊 Add mount point 保存分區信息。
圖片加載中....net

此時,能夠看到新分區已經出如今左側欄裏了,但分區的單位並不對,默認剛纔輸入的單位是 MiB 並顯示爲 KiB ,這裏咱們修改成 MiB 便可,點擊右下角 Update Settings 保存修改後的信息。
圖片加載中...
以一樣的方式添加 swap 等分區,添加完成後,點擊左上角的 Done 按鈕,完成對磁盤的分區。若是沒有給 /boot 進行分區,會在第一次點擊 Done 後收到警告信息。能夠點擊 Click for details 查看警告緣由,而後點擊 Close 後再次點擊一次 Done ;也能夠忽略警告信息,再點一次 Done
圖片加載中...
忽略警告信息,點擊兩次 Done 以後,能夠在彈出的對話框中看到,即將對磁盤進行修改的摘要信息,直接點擊 Accept Changes ,開始對硬盤執行分區操做。
圖片加載中...code

  • 回到 INSTALLATION SUMMARY 界面,待分區執行完成後, SYSTEM 下的 INSTALLATION DESTINATION 下的黃色感嘆號就沒有。點擊右下角的 Begin Installation 按鈕開始安裝 CentOS 系統。

圖片加載中...

初始化帳戶

  • 安裝進度界面能夠看到 USER SETTINGS 下,ROOT PASSWORD 提示須要給 root 帳戶設置密碼(root 帳戶默認是沒有密碼的),USER CREATION 提示建立一個普通用戶。下面咱們按照提示完成對帳戶的初始化。

圖片加載中...

  • 點擊 USER SETTINGS 下的 ROOT PASSWORD ,給 root 帳戶設置密碼。若是設置的密碼強度不夠,須要點兩次 Done 按鈕忽略警告信息,完成對 root 帳戶的初始化。

圖片加載中...

  • 完成對 root 帳戶初始化後,能夠看到 USER SETTINGSUSER CREATION 的黃色感嘆號已經消失了,說明初始化 root 帳戶的密碼後,建立普通帳戶已經變成一個可選項。

圖片加載中...

但推薦仍建立一個普通帳戶,以便平時使用,而非平時直接使用 `root` 帳戶,這樣能夠減小使用過程當中的誤操做,以及 `root` 帳戶密碼泄露的風險。點擊 `USER CREATION` ,建立一個新的帳戶,一樣 `ROOT PASSWORD` 同樣,若是密碼強度不夠,請點擊兩次 `Done` 按鈕。

圖片加載中...

完成安裝

  • 約15 ~ 30 分鐘後,CentOS 7 的安裝就大功告成啦。爲了不重啓後再次從優盤啓動,能夠先拔掉優盤,再點擊 Reboot 按鈕重啓計算機;也能夠在重啓時進入 BIOS 調整引導順序,恢復硬盤做爲第一引導盤。

    圖片加載中...

  • 開機後會看到一個黑白屏的啓動菜單,而且有一個默認選項,屏幕下方有一個 5 秒的倒計時,若 5 秒內沒有任何操做,將使用默認選中的內核啓動系統,也可使用上下鍵進行切換並按回車鍵,便可使用選中的內核啓動系統。這裏默認便可。

第三步 找回 Windows 10 啓動項

可能你們都注意到了,上面重啓以後,已經沒法進入以前的 Windows 10 系統。是的,CentOS 7 不能在安裝過程當中設置以後的啓動項,不像 Ubuntu 那樣,在安裝 Ubuntu 的過程當中,就能夠選擇啓動項,所以這時候就沒法進入 Windows 10 了。
不過,不用擔憂,由於 Windows 10 系統的引導信息以及數據都是還在的,咱們只須要在 CentOS 7 中找回 Windows 10 的引導信息並添加到啓動菜單中就能夠了。

  • 啓動 CentOS 7 並使用事先設定的帳戶,登陸系統。這裏我使用的是非 root 帳戶登陸的。

安裝 ntfs-3g

  • 右鍵桌面,打開一個終端。執行如下命令安裝 ntfs-3g

    sudo yum install -y ntfs-3g

之因此須要安裝 ntfs-3g ,是由於 Windows 家族專用的文件系統,CentOS 7 默認不能識別,而要想在 CentOS 7 系統中找回 Windows 10 的引導信息,勢必要讓 CentOS 7 系統識別 Windows 10 的文件系統,故安裝此庫。

更新 Grub2 啓動菜單,找回 Windows 10

  • 執行如下命令便可找回 Windows 10 引導信息:

    sudo grub2-mkconfig -o /boot/grub2/grub.cfg

這一條命令,是讓 grub2 自動掃描磁盤中已經安裝的全部系統的引導信息,並將其加入到啓動菜單中。重啓一下計算機,在上面提過的啓動菜單界面,是否是能夠看到一個有 Windows 字眼的啓動項啦?這就是你的 Windows 10!切換到此項,回車,我 Windows 10 又回來啦!

第四步 修復啓動菜單界面 Windows 版本顯示錯誤的問題

雖然 Windows 10 已經找回,然而,不盡如人意的是,引導 Windows 10 的菜單項上的 Windows 系統的版本並不是「Windows 10」,而是「Windows 7」或 「Windows 8.1」等。
初步推測,此啓動項上顯示的 Windows 版本號,取決於你從何版本的 Windows 升級到 Windows 10的(若你是從 Windows 7 升級到 Windows 10 的,那此啓動項的文字就會顯示「Windows 7」字眼,對於從 Windows 8.1 升級也是同樣的道理。未考慮直接安裝 Windows 10 的狀況)。
須要說明的是,這裏只是一個文字顯示錯誤,對正常使用沒有絲毫影響。但你有強迫症的話,請繼續往下看。

修復顯示錯誤

我已經打好了一個 patch,放到了這裏了,登陸已安裝好的 CentOS 7 系統,打開一個終端,並這行如下命令便可:

  • 下載patch

wget https://gist.githubuserconten...

- 安裝patch

((sudo cp 20microsoft-win10.patch / && cd / && sudo patch -p0 ) < 20microsoft-win10.patch)

## 錯誤緣由淺析
- 啓動菜單是執行 `Grub2` 的命令後,由 `Grub2` 生成的
- `Grub2` 自己並不能識別磁盤中已安裝的操做系統,它是依賴 `os-prober` 這個庫來識別的
- `os-prober` 本是爲 `debian` 系統編寫的,其在 `debian` 系統下不能識別 `Windows 10` 的問題已經修復
- CentOS 下的 `os-prober` 目前最新版本依舊是 `1.58` ,該版本依舊存在此問題,貌似 CentOS 下的 `os-prober` 無人維護。問題代碼位置是 `/usr/libexec/os-probes/mounted/20microsoft`
相關文章
相關標籤/搜索