哈嘍,大家好呀!這里是碼農后端。今天來聊一聊Linux下的yum源及其配置相關的內容。簡單來說,yum源就相當于一個管理軟件的工具,可以想象成一個很大的倉庫,里面存放著各種我們所需要的軟件包及其依賴。
一、Linux下軟件包的管理
1、軟件安裝方式
1)RPM包管理
需要單獨解決依賴問題。
2)YUM包管理
需要有網絡及YUM倉庫的支持,會自動聯網下載軟件,自動解決依賴
3)源碼安裝
安裝過程較復雜,但定制性很強。
2、源碼安裝的配置過程
在Linux系統中,源碼安裝一共分為三步(三步走):
1)配置過程(配置軟件的安裝路徑)
2)編譯過程(把軟件由源代碼編譯成可以安裝的程序)
3)安裝過程(把編譯后的程序進行安裝)
# 配置 && 編譯 && 安裝
./configure && make && make install
3、源碼安裝配置過程詳解
配置過程體現了較強的定制型,而非編譯安裝
# 進入軟件源碼包
cd 軟件源碼包
# 配置
# ./configure [選項]
# 查看選項幫助
./configure --help
# 最常用的選項
--prefix=... Directories to put files in /usr/local 軟件家目錄
# 其他
--bindir=... $prefix/bin 命令的目錄
--etcdir=... $prefix/etc 配置文件的目錄 httpd => /etc/httpd/httpd.conf
--mandir=... $prefix/share/man man 文檔路徑
--locale=... $prefix/share/locale 語言編碼
...
4、編譯過程詳解
make
在Linux操作系統中,make主要功能就是將其他語言的源代碼打包成Linux可以識別安裝的程序。編譯過程需要一個gcc或gcc++軟件(開發工具)的支持!
5、安裝過程
make install
6、源碼安裝軟件的卸載
# 第一步:進入到源碼的安裝包中(以axel-2.4為例)
cd axel-2.4
# 刪除軟件的安裝包等程序
make uninstall
# 卸載編譯與配置過程
make distclean
# 第二步:刪除軟件的目錄(舉例目錄為 /opt/axel)
rm -rf /opt/axel
二、YUM源概述
1、yum源作用
作用:軟件包管理器,類似360的軟件管家。
2、yum源優點
三種軟件安裝方式回顧:
1)RPM安裝(下載軟件、單獨安裝、需要解決依賴關系)
2)源碼安裝(下載軟件的源碼包,解壓,進入目錄=>配置+編譯+安裝)
3)yum源:可以理解為rpm軟件包管理的升級版
優點:能夠解決軟件包之間的依賴關系,提高運維人員的工作效率。
注:yum源底層還是基于RPM進行軟件安裝操作的,所以yum安裝軟件后,也可以通過
rpm -qa |grep 軟件名稱
?來查詢軟件包是否已安裝。
3、yum源分類
3.1 本地yum源
yum倉庫在本地(系統光盤/鏡像文件) => ?不需要網絡的支持
3.2 網絡yum源
yum倉庫不在本地,在遠程。
1)國內較知名的網絡源(aliyun源,163源,騰訊源,知名大學開源鏡像等)
阿里源:https://opsx.alibaba.com/mirror
網易源:http://mirrors.163.com/
騰訊源:https://mirrors.cloud.tencent.com/
清華源:https://mirrors.tuna.tsinghua.edu.cn/
2)國外較知名的網絡源(centos源、redhat源等)
3)特定軟件相關的網絡源(Nginx、MySQL、Zabbix等)
4、本機yum源備份(重要)
第一步:使用cd命令切換到/etc/yum.repos.d目錄
cd /etc/yum.repos.d/
第二步:對所有的倉庫文件(以.repo結尾)進行備份
tar -zcf repo.tar.gz *.repo
第三步:刪除所有的以.repo結尾的倉庫文件
rm -rf *.repo
三、本地YUM源配置
1、本地YUM配置
1)方式1:使用光盤鏡像作為YUM源倉庫
2)方式2:下載很多軟件,使用軟件包作為YUM源倉庫
2、使用光盤鏡像作為YUM源倉庫
第一步:在VMware系統中裝載CentOS7.6系統的光盤鏡像
第二步:把光盤掛載到某個目錄下
# 回到家目錄
cd ~
# 清空 mnt目錄
rm -rf /mnt/*
# 以只讀的方式將光驅掛載到 mnt目錄上
mount -o ro /dev/sr0 /mnt
# 掛載完成后,使用 lsblk列出塊設備的信息(這里查詢掛載點的信息)
lsblk# 選項說明:
-o :掛載方式,ro(readonly) =>代表以只讀的方式進行掛載rw(read/write)=>代表以讀寫的方式進行掛載
卸載或解掛可以使用 umount /mnt
第三步:把光盤掛載添加到開機啟動文件中
# 7版本中,需要先給文件增加一個可執行權限
chmod +x /etc/rc.local
# 把掛載命令追加到開機啟動文件中
echo 'mount -o ro /dev/sr0 /mnt' >> /etc/rc.local
注:/etc/rc.local,屬于系統的開機啟動文件。系統啟動后,會自動加載并執行該文件
第四步:編寫本地YUM倉庫文件
# 進入默認目錄
cd /etc/yum.repos.d/
# 創建一個以*.repo結尾的文件,名稱任意
vim local.repo[local]
name=local yum
baseurl=file:///mnt
gpgcheck=0
enabled=1
注:file://本地協議路徑,后面跟倉庫的具體路徑
配置完成后,運行以下命令讓其生效:
# 清除所有緩存
yum clean all
# 重新給本地倉庫建立緩存
yum makecache
# 列出所有倉庫信息
yum repolist all
重點:yum倉庫的標準格式:
1)[倉庫標識名稱],名稱任意,在一個文件中可以擁有多個標識
2)name=倉庫名稱?
3)baseurl=倉庫的路徑,支持多種格式,file://本地路徑,ftp://,http:// 或 https://?
4)gpgcheck=gpg密鑰,值可以是0(代表不檢測),1(代表檢測,如果是1,下方還要定義一個gpgkey=密鑰連接)?
5)enabled=是否啟動當前倉庫,值可以0,也可以是1(默認為1,代表啟動倉庫)
第五步:測試本地YUM倉庫是否可用
yum install httpd -y
3、man 5擴展
背景:在Linux系統中,給定一個配置文件,如何查詢這個文件中每一個選項的作用?
# 以前我們使用的是 man命令
man 命令
擴展:man 5 配置文件名稱
man 5 yum.conf
四、網絡YUM源配置
1、網絡YUM源的分類
1)使用比較知名平臺的YUM源(阿里云、騰訊、清華)
2)有些特定軟件(如Nginx、MySQL、Zabbix等)需要根據官網文檔自定義網絡YUM源
2、知名平臺的YUM源
阿里源:https://opsx.alibaba.com/mirror
騰訊源:https://mirrors.cloud.tencent.com/
網易源:http://mirrors.163.com/
清華源:https://mirrors.tuna.tsinghua.edu.cn/
百度搜索 => 騰訊源 mirror鏡像源
舉例:使用騰訊mirror鏡像源
1)備份系統舊配置文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2)獲取對應版本的CentOS-Base.repo 到/etc/yum.repos.d/目錄
以CentOS7為例:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
3)更新緩存
yum clean all
yum makecache
3、擴展:EPEL源配置
什么是EPEL源?
EPEL是對官網源的一個擴展。
CentOS-Base.repo文件 => 基礎源(官方自帶的YUM源)
epel.repo文件 => 擴展源,是對官方YUM源的一個補充
yum install epel-release -y
eg:會跑的小火車就是在epel源中
yum install sl -y
sl
4、特定軟件的YUM源配置
如特殊的幾個軟件,Nginx、MySQL、Zabbix
Nginx:http://www.nginx.org
MySQL:https://www.mysql.com/?
Zabbix:https://www.zabbix.com/
以安裝nginx為例:
1)找到官方文檔,配置YUM源,寫入到以下文件中(repo文件)
# 切換到默認yum目錄
cd /etc/yum.repos.d
# 新建并編輯配置文件(名稱任意)
vim nginx.repo[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
2)清理緩存:
yum clean all
yum makecache
3)安裝Nginx:
yum install nginx -y
五、自建YUM源倉庫
1、緩存安裝軟件包
什么時候需要緩存軟件?
下次還需要安裝相同版本的軟件包
由于網絡原因導致網絡安裝非常慢,將軟件包緩存下來,配置本地倉庫
2、如何緩存軟件安裝包
# 打開配置文件
vim /etc/yum.conf
3、把軟件及依賴軟件全部下載到某個路徑
1)只下載不安裝:
yum install --downloadonly --downloaddir=保存路徑 軟件名稱
eg:下載samba軟件及依賴軟件
# 創建一個文件夾用于保存文件
mkdir /soft
# 下載samba及依賴軟件
yum install --downloadonly --downloaddir=/soft samba
4、自定義YUM倉庫
第一步:在系統中安裝制作倉庫的軟件createrepo
yum install createrepo -y
第二步:把/soft文件夾做成一個本地的自建倉庫
createrepo /soft
第三步:在/etc/yum.repos.d目錄中創建一個soft.repo的倉庫
cd /etc/yum.repos.d/vim soft.repo
[soft]
name=soft yum
baseurl=file:///soft
gpgcheck=0
enabled=1
第四步:清理緩存+重建緩存
yum clean all
yum makecache
好了,以上就是今天這篇文章的全部內容了。如果你想及時看到我的文章,只需做這幾個動作:點星標、點在看(包括贊)、評論、分享,我就會經常出現在您的常讀列表,后面更新都會提醒。感謝大家的關注和支持,祝大家生活美滿,學業有成,事業蒸蒸日上!
往期精彩文章推薦(點擊下方藍字即可閱讀!)
往期推薦
Linux有哪些常用的高級擴展命令?
騰訊元寶,它來了!!
2分鐘帶你快速了解與網絡相關的硬件有哪些?