2020年7月18日 星期六

[Linux] 如何安裝 CentOS....

        或許大家看到 Unix / Linux 就心生畏懼,說實在,我也是。但重另一個角度想,裝不起來又死不了人,好像也沒甚麼大不了。而實際上,Google 可以查到好幾卡車的安裝教學,慢慢看總是裝得起來,只是要花時間爬文。現在,小弟在此獻醜(我也是門外漢),只要一步一步複製貼上(複製貼上真的是人類最偉大的發明),就可以安裝 CentOS。這裡,我只說明利用 Serial / Console 安裝 CentOS。

        俗話說,工欲善其事,必先利其器。用 Serial / Console 的硬體,大夥兒自己準備吧。軟體的部分,以下慢慢解說。

        1. CentOS ISO 檔: 可以到 CentOS 的官網下載。版本當然是愈新愈好。不過,CentOS 8.X 與之前的 CentOS 7.X 有一些改版。用 8.X 也可以,保險的話用 7.8 也可以。
        2. rufus: 用來把 CentOS 的 iso 放入隨身碟,所以隨身碟的容量要足夠放入 CentOS 的 iso。
        3. PSPad: 文字編輯器。自己可以找個順手的。如果用 Windows 內建的記事本,可能會在每列有 ^Z 的結束符號(Windows 下看不到),Linux 下就會顯示了。所以找個順手的文字編輯器。
        4. 遠端操作軟體: 首推 MobaXterm,有個人用免費版(不知道可不可以用在公司)。或是 TeraTerm。如果透過 Serial / Console 或是網路才需要,如果主機直接有安裝 VGA + 螢幕,就不需要了。有 VGA + 螢幕,乾脆直接跑 GUI。MobaXterm 超級推薦,但請注意版權。

        以上的家當先準備好,接下來慢慢說明如何安裝 CentOS。

        1. 先用 Rufus 將 CentOS 的 iso 檔寫入 USB。大概是這樣,然後執行,等 Rufus 將 iso 寫入 USB。

        2. 因為是要用 Serial / Console 安裝,所以,修改 \isolinux\isolinux.cfg,在選單後加上
text console=ttyS0,115200n8。看起來像這樣。如果有 quiet,可以拿掉,也可以不拿掉。如果只加 text,而沒加 console=....,則是用 VGA 的文字模式安裝。

        3. 將 USB 插上安裝機器,進 BIOS 調整 USB 開機,模式用 Legency。開機,讓機器從 USB 開機。

        4. 正常來說,應該會出現選單。但修改 2 後,有的會出現選單,有的不會出現選單。即使沒出現選單也沒關係,過大約 60 秒,會自動執行第一個選單。只要能夠進行安裝就可以了。

        5. 接下來,應該要能夠出現這個畫面。如果出現這個畫面,就可以開始進行設定。

        6. 基本上,大概 3 不用設定,6 用預設,其他的可以進入裡面的選單去做設定。

        7. 其中,4 建議選 10

        8. 最重要的是 5,安裝目的不要選錯顆。

        9. 如果可以想要設定機器名稱,可以在 7 裡面的 1 設定。也可以安裝完修改。

        10. 要設定 root 密碼。也建議用 9 增加一個 user,且先設定好 user 密碼。

        11. 只要沒有 ! ,就可以按 b 開始安裝了。 

        12. 安裝完會需要 reboot,所以可以移除安裝的 USB。第一次開機過程中,會要求同意 License。印象中,好像是先按 1,再按 2,再按 c 就可以了。出現 login,就表示安裝成功了。

        13. 反正是用來做測試用的,大膽的用 root 的帳號密碼登錄。

        14. 通常,安裝完 OS 會先連上網更新。CentOS 也不例外。但是,上網更新前,先做兩個動作:

vi /etc/yum.conf        # 假設你會用 vi,應該說,你一定要會 vi。Linux 的文字編輯器,非要會不可。
installonly_limit=3        # 預設是 5,不改也沒關係。

vi /boot/grub2/grub.cfg
net.ifnames=0 biosdevname=0    # 將左側參數加在 console=ttyS0,115200 後面,不加也可以。加了會將網路裝置名稱改回舊的命名方式,寫 script 時,較容易寫。

        15. 安裝完整的 CentOS,通常都會附贈 FireFox 瀏覽器。反正都沒有 GUI 了,乾脆把 FireFox 移除。否則每次遇到 FireFox 更新,下載量大又沒用處。建議移除。 

 yum -y remove firefox

        16. 做到這裡,我會 reboot 系統。

reboot

        17. 重新用 root 登錄系統

        18. 更新

yum -y update
yum -y install epel-release

        19. 搞定收工



