C盤裝linux,D盤裝windows是否可行?如何實現?
C盤想用做開發,D盤用做遊戲。但網上找了大量方法都是C盤裝windwos,然後再裝linux,是不是在linux上裝windows難以實現?
蟹腰。
沒有什麼好的答案,所以來補一個。
首先,這不是在linux上裝windows,也不是在windows上裝linux。你問的是如何在電腦硬碟上安裝兩個系統,支持雙啟動的問題。
網上大量方法都是先裝Windows,然後再安裝Linux的原因是:Windows的安裝程序不認識Linux,但是Linux的安裝程序認識Windows。所以,先安裝Windows再安裝Linux,Linux的安裝程序能夠自動檢測到Windows的存在並幫你處理掉一系列關於雙啟動要做的配置。而反過來的話,Windows檢測不到Linux系統的存在因此就會按照電腦沒有系統的情況安裝,從而使得開機之後看不到啟動Linux的選項。
通俗的解釋到這裡就差不多了。
如果還想知道深一點兒:
電腦開機之後,CPU首先載入一塊專用晶元當中的程序,這塊晶元被稱為BIOS或者UEFI。
然後,在檢測到硬碟的情況下,CPU會去讀這個硬碟的第一個扇區的第一個磁軌。如果不理解什麼是扇區什麼是磁軌,那就把硬碟想像成一盤磁帶,CPU總是從A面的最開始放起。(什麼,沒見過磁帶?那麼就想像一團線,一卷膠帶,總是從頭用起)
這個地方記錄了磁碟分幾個區、每個區多大、以及接下來要讀哪個區裡面的代碼繼續執行開機啟動代碼。
先安裝Windows的話,Windows會將自己安裝在其中一個分區,我們假設這個分區是第一個分區,然後在硬碟的開頭記錄:請跳轉到第一個分區繼續執行。
這樣開機之後,Windows就啟動起來了。
然後再安裝Linux,Linux會檢測到第一個分區里已經有Windows了,於是將自己安裝到第二個分區,並且修改磁碟的開頭記錄,提供兩個選項:1,啟動Windows;2,啟動Linux
這樣就是雙啟動系統了。
但是如果安裝順序反過來呢?
Linux首先將自己安裝到某個分區(假設是第一個。這個其實是可以任意指定的),然後修改磁碟的開頭記錄,說請跳轉到第一個分區繼續啟動;
然後安裝Windows,Windows的安裝程序不認識Linux,認為兩個分區都是空的。這個時候,如果Windows安裝到第一個分區,則將Linux完全覆蓋;如果安裝到第二個分區,雖然Linux仍然在第一個分區裡面,但是Windows安裝程序修改了磁碟的開頭記錄,說請跳轉到第二個分區繼續啟動,而不是提供兩個選項,導致無法啟動進入Linux。
如果繼續修行,那麼
如果我們繼續學習,了解了磁碟開頭記錄當中到底寫了什麼,以什麼格式寫的,那麼,我們可以手動修改其中的記錄,讓其提供兩個啟動選項。這樣的話,就又可以變成雙啟動了。
其它答案當中的似懂非懂的內容:
- linux不存在c盤d盤論。對,但是只是一般不這麼叫。也不見得叫sda1、sda2。這些都只是名字而已。windows也不見得一定要有c盤。也可以是h盤e盤。所有這些只是習慣,並非本質。
- windows一定要安裝在c盤。錯誤。如上面所述,「c盤」只是一個名稱而已,完全可以改名叫「d盤」「e盤」甚至「z盤」。問題在於,windows安裝程序一般將安裝Windows的那個分區起名為「c盤」,所以讓大家覺得Windows只能安裝到「c盤」。其實,Windows安裝程序裡面是可以修改這個名字的
裝完linux再裝windows的時候,你不是往D盤裝Windows,你是往/dev/sda2(或者hda2,sdb1,hdb1啥的都無所謂了,反正是第二個分區/硬碟)里安裝的(如果你是在linux下展開wim的話)。
而且無論你裝windows的分區是這個磁碟上的第幾個分區,windows系統boot起來後,你看到的windows還是裝c盤的。
以上指出提問不合理之處,以下開始嚴肅討論。
分區方案建議分3個分區裝系統及相關文件,一個分區200M,linux掛載為/boot;一個分區,裝linux(掛在為/);一個分區,裝windows。如果有需要在兩個系統間數據交換/共享的話,再分一個分區。
我相信你已經在網上看了夠多雙系統安裝的文章,其實無論如何,安裝系統都不是問題,問題在於安裝完後把系統引導起來。
&主啟動記錄基於MBR------------------&>
計算機上電、BIOS自檢後,開始讀取磁碟的MBR,並確認接下來該從哪裡(哪個分區下的哪個文件)繼續啟動(Windows NT5如XP讀取C盤的NTLDR文件,如果沒有特別設定過的話,NT6則是BOOTMGR,linux則一般是grub2)。這個文件執行完畢後,將執行權交給安裝的系統完成啟動工作。