[CentOS]使用光盤作為yum軟件安裝源
當Linux無法上網,但是有需要安裝一些軟件時,如果有系統鏡像iso,那么我們可以從光盤中來安裝一些軟件,當然前提是光盤中有這些軟件。
首先插入光驅,並掛載到文件系統中來
# 掛載光驅
mkdir /media/cdrom
mount /dev/cdrom /media/cdrom
然后到yum的源配置文件路徑
cd /etc/yum.repo.d/
這個目錄下默認應該有很多文件,例如
CentOS-Base.repo
CentOS-Media.repo
CentOS-Debuginfo.repo
CentOS-Vault.repo
這些文件中CentOS-Media.repo就是和光驅有關的源,將這個文件保留,其他文件都重命名一下(不要以repo為后綴名即可)。
mv CentOS-Base.repo CentOS-Base.repo.disable
mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.disable
mv CentOS-Vault.repo CentOS-Vault.repo.disable
這個時候,yum的源就只剩下光驅的源了,CentOS-Media.repo
接下來就可以安裝軟件了。
#搜索安裝包
yum --enablerepo=c6-media --disableplugin=fastmirror search samba
#安裝
yum --enablerepo=c6-media --disableplugin=fastmirror install samba.i686
其中,--enablerepo=c6-media的含義是,啟用光盤作為源,而c6-media是在CentOS-Media.repo文件中以中括號括起來的內容。
--disableplugin=fastmirror的含義是,yum默認啟用了fastmirror這個插件,它會讀取鏡像列表,並找到連接速度最快的mirror來作為軟件源,但是我們當前不能聯網,所以要禁用這個插件。
還有一個參數--disablerepo=base,和--enablerepo正好相反,是指將指定的源禁用,如果用這個參數,前面將repo后綴改名這一步就可以不用做了,但是一個repo文件里面可能有多個repo,那樣的話參數會比較長,所以還是采用改名的方法直接。
此時就可以使用上面的命令,正常使用yum來安裝已經存在於光盤中的軟件包了。
當以后可以上網時,將前面改過名的文件改回去,就可以了。
mv CentOS-Base.repo.disable CentOS-Base.repo
mv CentOS-Debuginfo.repo.disable CentOS-Debuginfo.repo
mv CentOS-Vault.repo.disable CentOS-Vault.repo
如果/etc/yum.repo.d/文件夾下沒有CentOS-Media.repo文件,那么只要手動創建一個就可以了,內容如下(以CentOS-6.3為例)
[c6-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/
file:///media/cdrom/
file:///media/cdrecorder/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
安裝完成后,彈出光驅
# 彈出光驅前先停止掛載
umount /media/cdrom