包管理工具-yum

来源:https://www.cnblogs.com/wangyanqiang/archive/2019/10/31/11772619.html
-Advertisement-
Play Games

yum介紹 yum(全稱為 Yellow dog Updater, Modified)是一個在 Fedora和 RedHat 以及 CentOS 中的 Shell 前端軟體包管理器。基於 RPM 包管理,能夠從指定的伺服器自動下載 RPM 包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟 ...


yum介紹

yum(全稱為 Yellow dog Updater, Modified)是一個在 FedoraRedHat 以及 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 firewalld
2,安裝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

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Aspose.Slides for .NET是一個獨特的演示處理API,它允許應用程式讀取、寫入、修改和轉換PowerPoint演示文稿。作為一個獨立的API,它提供了管理PowerPoint關鍵功能的功能,如管理文本、形狀、表格和動畫、向幻燈片添加音頻和視頻、預覽幻燈片等,而不需要Microsof ...
  • 在我們實際開發報表的時候,我們需要按一定的業務規則組織好報表的模板設計,讓報表儘可能的貼近實際的需求,在之前的隨筆中《使用FastReport報表工具生成報表PDF文檔》介紹了FastReport生成常規報表的處理,本篇隨筆回顧常規報表的處理效果,並介紹基於FastReport生成標簽紙列印需要的報... ...
  • 記得做這個框架是在2018年剛接觸.net core的時候,那個時候為了能夠專心的研究我開始不寫博客了,在公司運用了近一年的時間了,決定回來和各位分享我們所掌握的那星星點點的知識,希望可以幫助更多的開發人員找到更完善的解決方案,有不足的地方歡迎各位指教。好,那麼我們來說說這個日誌框架。 開發緣由 那 ...
  • 場景 DataGridView怎樣實現添加、刪除、上移、下移一行: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102814145 註: 博客主頁: https://blog.csdn.net/badao_liumang_qiz ...
  • 場景 在Winform中使用DataGridView實現添加一行、刪除一行、上移一行、下移一行。 註: 博客主頁: https://blog.csdn.net/badao_liumang_qizhi 關註公眾號 霸道的程式猿 獲取編程相關電子書、教程推送與免費下載。 實現 添加一行 效果 刪除一行 ...
  • 為了呼應《中國.NET開發者峰會2019上海站》,作為演講嘉賓,我希望和各位同行建立更多的互動,為此,我特地將部分演講內容,整理成文章先行發佈。 ...
  • 1. 前言 最近常常接觸到GetAlphaMask,所以想寫這篇文章介紹下GetAlphaMask怎麼使用。其實GetAlphaMask的使用場景十分有限,Github上能搜到的內容都是用來配合DropShadow的,所以這篇文章也以介紹DropShadow為主。 2. 合成陰影 先介紹一下合成陰影 ...
  • [20191031]完善vim的bccalc插件7.txt--//增加/ 2^16 %2^16功能,輸入\tx,例子:1398145029 = /2^16 %2^16 (type and mode) = 21334,5 = 0x535600050x53560005 = /2^16 %2^16 (ty ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...