虛擬機小心得

        現在有許多虛擬機可以使用,比較有名的大概就 VMware Workstation Player,Oracle VirtualBox和 Microsoft Hyper-V。當然還有其他的虛擬機,在這裡並不是將他們一網打盡做個評比,只說說我試這些虛擬機的心得。

        我的目的是在 Host 機上(Win10 或是 Linux),安裝 Guest OS (Win10),且 Host 機可以連上網路,但是 Guest OS 中的網路是要斷開的,也就是說,Guest OS 中的網路是隔離的。此外,希望 Guest OS 的 CPU 的核心數愈多愈好,記憶體愈大愈好,顯示能力愈強愈好。

        虛擬機在硬體上有一些要求,現在的 CPU,不論是 Intel 或是 AMD 的 CPU,已經都有虛擬的功能,只要搭配 BIOS 的設定,安裝虛擬機都不是問題。至於虛擬機如何安裝,隨便 Google 都有,所以,這裡也不介紹如何安裝。

        VMware Workstation Player 是一個免費的軟體,應該說,它可以讓個人免費使用,可以安裝在 Windows 上或是 Linux 上。VMware Workstation Player 似乎會和 Microsoft 的 Hyper-V 打架, 所以 VMware Workstation Player 安裝在 Win10 上,必須做一些設定,否則 VMware Workstation Player 會開不起來。在剛裝好時,也是 VMware Workstation Player 無法正常啟動,網路上也提供了,所以修改了很多地方,最後參考了 https://snippetinfo.net/mobile/media/1656 的修改終於能夠正常啟動了。Linux 上也可以安裝 VMware Workstation Player,我目前是安裝在 Ubuntu 20.04 上,之前試過安裝在 CentOS 7.6 也可以。

        Oracle VirtualBox,我只在 Ubuntu 20.04 上試過,但在 VGA 的設定上,好像只能設定到 256M,所以後來就放棄 Oracle VirtualBox。只在 Oracle ViryualBox 上進行安裝過 Win10,就刪除 Guest OS 且移除 Oracle VirtualBox。

        如果 Host OS 是安裝 Win10 Pro 版本,那麼 Microsoft 的 Hyper-V 應該是最搭的,因為 Win10 Pro 直接贈送 Hyper-V,只要將 Hyper-V 功能打開,就直接用了,超級方便。但有一個很大的缺點,在 Guest OS 下的顯示能力,實在是爛到爆,如果只是做計算還不錯,但一碰到圖形,速度整個慢到不行。所以 Hyper-V 也被淘汰了。

        VMware 還有另一個 VM 的 Solution - VMware VMvisor,這也是免費軟體。之前說的 Host OS 不是 Win10 就是 Linux,但 VMvisor 本身就是 Host OS,所以要在機器上像安裝 Win10 或是 Linux 那樣,安裝 VMvisor,然後再安裝 Guest OS。但是 VMvisor 有兩個缺點。第一個是,免費版的 CPU 的核心數只能設定到 8。第二個是,VMvisor 的 Host 機本身不提供圖形介面的管理,必須由另一台機器,用 http://MVvisor IP 連過去,連安裝 Guest OS 也是這種方式。如果 8 個核心就足夠的話,以及不介意用另一台機器去操作 Guest OS 的話,VMvisor 也可以算是不錯的選擇。

        Linux 下也有虛擬機,但看起來有些複雜,所以就沒試了。此外,據說 Unraid OS 目前很夯,但 Unraid OS 是要收費的,所以我就沒試了。有興趣的人,可以試試看。

        如果最後要有總結的話,我覺得應該要看需求。我的需求是 Guest OS 能夠支援較多的 CPU 核心,較多的記憶體,VGA 的功能愈強愈好,Host OS 的網路可以連上網際網路,Guest OS 的網路卻要完全斷開。所以我選擇的是 VMware Workstation Player。但是,我的 Ubuntu 上的 VMware Workstation Player 在 Host OS 與 Guest OS 中傳遞檔案,Guest OS 會卡在複製的過程,不知道是本身就是這樣,還是我設定的問題? 但如果 Host OS 是 Win10,就沒有這個問題。所以,以我目前的經驗來說: 還是建議 Host OS 用 Win10,VM 用 VMware Workstation Player。

        但如果是要玩 VGA 直通,那麼據說 Unraid OS 很方便設定,也有人在 ESXi 上成功,Linux 的 VM 也可以,但 VMware 的 Workstation Player 是不用想了。

        至於我對於虛擬機的網路為什麼有這要求呢? 因為可以在 Host OS 上安裝 AnyDesk,就可以透過網際網路,異地使用虛擬機了。而虛擬機的網路是斷開的,所以以不怕有資料透過網路流出去了。

        PS: 如果虛擬機要更快,建議裝在 SSD 上。