一個小時內創建一個 CentOS 家庭實驗室
用一個帶有虛擬化軟件的系統(CentOS ISO),花費一個小時左右來設置一套自給自足的基本 Linux 服務器。
當學習新的 Linux 技能時(或像我一樣學習 Linux 認證),在筆記本電腦上有一些可用的虛擬機(VM)是很有幫助的,這樣你就可以在上面學習。
但是,如果在沒有良好互聯網連接的地方,你卻想在一個 Web 服務器上工作,該怎么辦? 想要使用沒有安裝過的其他軟件,該怎么辦? 如果需要從發行版的存儲庫中下載它,那么你可能會碰壁。只要做一點準備,你就可以設置一個 家庭實驗室,你就在任何地方安裝所需的任何東西,無論是否有網絡連接。
要求如下:
- 一個你打算使用的已下載的 Linux 發行版(例如,CentOS、Red Hat 等)ISO 文件
- 一臺具有虛擬化功能的主機。這里使用帶有 KVM 和 virt-manager 的 Fedora,但其它 Linux 也可以類似工作。你甚至可以使用 Windows 或 Mac 進行虛擬化,但在實現方面存在一些差異
- 大約一個小時
1、為存儲主機創建一個虛擬機
使用 virt-manager
創建一個中等規格的虛擬機:1GB RAM、一個 CPU 和 16GB 磁盤空間就足夠。
在虛擬機上安裝 CentOS 7。
Installing a CentOS homelab
選擇你的語言并繼續。
單擊 “安裝位置”,選擇本地磁盤,勾選 “自動配置分區” 復選框,然后單擊左上角的 “完成”。
在 “軟件選擇” 下,選中 “基礎設施服務器” ,選中 “FTP 服務器” 復選框,然后單擊 “完成”。
Installing a CentOS homelab
選擇 “網絡和主機名”,啟用右上方的 “以太網” ,然后單擊左上角的 “完成”。
單擊 “開始安裝” 開始安裝操作系統。
在安裝時務必設置一個 root 密碼,就可以創建一個帶有密碼的用戶。
2、啟動 FTP 服務
下一步是啟動并設置 FTP 服務以運行并允許它通過防火墻。
用 root 密碼登錄,然后啟動 FTP 服務器:
systemctl start vsftpd
允許它在每次啟動時都能工作:
systemctl enable vsftpd
設置防火墻允許通過的端口:
firewall-cmd --add-service=ftp --perm
立即啟用此更改:
firewall-cmd --reload
獲取你的 IP 地址:
ip a
(可能是 eth0
),在之后會用到。
3、復制本地存儲庫中的文件
通過虛擬化軟件將安裝 CD 掛載到虛擬機。
創建待掛載光盤的臨時目錄:
mkdir /root/temp
掛載安裝 CD:
mount /dev/cdrom /root/temp
將所有文件復制到 FTP 服務器目錄下:
rsync -avhP /root/temp/ /var/ftp/pub/
4、將服務器指向本地存儲庫
基于 Red hat 的系統使用以 repo
結尾的文件來確定從哪里獲得軟件更新和新的軟件。這些文件在以下路徑
cd /etc/yum.repos.d
你需要擺脫那些使你的服務器在互聯網上尋找 CentOS 存儲庫的存儲庫文件。可以把它們復制到根目錄下保存起來:
mv * ~
然后創建一個新的存儲庫文件來指向你的服務器。使用常用的文本編輯器創建一個名為 network.repo
文件,輸入以下內容(將 <your IP>
替換為在步驟 2 中獲得的 IP 地址),然后保存:
[network]
name=network
baseurl=ftp://192.168.122.<your ip>/pub
gpgcheck=0
完成后,可以用下面的命令來測試:
yum clean all; yum install ftp
如果 FTP 客戶端按照預期從 “network” 存儲庫安裝,那么本地倉庫就已經設置好了!
Installing a CentOS homelab
5、使用你設置的存儲庫安裝一個新的虛擬機
回到虛擬機管理器,并創建另一個虛擬機。但這一次,選擇 “網絡安裝”, URL 為:
ftp://192.168.122.<your IP>/pub
如果你使用的是不同的宿主機操作系統或虛擬管理器,像前面一樣安裝虛擬機,并進行下一步。
6、將新的虛擬機設置為使用現有的“network”存儲庫
你可以從現有服務器復制存儲庫文件到這里使用。
和第一個服務器示例一樣,輸入:
cd /etc/yum.repos.d
mv * ~
然后:
scp root@192.168.122.<your IP>:/etc/yum.repos.d/network.repo /etc/yum.repos.d
現在可以使用新的虛擬機并從本地存儲庫獲取所有軟件了。
再測試一遍:
yum clean all; yum install screen
這將從本地存儲服務器安裝軟件。
這種設置,讓你能夠脫離網絡安裝軟件,創建一個更可靠的環境,擴展你的技能。