CentOS 7 改朝換代–Boot Loader

CentOS 7 跟以往的 CentOS 截然不同,其實不少 Linux distributions 最近版本都己經有此現象,有一種舊人都要變成新人的感覺。

Ref: http://dareneiri.github.io/Configuring-Grub-2-on%20CentOS-7/

事緣近日從新設定一台老爺電腦作老友的練習用途(練習一些 Web project 事情),那台電腦大約是 2008 年購入吧,確實年月要翻看一下自己的網誌才有機會知道了。老爺機伯伯有多老爺?Atom 330 CPU、945 Chipset 的 NetBook/NetTop 簡約版、只有單 RAM slot 2GB RAM、單 HDD,但它沒有太細小的機箱,只是大Book-size,但卻配上一台效能十分差的 Slot-in 式 DVD-writer。Atom 330 在當年來說算是少見的 2 核心加 Hyper-theading,專為 NetTop 而設,不過時至今日,它真的很慢呢。

Dual-boot with Windows XP and CentOS 7

為求方便受訓者使用,尤其是去到若干階段時進行 Backup,或是闖下大禍時能 Restore,又要顧及不熟習 Linux/UNIX-like 的朋友們需要,於是決定 Dual-boot。有想過以 Windows 7/10 伴隨,但 Windows 7 有 Device drivers 相容性問題,也較 XP 運行起來緩慢(Device drivers 問題有關吧),而 Windows 10,看來它需要的 GPU 效能並不是 Atom 330 所能有效支撐的,CPU loading 總是攻頂。

Windows XP 只支援 MBR Boot-loader,CentOS 7 也能支援但需要伴隨 XP 的話,會有很多問題,即使己經是先安裝 Windows XP 才安裝 CentOS 7,主因是 GRUB 2 on CentOS 7 己經截然不同。首先即使先安裝 Windows XP,也無法 Detect 得到而自動加上 Windows XP item 於 Boot menu 上。而加上 Windows XP item 的方法,古怪得很,所需要的指令跟不同 OS 性質又需特別配搭。暫時來說,除非有心機仔細研究 GRUB,否則只好查看好些神人的 Blog post 解救。奈何 CentOS 7 尚算新的,分享出來的神人 Post 實在不多。這裡分享的 Reference 也是近日才找到。

特別注意事項

如今 PC Boot-up,有 UEFI BIOS、GPT Partition Bootup、MBR Bootup 等等,各有好處但又似乎太多種了吧。Windows XP 只能用 MBR 模式,一個 Disk 中只能有四個 Primary partition,又或是最後一個化為 Extended partition,然後在其中建立多個 Logical partitions。問題來了…

Disk 0

Partition 1: Pri, XP OS NTFS
Partition 2: Pri, Document NTFS
Partition 3: 打算建立 Extended partition 供 CentOS 7 使用,讓它建立 Logical partitons for LVM type partitoin group

結果會是失敗的!CentOS 會無法順利讓你劃出 /boot partition 以及 BIOSBOOT 這個 special boot loader area。BIOSBOOT 需要 1MB/2MB 空間(CentOS 7 似乎必要 2MB),相信用作存放 GRUB 的,它必須要位於 Disk 上的 First Parition,而且要是 MBR type,最傳統的 Standard partition。而 /boot partition 也需要 MBR type!屈指一算,這樣的話於 CentOS 7 installation 階段間規劃 Partition layout 便會出現問題,因為這樣會出現 4 個 Primary partitions,無法空出最後一個用作 Extended partiton。

若然 Document NTFS 那一個預先規劃,或是使用 Partition tools 修改為 Logical Partition 的話,能否解決問題呢? 答案是”不能”的!這樣又會令到 CentOS installer 無法構建它需要加上 partition 的作業。即是說,需要讓 installer 能全權控制建立 Extended partition,不能自行預先己存在 Extended partition。

解決方法

Disk 0

Partition 1: Pri, XP OS NTFS

安裝完 Windows XP,用 Partition tool 將它移後一點,前方預留 510 MB 吧。何解要約為 500MB?因為…

Disk 0

