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