yum本地及遠端倉庫搭建
阿新 • • 發佈:2021-12-17
Linux中安裝軟體的三種方式
1、哪三種方式?
- rpm安裝
- yum安裝
- 原始碼編譯安裝
2、區別
rpm安裝類似於windows中的安裝包,下載下來之後直接安裝。缺點是不能自己解決依賴。
yum安裝基於rpm安裝,也就是在rpm上增加了自動解決依賴的功能。
原始碼安裝:通過編譯原始碼,得到軟體包。優點是可以自定製軟體包,缺點是比較複雜。
RPM安裝
安裝:rpm -ivh [軟體包名稱]
解除安裝:rpm -e [軟體包名稱]
升級:rpm -Uvh [軟體包名稱]
先執行這一步:
上傳與下載:yum install lrzsz -y
1.Rmp下載連結
https://repo.huaweicloud.com/centos/7/os/x86_64/Packages/?C=N&O=D
2.把下載好的rmp檔案從資料夾裡拖到linux系統裡
或者使用yum install wget命令
wget https://repo.huaweicloud.com/centos/7/os/x86_64/Packages/zsh-5.0.2-34.el7_8.2.x86_64.rpm
選擇安裝包:
3.安裝
[root@localhost ~]# rpm -ivh zsh-5.0.2-34.el7_8.2.x86_64.rpm Preparing... ################################# [100%] Updating / installing... 1:zsh-5.0.2-34.el7_8.2 ################################# [100%]
4.解除安裝
[root@localhost ~]# rpm -e zsh
5.更新
[root@localhost ~]# rpm -Uvh zsh-5.0.2-34.el7_8.2.x86_64.rpm
Preparing... ################################# [100%]
Updating / installing...
1:zsh-5.0.2-34.el7_8.2 ################################# [100%]
5、軟體包名稱
zsh-5.0.2-34.el7_8.2.x86_64.rpm
軟體包名稱:zsh
版本號:5.0.2
第多少次編譯:34
適用的平臺:el7_8(CentOS 7)
適用的系統位數:x86_64
副檔名:rpm
6、檢視軟體包的配置檔案
[root@localhost ~]# rpm -qc zsh
7、檢視是否安裝某軟體
[root@localhost ~]# rpm -q zsh
8、檢視當前系統安裝了哪些軟體
[root@localhost ~]# rpm -qa
9、檢視軟體的安裝路徑,檢視安裝了哪些東西
[root@localhost ~]# rpm -ql zsh
上傳與下載:yum install lrzsz -y
yum安裝
基於rpm安裝,自動解決依賴
1、安裝
yum install [軟體包的名稱]
引數:
-y : 免互動
--nogpgcheck : 忽略公鑰認證
2、解除安裝
yum remove [軟體包名稱]
引數:
-y : 免互動
3、更新
yum update [軟體包名稱]
引數:
-y : 免互動
注意:如果跟具體的軟體包名稱,就會更新指定軟體包;如果沒有指定,則更新系統所有的需要更新的軟體包。
4、yum安裝的生命週期
1、執行yum install zsh -y
2、去 /etc/yum.repos.d/ 找以 .repo 結尾的檔案
3、通過 .repo 檔案中的連結,找到對應的軟體倉庫
4、在對應的軟體倉庫中下載指定的軟體包
5、快取至 /var/cache/yum/
6、根據快取,安裝軟體包
7、刪除軟體包(keepcache 是否儲存快取,0 代表不儲存 , 1 代表儲存)
注:/etc/yum.conf 是yum的配置檔案。
執行步驟
[root@localhost ~]# cd /etc/yum
[root@localhost ~]# cd /etc/yum.repos.d
.repo結尾的就是yum源
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-Media.repo CentOS-x86_64-kernel.repo
CentOS-Debuginfo.repo CentOS-Sources.repo
ls檢視 裡面的就是映象源
[root@localhost yum.repos.d]# vim CentOS-Base.repo
開啟這個裡面的連結就是類似於華為雲的映象倉庫(軟體倉庫)
通過 .repo 檔案中的連結(url),找到對應的軟體倉庫
[root@localhost yum.repos.d]# vim /etc/yum.conf
裡面有一個cache dir檔案,是快取檔案
[root@localhost yum.repos.d]# cd /var/cache/yum/
[root@localhost yum]# ls
x86_64
[root@localhost yum]# cd x86_64/7/
[root@localhost 7]# ll
總用量 8
drwxr-xr-x. 4 root root 278 12月 16 17:14 base
drwxr-xr-x. 4 root root 183 12月 16 17:14 extras
-rw-r--r--. 1 root root 80 12月 16 17:19 timedhosts
-rw-r--r--. 1 root root 461 12月 15 09:55 timedhosts.txt
drwxr-xr-x. 4 root root 183 12月 16 17:14 updates
#裡面都是安裝包
在對應目錄下載安裝包
快取至 /var/cache/yum/ 這個目錄
根據快取 安裝軟體包 rpm只進行了這一步
刪除軟體包(keepcache 是否儲存快取,0不儲存,1儲存)
搭建yum私有倉庫
1.本地版
1、下載必須的軟體包
[root@localhost ~]# yum install yum-utils createrepo -y
2.建立軟體倉庫
[root@localhost ~]# cd /opt/
[root@localhost opt]# mkdir repos
repos就是倉庫
[root@localhost opt]# cd repos
3.建立Packages目錄並且把對應的軟體包複製到 Packages 目錄中
[root@localhost repos]# mkdir Packages
[root@localhost repos]# mv /root/zsh-5.0.2-34.el7_8.2.x86_64.rpm Packages/
4、初始化軟體倉庫
[root@localhost ~]# createrepo /opt/repos/
初始化完成之後倉庫就搭建完畢了
5.新增yum源
[root@localhost repos]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir backup
[root@localhost yum.repos.d]# mv *.repo backup/
做一個備份
[root@localhost ~]# yum-config-manager --add-repo=file:///opt/repos
file代表的是訪問本地的檔案
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ll
總用量 4
drwxr-xr-x. 2 root root 220 12月 16 20:30 backup
-rw-r--r--. 1 root root 85 12月 16 20:32 opt_repos.repo
[root@localhost yum.repos.d]# cat opt_repos.repo
[opt_repos] # 源的名稱
name=added from: file:///opt/repos # 源的簡介
baseurl=file:///opt/repos # 源的下載地址
enabled=1 # 是否啟用:1啟用 , 0不啟用
baseurl下載地址變成了本地的地址
6、生成快取
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache
7.測試是否能正常使用
[root@localhost yum.repos.d]# rpm -e zsh
解除安裝之前下載的軟體包
[root@localhost ~]# yum install zsh
源已經變成了opt_repos
2.遠端版
為什麼要用遠端版
只是用本地版的話每一臺機器都要搭建一個yum倉庫,太麻煩了
所以要在一臺機器上搭建完成之後另一臺機器就可以直接用
前六步與本地版完全一致
7.安裝遠端訪問軟體(Nginx)
安裝這個源
[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo
安裝epel源
[root@localhost ~]# yum-config-manager --add-repo=https://repo.huaweicloud.com/epel/7/x86_64/
安裝nginx 忽略公鑰認證
[root@localhost ~]# yum install nginx --nogpgcheck
8、修改nginx的配置檔案
把這個路徑改成根路徑
[root@localhost ~]# vim /etc/nginx/nginx.conf
如下圖1所示
開啟目錄索引 (目錄可以在網頁上顯示)
# 測試是否更改成功
[root@localhost ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
出現successful就更改成功了
啟動nginx
[root@localhost ~]# systemctl start nginx
關閉防火牆
[root@localhost ~]# systemctl disable --now firewalld
關閉selinux
[root@localhost ~]# setenforce 0
在網頁上輸入ip地址如果出現這個代表部署成功(圖2)
9、在測試機上
[root@localhost yum.repos.d]# yum install yum-utils -y
# 備份源
[root@localhost yum.repos.d]# mkdir backup
[root@localhost yum.repos.d]# mv *.repo backup/
# 新增源
[root@localhost yum.repos.d]# yum-config-manager --add-repo=http://192.168.15.101/
# 重新整理快取
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache
10、測試
[root@localhost ~]# yum install zsh -y
圖1:
。
圖2: