yum介紹
yum(全稱為 Yellow dog Updater, Modified)是一個在 Fedora和 RedHat 以及 CentOS 中的 Shell 前端軟體包管理器,基于 RPM 包管理,能夠從指定的服務器自動下載 RPM 包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝,
yum 的組態檔分為兩部分:main 和repository
/etc/yum.conf 為所有倉庫提供公共配置
/etc/yum.repos.d/*.repo:為倉庫的指向提供配置
main配置:
1 [main] #yum倉庫ID
2 cachedir=/var/cache/yum/$basearch/$releasever #yum 快取的目錄,yum 在此存盤下載的rpm 包和資料庫,默認設定為/var/cache/yum
3 keepcache=0 #安裝完成后是否保留軟體包,0為不保留(默認為0),1為保留
4 debuglevel=2 #debug級別
5 logfile=/var/log/yum.log #yum的日志檔案
6 exactarch=1 #有1和0兩個選項,設定為1,則yum 只會安裝和系統架構匹配的軟體包
7 obsoletes=1 #這是一個update 的引數
8 gpgcheck=1 #檢查包的來源
9 plugins=1 #是否啟用插件,默認1為允許,0表示不允許,我們一般會用yum-fastestmirror這個插件
10 installonly_limit=5 #允許同時安裝幾個程式包
11 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
12 distroverpkg=centos-release #ditribution version pkg 發行版版本號獲取
repository配置:
- yum的repo組態檔中可用的變數:
- $releasever: 當前OS的發行版的主版本號
- $arch: 平臺,i386,i486,i586,x86_64等
- $basearch:基礎平臺;i386, x86_64
- $YUM0-$YUM9:自定義變數
1 [base] #yum倉庫id
2 name=cdrom base #yum倉庫描述性文字
3 baseurl=file:///misc/cd #路徑,可以寫多個
4 https://mirrors.aliyun.com/centos/$releasever/os/$basearch/
5 gpgcheck=1 #檢查包的來源,0表示不檢查包,1表示啟用
6 gpgkey=file:///misc/cd/RPM-GPG-KEY-CentOS-7 #匯入key檔案
7 enabled=1 #1表示啟用,0表示禁用,默認啟用
yum用法:
安裝
yum install package1
yum install -y package1:安裝包
yum reinstall -y package1:重新安裝
卸載
yum remove|erase package1:卸載包,默認不卸載依賴包,如果連同依賴包一塊卸載,可使用yum history進行卸載
yum history:查看yum操作歷史記錄
yum history info 10 :查看第10條記錄
yum history undo 11 -y:撤銷yum歷史記錄第11條的操作,如果11條是安裝操作,會撤銷安裝,即可卸載依賴包
yum history redo 11 -y:重新執行11條記錄的操作
顯示倉庫串列
yum repolist顯示啟用的倉庫串列
顯示程式包
yum list all 顯示所有可用包
yum grouplist顯示包組
yum list installed顯示已安裝的包
yum list available 顯示未安裝包
升級程式包
yum update [package1] [package2]不跟包名的話,是更新所有包,帶包名的是更新具體的包
yum downgrade package1 [package2] [...] (降級)
yum check-update檢查可用升級
yum info 查看程式包information
yum provides | whatprovides feature1 [feature2] [...] 命令是由哪個包提供的,
yum clean all 清除快取,(如果還清不了,可以手動洗掉rm -rf /var/cache/yum)
yum makecache 構建快取
yum search string1 [string2] [...] 以指定的關鍵字搜索程式包名及summary資訊
yum deplist package1 [package2] [...] 查看指定包所依賴的capabilities
安裝及升級本地程式包:
yum localinstall rpmfile1 [rpmfile2] [...] (用install替代) yum localupdate rpmfile1 [rpmfile2] [...] (用update替代) 包組管理的相關命令: yum groupinstall group1 [group2] [...] yum groupupdate group1 [group2] [...] yum grouplist [hidden] [groupwildcard] [...] yum groupremove group1 [group2] [...] yum groupinfo group1 [...]</yum的命令列選項:
--nogpgcheck:禁止進行gpg check -y: 自動回答為“yes” -q:靜默模式 --disablerepo=repoidglob:臨時禁用此處指定的repo --enablerepo=repoidglob:臨時啟用此處指定的repo --noplugins:禁用所有插件 yum常用命令: yum install | remove | list | provides | repolist | clean all | history undo,redo N | search | info基于http協議的yum源(centos6,centos7)
http服務器端配置 1,關閉selinux,關閉防火墻 setenforce 0;systemctl stop firewalld2,安裝http yum install -y httpd
3,在/var/www/html目錄下新建目錄(/var/www/html是http的默認根目錄) cd /var/www/html/
mkdir -p centos/{6,7}/os/x86_64
4,掛載光碟到新建的目錄 mount /dev/sr0 /var/www/html/centos/7/os/x86_64/ mount /dev/sr1 /var/www/html/centos/6/os/x86_64/ 客戶端配置 5,配置.repo檔案(在/etc/yum.repo.d/目錄下) [base]
name=cdrom base
baseurl=http://192.168.3.234/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://192.168.3.234/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-$releasever
enabled=1
6,yum repolist --查看庫
yum list --查看包含的包
另一種方法: 服務器端:在/var/www/html/目錄下創建檔案yum.txt
vim yum.txt --可以配置多個路徑
http://192.168.3.234/centos/$releasever/os/$basearch/
https://mirrors.aliyun.com/centos/$releasever/os/$basearch/
客戶端:
mirrorlist=http://192.168.3.234/yum.txt --原來的baseurl替換為mirrorlist,指向yum.txt檔案路徑,讀取yum.txt里面的內容
自己創建yum倉庫
服務器端
1,在/var/www/html/目錄下創建dnf目錄
2,將rpm包拷貝到/var/www/html/dnf/目錄下
3,進入dnf目錄,創建庫,createrepo . ,會生成repodata目錄
客戶端
4,在/etc/yum.repo.d/目錄下創建一個dnf.repo檔案
[dnf]
name=dnf
baseurl=http://192.168.3.234/dnf --路徑指向服務器端的庫所在目錄
gpgcheck=0
5,查看庫 yum repolist
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/158863.html
標籤:Linux
上一篇:包管理-rpm
下一篇:Ubuntu 軟體管理
