三種方式:
- 掛載鏡像到本地(不支持遠(yuǎn)程訪問)
- FTP方式(支持遠(yuǎn)程)
- HTTP方式(支持遠(yuǎn)程)
掛載鏡像到本地
我這里的環(huán)境為vmware workstation削饵,只需要在設(shè)置里將下圖中的勾選即可,如果其他虛擬化環(huán)境也是如此诈嘿,物理機(jī)需要插入光盤。
掛載鏡像文件至media文件夾(掛在一個(gè)空目錄即可)弊予,如果對(duì)掛載命令不理解的人错沽,請(qǐng)移步百度.
mount /dev/cdrom /media
[圖片上傳失敗...(image-28a703-1645598143091)]
將系統(tǒng)自帶的yum倉庫文件轉(zhuǎn)移到備份文件夾里
cd /etc/yum.repos.d/
mkdir bak
mv Centos* bak/
[圖片上傳失敗...(image-935265-1645598143091)]
創(chuàng)建本地yum文件检访,并指向掛載的目錄
cat <<EOF > /etc/yum.repos.d/zabbix.repo
[centos]
name=CentOS
baseurl=file:///media
enabled=1
gpgcheck=0
EOF
測(cè)試是否正常
通過yum repolist查看是否OK
[圖片上傳失敗...(image-8bcc76-1645598143092)]
HTTP方式
第一種只適合本地化部署,如果需要遠(yuǎn)程訪問就需要用HTTP方式筐咧。
既然是http鸯旁,首先安裝web服務(wù)(這里可以是apache、可以是Nginx也可以是基于Python的web量蕊,自行選擇),其次安裝yum-utils擴(kuò)展模塊及createrepo創(chuàng)建鏡像倉庫工具。
yum -y install httpd
yum -y install yum-utils createrepo
創(chuàng)建yum倉庫的文件夾,文件夾自行創(chuàng)建
mkdir /kasar
下載安裝包到創(chuàng)建文件夾耀里,或者把已有的rpm包移到新建的倉庫文件夾下筒捺,這里下載vim包示范一下
yum -y install --downloadonly --downloaddir=/kasar vim
[圖片上傳失敗...(image-544afe-1645598143092)]
制作yum倉庫,創(chuàng)建倉庫元數(shù)據(jù)文件
createrepo /kasar
[圖片上傳失敗...(image-1b5fdf-1645598143092)]
修改http配置(如果用的Nginx就修改Nginx主配置文件)势就,將根目錄設(shè)置為yum倉庫目錄泉瞻,同時(shí)修改權(quán)限和所屬者,以及將welcome的文件修改掉(不然訪問首頁就是默認(rèn)測(cè)試頁)苞冯,并啟動(dòng)袖牙。
vi /etc/httpd/conf/httpd.conf
cd /etc/httpd/conf.d/
mv welcome.conf welcome.conf.bak
chown apache:apache /kasar -R
chmod 755 /kasar -R
systemctl start httpd && systemctl enable httpd
[圖片上傳失敗...(image-fb038c-1645598143092)]
[圖片上傳失敗...(image-ecc7f1-1645598143092)]
[圖片上傳失敗...(image-1b30e0-1645598143092)]
在客戶機(jī)使用,同樣屏蔽掉自帶yum倉庫
cat <<EOF > /etc/yum.repos.d/kasar.repo
[centos]
name=CentOS
baseurl=http://192.168.0.100
enabled=1
gpgcheck=0
EOF
添加rpm包yum倉庫舅锄,并更新
[圖片上傳失敗...(image-8f1b46-1645598143092)]
[圖片上傳失敗...(image-610449-1645598143092)]
更新本地yum倉庫
createrepo --update /kasar
[圖片上傳失敗...(image-1547fb-1645598143092)]
更新完之后再下載,成功了鞭达。
[圖片上傳失敗...(image-bf2a5f-1645598143092)]
這一種只能解決當(dāng)前所需要的包,遠(yuǎn)遠(yuǎn)滿足不了企業(yè)的需求巧娱,所以需要將阿里或者其他的down下來碉怔,那怎么做呢,以zabbix 阿里鏡像站為例禁添,首先安裝阿里的zabbix倉庫文件
cat <<EOF > /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.2/rhel/8/\$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/8/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
EOF
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
[圖片上傳失敗...(image-ef8970-1645598143092)]
查看鏡像倉庫
[圖片上傳失敗...(image-22d3a2-1645598143092)]
我們需要將數(shù)據(jù)包同步到本地,這里的名字就是repo id的前綴
reposync -r zabbix /kasar
創(chuàng)建repo元數(shù)據(jù)文件
createrepo /kasar/zabbix
[圖片上傳失敗...(image-ee2e96-1645598143092)]
客戶端使用,這里需要注意的是IP后需要跟zabbix的目錄撮胧,因?yàn)樵獢?shù)據(jù)文件在zabbix目錄里
cat <<EOF > /etc/yum.repos.d/kasar.repo
[centos]
name=CentOS
baseurl=http://192.168.0.100/zabbix
enabled=1
gpgcheck=0
EOF
[圖片上傳失敗...(image-b1a77e-1645598143092)]
[圖片上傳失敗...(image-c85c33-1645598143092)]
整個(gè)過程就完成了,ftp過程和http類似老翘,可以舉一反三芹啥,如果有疑問的小伙伴歡迎留言哦。
附錄
自動(dòng)更新腳本铺峭,對(duì)cron不熟悉請(qǐng)移步百度
vim /cron/kasar.sh #編寫同步腳本
reposync -r zabbix -p /kasar -d #刪除本地老舊
reposync -r base -p /kasar/
crontab -e #添加定時(shí)任務(wù)
0 0 1 * * sh /cron/repository.sh #每月1日0時(shí)更新yum倉庫