Linux系統下載新的服務或組件需要聯網后使用yum命令來進行安裝,但是通常來講Linux系統大部分的作用是用來當做服務器,那么就避免不了純內網使用的情況,這個時候我們就需要使用離線安裝的方法,但是大部分主機在安裝的時候選擇的是最小化安裝,導致了部分服務或組件所需要的依賴包未安裝,且系統展示依賴包并不會將所有需要的依賴包展示出來,而是只會展示出當前安裝的組件所需要的上一級依賴包,如圖所示。

為了避免這種非常費時間的離線安裝方式,我們選擇將yum指向的網絡源修改為本地源,為此,我們需要準備一個和系統版本相同的完整的DVDiso鏡像(下載的時候選擇體積最大的就對了),將鏡像發送到隨意目錄,介于現在網絡上其他教程都在mnt目錄下,我們就也放在這里。
一、iso鏡像掛載
cd /mnt ///進入mnt目錄
之后把iso鏡像放到這個目錄下

mkdir cdrom ///在當前目錄新建cdrom文件夾

mount -o loop CentOS-8.5.2111-x86_64-dvd1.iso /mnt/cdrom/ ///掛載鏡像到/mnt/cdrom目錄下,-o, --options <列表>掛載選項列表,以英文逗號分隔,mount的loop選項(它不是一個類型,它是一個選項)告訴mount這是一個“loopback”設備,一個用作塊設備的常規文件。

這個報錯是正常的,不需要理會。
vi /etc/fstab ///編輯配置文件
將下邊的命令加入到文本的最后一行,實現開機掛載鏡像
/mnt/CentOS-8.5.2111-x86 64-dvd1.iso /mnt/cdrom/ iso9660 defaults,loop 0 0 ///注意,此處除了最后的0 0中間是空格外,其他應全部為跳格鍵(tab鍵),之后wq保存退出。


reboot ///重啟電腦
df -h ///查看掛載情況

二、修改yum源配置文件
cd /etc/yum.repos.d/ ///進入源配置目錄
ll ///展示當前目錄下所有文件

mkdir bak ///在當前目錄創建bak目錄,用來備份這些repo文件

sed -i.bak 's/Centos*.repo/Centos*.bak/g' CentOS-Linux-* ///備份 CentOS-Linux- 所有文件到當前目錄重命名為CentOS-Linux- .bak

mv CentOS-Linux-*.repo bak/ ///復制當前目錄所有CentOS-Linux-開頭的bak文件到這個目錄下的bak文件夾

回到/etc/yum.repos.d/目錄,輸入以下命令
vi CentOS-Linux-Media.repo ///編輯yum配置文件Media倉庫源

將一下內如添加到文件末尾后wq保存退出:
[local]
name=local repo
baseurl=file:///mnt/cdrom/BaseOS
enable=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

vi CentOS-Linux-BaseOS.repo ///修改yum配置文件BaseOS的倉庫源,需要將里邊的內容用#注釋掉。

然后復制以下內容后wq保存退出:
[base]
name=base
baseurl=file:///mnt/cdrom/BaseOS/
gpgcheck=0
gpgkey=0

vi CentOS-Linux-AppStream.repo ///修改yum的AppStream倉庫源,需要將里邊的內容用#注釋掉。

輸入以下內容wq保存退出:
[AppStream]
name=AppStream
baseurl=file:///mnt/cdrom/AppStream/
gpgcheck=0
gpgkey=0

yum clean all ///進行清空yum緩存
yum makecache ///重新建立yum源


三、yum安裝軟件測試
yum install httpd ///安裝http服務測試

至此,測試完畢。
-
Linux系統
+關注
關注
4文章
614瀏覽量
29915 -
RPM
+關注
關注
0文章
45瀏覽量
18170 -
CentOS
+關注
關注
0文章
85瀏覽量
14763
發布評論請先 登錄
如何使用4腳無源晶振替換2腳無源晶振
怎么用外部源替換PNA內部源
電壓源內阻越小越好,電流源內阻越高越好嗎?
LINUXyum源替換為本地源
評論