劉芃
摘? ?要:當用戶需要更新或安裝CentOS 7的軟件包時需要利用Yum工具通過訪問互聯(lián)網(wǎng)上的源來實現(xiàn),在實驗室中不僅受網(wǎng)絡環(huán)境限制,還由于網(wǎng)絡帶寬的原因會增加耗時,降低效率。文章通過復制網(wǎng)絡源到實驗室的專用服務器,將原本需要Internet完成的工作轉(zhuǎn)為LAN完成,節(jié)約網(wǎng)絡帶寬,提高實踐教學效率。
關(guān)鍵詞:Yum源;本地源;網(wǎng)絡操作
在計算機網(wǎng)絡技術(shù)、云計算技術(shù)與應用、大數(shù)據(jù)技術(shù)與應用等專業(yè)中,Linux操作系統(tǒng)是一門專業(yè)基礎(chǔ)課程,更是后續(xù)學習的基礎(chǔ)。很多服務與應用都是搭建在Linux操作系統(tǒng)之上,所以很多院校都和江西現(xiàn)代職業(yè)技術(shù)學院一樣,選擇CentoS作為“Linux網(wǎng)絡操作系統(tǒng)”課程的教學環(huán)境,也是后續(xù)課程的基礎(chǔ)。
但是在實踐教學過程中,文章發(fā)現(xiàn)如果需要在CentOS操作系統(tǒng)上安裝新的組件,需要使用Yum工具去訪問網(wǎng)絡源,在沒有網(wǎng)絡環(huán)境的機房該操作無法實現(xiàn)。即使機房電腦能上網(wǎng),也會因為多臺主機同時頻繁對互聯(lián)網(wǎng)訪問導致出口帶寬被迅速占滿,讓實驗效率和穩(wěn)定性大大降低。
本文以CentOS 7為例,介紹如何將網(wǎng)絡源中的包復制到本地,搭建實驗室本地Yum源,從而擺脫實驗過程中對互聯(lián)網(wǎng)的依賴,提高實驗效率和穩(wěn)定性。
1? ? 環(huán)境介紹
(1)硬件環(huán)境。能訪問互聯(lián)網(wǎng)的服務器一臺(僅需配置本地源時需要訪問互聯(lián)網(wǎng)),建議有100 G以上的磁盤空間用于存放源軟件包。能訪問服務器的客戶主機。
(2)軟件環(huán)境。操作系統(tǒng):CentOS 7.2。
2? ? 實現(xiàn)過程
2.1? 服務器端配置操作
(1)在服務器上以minimal方式安裝CentOS 7.2,并配置好IP地址等,測試互聯(lián)網(wǎng)連通性(本文中服務器IP地址為192.168.31.200/24,僅首次同步本地源時需要訪問互聯(lián)網(wǎng))。關(guān)閉防火墻和SELinux。
systemctl stop firewalld
systemctl disable firewalld
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config
setenforce 0
(2)備份系統(tǒng)自帶源,命令如下。
mkdir /opt/repobak
mv /etc/yum.repos.d/* /opt/repobak
(3)編輯repo文件,將網(wǎng)絡源指向國內(nèi),本文采用阿里云源鏡像。
vi /etc/yum.repos.d/base.repo #編輯Yum源文件
[centos7]
name=Centos7
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/
enable=1
gpgcheck=0
保存退出。
如果需要其他包也可在此處一并加入,格式一致。
(4)重新加載源文件并更新系統(tǒng)。
yum clean all
yum makecache
yum -y update
reboot
(5)安裝必要組件。
yum install -y createrepo vsftpd
(6)將遠程軟件包同步至本地。在這個過程中,根據(jù)選擇的軟件包數(shù)量和網(wǎng)絡條件不同,所花費的時間也不一樣。
mkdir /var/repo_local
cd /var/repo_local
reposync --repoid=centos7
(7)生成本地repodata。
createrepo /var/repo_local/centos7
(8)配置vsftpd服務。
vi /etc/vsftpd/vsftpd.conf
在末行加入:
anon_root=/var/repo_local/
保存退出。
(9)啟動vspftd并設置為開機自啟。
systemctl start vsftpd
systemctl enable vsftpd
2.2? 客戶端配置操作
(1)測試FTP服務器。在瀏覽器中輸入ftp://192.168.31.200,可以看到本地服務器的目錄列表。
(2)備份系統(tǒng)自帶源,命令與服務器一致。
(3)編輯repo文件,將源位置指向本地服務器。
vi /etc/yum.repos.d/local.repo
[centos7]
name=Centos7
baseurl= ftp://192.168.31.200/centos7
enable=1
gpgcheck=0
保存退出。
(4)重新加載源文件。
yum clean all
省略輸出。
yum repolist
省略部分輸出……
repo id repo name status
centos7 centos7 ? ? ? ? ? ? ? ? ? ? ? ?10,097
看到以上輸出內(nèi)容,則表示客戶端的Yum源已經(jīng)正確指向本地服務器,以后通過yum命令安裝軟件會自動從本地服務器上搜索并下載安裝。
3? ? 結(jié)語
筆者所在院校已經(jīng)在多個實驗室中通過本文所述方案搭建本地Yum源,學生在實驗過程中無須頻繁訪問互聯(lián)網(wǎng)來安裝軟件包,因為Yum源安裝在本地,訪問速度和穩(wěn)定性也得到提高。此方法不僅適用于高校的網(wǎng)絡實驗室,也適用于各類CentOS環(huán)境。同時,在RHEL和Ubuntu操作系統(tǒng)中,也可以采用類似的方法搭建本地源,本文不再贅述。
[參考文獻]
[1]劉遄.Linux就該這么學[M].北京:人民郵電出版社,2017.
[2]孫亞南.CentOS 7.5系統(tǒng)管理與運維實戰(zhàn)[M].北京:清華大學出版社,2019.