Partition 1: Pri, BIOSBOOT 2MB
Partition 2: Pri, /boot about 512MB for kernals image files
Partition 3: Pri, XP OS NTFS
Partition 4: Extended partition
    Logiical partitions, those partitions are also created by installer for LVM Group type

Boot-loader 修改

前文所述,Bootloader GRUB 這位大俠不知何解如今變得無法認出 Windows XP 呢,完事後你會發覺電腦 Reboot 時直衝入 CentOS 7 only…。此時就要用本文前部分提供的 Reference 去好好修改一下 GRUB2 的 Boot menu item 了。

接著又會發現失敗的!那個修改方法只適用於 Windows 7,Windows XP 環境下需要再加些少東西,可參考這個:

https://bbs.archlinux.org/viewtopic.php?id=153988

結果新 entry item 大概會變成這樣:

menuentry “Windows 7” { insmod ntfs set root=(hd0,1) search –no-floppy –fs-uuid –set BE4CA71B4CA6CD89 chainloader +1 }

root value 當然必須自行因應情況修改,uuid 則可用指令 sudo blkid 取得。

這部 NetTop 過去的任務

題外話,趕緊設定 Server 的大可以先行離開這頁了。

我手上的那一台 NetTop 老爺機,過往曾擔當多個角色。

  1. 老爸用的電腦,可惜自從轉用 Android phone 後實在太少再使用了。他又不懂打字,電腦用手寫板也吃力(手機手寫又甚少會出現 Cursor lost focus 問題吧)
  2. 呆在一角
  3. 置於房中跟主力大大台的 Desktop PC 相伴,只用作收聽電台節目重溫,預定時間自動休眠,作為睡前的床頭收音機角色似的。Desktop PC 有時太忙,播放有機會中斷或不順暢,所以再利用 NetTop 作為最能順暢持久播放角色。加上不喜歡利用手機放近自己的頭部做這角色呢。(好似有點夾硬再利用它似的吧)
  4. Windows 10 試驗,眼見 2015 年的 Atom CPU 也引發大量 Atom based Windows 10 Tablet,打趣地試一試N年前的 Atom 330 又會如何…結果是…
  5. FreeBSD 10.2 試驗,但實在對 FreeBSD 這個老大哥的近代版本極度失望。FreeBSD 的悠長歷史、地位、角色,去到這個 10.x 世代似乎己經有點累了吧。其實其它 BSD 分支也有這種狀況,開始變得風格太古老了,包括 MacOS X 呢。有人說 MacOS X 根本是一隻舊船,不斷修修補補。甚至乎形容它為一隻秀花鞋,我心想這樣說的人或許是比喻若要將 Mac OS X 這個 BSD 分支拿來當作 Workstation-level or Server-level 角色時會有多慘吧。

觀乎 Server 界也甚少會用 Mac OS X Server 構建,…。不談太多了,Apple 的世界實在太有宗教色彩似的。談太多只會惹來宗教式衝突。或許 Apple 用家們就是一直地享受切有所寄托,簡簡單單地接受安排就好了吧。這方面對於我這個甚麼都想試下用下改下研究下的人來說,實在不太適合。Mac OS X 環境十分困悶,我承認我是喜歡打開車頭蓋研究一番改改改的人,即使修改上往往假手於人,也要從旁細看一番。好幾次都有 Designer、影片拍攝製作人都跟我說,見客才用 MacBook Air,家裡公司裡都是 PC 砌出 Super-workstation 呢 (なるほど~)。Apple PC 於 G4/G5 年代裡仍然有不少的可改造性,如今的 MacBook/MacBook Pro/MacBook Air/iMac… 太過電話化了吧,鼓勵用家們跟隨密密地整台換掉呢。

蘋果(Apple)能夠在粉絲大腦中引起“宗教式”的反應

http://buzzorange.com/techorange/2011/05/20/%E8%98%8B%E6%9E%9Capple%E8%83%BD%E5%A4%A0%E5%9C%A8%E7%B2%89%E7%B5%B2%E5%A4%A7%E8%85%A6%E4%B8%AD%E5%BC%95%E8%B5%B7%E2%80%9C%E5%AE%97%E6%95%99%E5%BC%8F%E2%80%9D%E7%9A%84%E5%8F%8D%E6%87%89/ [TechOrange]

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です