# 前言
希望你看完這篇文章後,你就是那個終結者(terminate)之一,一個時代的終結意味著另一個時代的開始,劃時代的神經網路作業系統因你而生,或者它非常龐大,或者它非常微小,或者它可以植入任何載體,或者有一天可以人機直接對接。作業系統已經進入了資訊化需要變革的時代,辦公人員不再侷限於windows,數碼發燒友不再侷限於IOS或安卓,虛擬現實、無人駕駛、三維/多維領域、生產自動化及遙感領域...等等,都等你去發掘與發展。讓我們告別隱私沒有保障、照片郵件被竊,讓我們告別清理垃圾與病毒的無謂浪費時間,讓我們告別繁重的製表、碼字、碼程式碼工作,讓我們告別...
計算機能做的事才剛剛開始...
## 工具
可能用到的工具:DiskGenius/windows系列自帶的磁碟管理/魔術分割槽Paragon Partition Manager/Ext2Mgr(百度一下)
喜歡裝系統到隨身碟或喜歡用隨身碟啟動的發燒友可能用到的工具:chipgenius配量產工具/upantools等各種winPE工具/USBoot 這些工具不是必須的。
利用easyBCD2.4 個人版
新增新條目:
1. 作業系統:選到windows 所有引數不要動,只是定位NTS及ANG0的生成位置(一切工作完成後把它們設為只讀並隱藏防止誤刪)。如果是其它作業系統 選對其它三項中的一項;
2. 行動式/外接儲存介質:ISO
名稱:保持原樣或自定義(安裝XXX)
路徑:必須手動瀏覽到正確的.iso
模式:記憶體4G以上建議 從記憶體載入
記憶體小於ISO載入大小,還是從磁碟執行更保險
否則到最後圖形介面 安裝源,會出現載入緩慢或卡死的情況;
說明:這是在目前作業系統所選的源位置,它只能確保進入到LINUX的裝機狀態
3. 進入LINUX安裝圖形介面前的預覽:
必須重新定位準確的磁碟源位置 按tab,編輯原命令列的後半斷,改為除錯命令 linux dd 互動模式
空格加上quiet引數 意思為靜默狀態 不會顯示詳細過程 quiet引數無關緊要。
檢視linux檔案系統所支援的盤 卷標 如:sda8
強制關機,啟動到LINUX安裝圖形介面前 linux/centos/RHEL/ubuntu install
按tab,編輯原命令列的後半斷,改為 ...=/dev/sd(字母)(數字) quiet
quiet引數非必須
這個字母與數字組合確定安裝盤ISO所在的位置,如上面的sda8。根據上面實際調式結果填寫。
4. 如果作業系統:所選的不是windows或者在DOS下直接進入的是grub或grub2狀態;
使用如下三條命令:
載入核心
linux /redhat/isolinux/vmlinuz
載入安裝映象
initrd /redhat/isolinux/initrd.img
初始化
boot
解釋:redhat根據情況換成centos或ubuntu或其它。
如果前面兩個檔案你把它放到了C盤根目錄而不是ISO所在盤的預設目錄,必須手工指定(按Tab一般都有提示,如果沒有提示,回到windows下可以藉助工具WINGRB檢視)到所在硬碟根目錄。
這是絕大多數人遇到的舊linux系統開不了機或者新裝linux系列的系統無法繼續下去的原因。當然包括光碟或隨身碟安裝的情況,光碟與隨身碟的存在因linux系統對它們的識別存在很多限制,如,不能識別NTFS、exFat。所以fat32為通用(windows與linux)格式。另外,光碟與隨身碟的存在可能會影響到硬碟分割槽的卷標識別順序。如上面,我們藉助`linux dd` 來檢視各分割槽的卷標。而且,linux安裝過程中它並不能友好地識別中文碟符。
## 準備工作
1、如果ISO大於4G,fat32檔案系統所格式化的分割槽或隨身碟或行動硬碟都無法順利放進ISO。怎麼辦?要麼先把檔案裝在這個盤再把它無損資料轉換格式為FAT32;要麼把package包削去一些元件以縮小ISO到4G以內,待系統正常運轉後用yum或手動編譯安裝想要的功能元件;要麼藉助工具Ext2Mgr,讓windows識別此盤或分割槽,複製ISO及必要的檔案進去。
2、必要的檔案有哪些:ISO原映象、ISO全部解壓後的主資料夾(以光碟ISO名為目錄名即可)、從主檔案目錄中複製出來兩個資料夾(images、isolinux不是空的是原資料夾)、再從isolinux中複製出來vmlinuz核心檔案和initrd.img安裝映象。有了這6大關鍵資料夾及檔案,什麼UltraISO製作啟動盤全部不要用了防止被加入木馬程式或錯誤的引導。
3、最後一個細節就是,安裝進入到linux/centos/redhat/ubuntu 圖形介面 安裝位置的磁碟劃分時,鑑於電腦的複雜性(如雙系統或多系統並存、掛載有多個硬碟、隨身碟或行動硬碟)。
必須搞清楚自己要把新裝的系統放在哪個硬碟或隨身碟或行動硬碟甚至雲網盤的哪個位置。明確盤後,再明確裝在哪個分割槽,這個分割槽最好是未經劃分的空閒空間。因為多個系統對硬碟的識別不一樣,在沒有成功安裝linux之前,最佳的方式是用fat32格式化全部空閒所在的空間(在這之前要建立分割槽主擴不論,工具隨便),反正又要刪除這個分割槽讓它成為空閒分割槽的。
選擇手動分配,點自動,再詳細改到自己理想或設計的大小。
我成功實現:win7(8或10或xp) 在C盤/或其它盤。redhat(這個可換為centos) 在硬碟的G後面那個空閒位置。 ubuntu(這個也可自定義)在64G的隨身碟中即插即用。三系統happy使用。基本能滿足一切學習與工作的需要。
## 安裝順序
倒過來,為什麼我沒有一開始就倒過來,那樣大家就沒有了自己動手實踐的機會,因為只有實踐出真知。關鍵是網上教程太多,電腦硬體情況更是五花八門。
第二步:準備所要的6個(你安裝的元件越多要準備的ISO或package就會更多,如果你自己懂封裝的話)關鍵檔案或資料夾(其下的檔案是原檔案或你自己封裝的)。
第三步,把第二步的東西複製進一個源盤或分割槽中,而且必須是linux在dos環境下能識別的,如fat32或ext2/3格式。
可能用到的工具:DiskGenius/windows系列自帶的磁碟管理/魔術分割槽Paragon Partition Manager/Ext2Mgr(百度一下)
喜歡裝系統到隨身碟或喜歡用隨身碟啟動的發燒友可能用到的工具:chipgenius配量產工具/upantools等各種winPE工具/USBoot 這些工具不是必須的。
## 啟動安裝
啟動安裝程式(我們藉助easyBCD 隨便下一個能用的就行 版本無所謂)
安裝成功後,linux/centos/redhat/ubuntu一般會在它的位置的頭部以它的方式boot。這個新boot只會引導你進入新的作業系統,它並不認識原有作業系統。怎麼辦呢?
## 收尾工作
解決辦法有二:
1,在新作業系統中,grub或grub2中加入原有的作業系統作為引導。(1與2兩個方法並用,隨便切換,更方便)
2,再次讓easyBCD發揮餘熱。可是已經無法進入windows就用不了easyBCD了。怎麼辦?這個大家有無數解決辦法,最暴力最直接的方法是,進入winpe修復C盤或舊作業系統的引導。
順利進入windows系的系統後,開啟easyBCD新增新條目,作業系統Linux/BSD選第一項grub(legacy這個模式要看你的主機板是否支援)或第二項grub2(大多數選這個),名稱(自定義為實際的作業系統關鍵字如linux
centos7 redhat7 ubuntu15等等你能看明白就行),驅動器(非常關鍵錯了引導不到新作業系統中或多作業系統的第X個系統中)驅動器(數字)下的0x開頭的/目錄 XX GiB,切記不是那個XXX MiB的Boot目錄。
如果有多個作業系統,在這裡多加幾次就行了,當然要加對了,加錯了重啟電腦後進不去再回到easyBCD重設就是了。重啟,祝你愉快!
# 後記
為什麼沒有附圖,因為你可能是在伺服器下部署,也可能只是學習需要裝在筆記本或家裡桌上型電腦上,或者工作需要辦公環境的電腦。自己試驗有千百種情況!!
當然可以直接走已經成功的路!只是少了折騰的樂趣而已。筆者試驗,有些袖珍系統完美穩定運行於u盤,且大小隻有幾百兆,如果用於適時或遙控還可縮小到幾十Mb。真是大開眼界,如果你有能力重構最底層的kernel,還會更小。它能直接識別ntfs、xfs等各種檔案系統下的檔案,可以整合你想要的一切功能。使勁折騰吧,認真你就輸了,一直認真下去你就牛了。(考慮到有第一次接觸電腦的潛力新手,reboot為linux系下的重啟命令 restart是dos或windows系的重啟命令 實在不行就斷電強制關機,筆記本取下電池或所有電腦按電源鍵5~15秒不放爆力關機 這個儘量少用。)
初稿2016年,2019修訂發表於CSDN。敬以此獻給學子們、前沿研究的科學家科技術工作者們。