linux軟體管理-RPM

来源:https://www.cnblogs.com/1naonao/archive/2019/07/12/11177198.html
-Advertisement-
Play Games

[toc] linux軟體管理 RPM RPM的基礎概述 rpm:RPM全稱 縮寫,由紅帽開發用於軟體包的安裝,升級卸載與查詢 rpm包的命名規則 name: 軟體包名稱 version: 版本號, 主版本, 重大更新. 次版本, 子功能更新. 修訂號, 修複bug release: 發佈版本 el ...


目錄

linux軟體管理-RPM

RPM的基礎概述

rpm:RPM全稱RPM Package Manager縮寫,由紅帽開發用於軟體包的安裝,升級卸載與查詢

rpm包的命名規則

img

name: 軟體包名稱
version: 版本號, 主版本, 重大更新. 次版本, 子功能更新. 修訂號, 修複bug
release: 發佈版本 el6, el7 (hostnamectl)
arch: 系統平臺, i386、x86_64(hostnamectl)

rpm包的組成

安裝釋放的文件
軟體包的元數據(版本,發佈號,架構,描述,要求,更改日誌等)
腳本:安裝前執行的腳本和安裝後的腳本

Linux中軟體包類型

分類 安裝 版本
rpm包 預先編譯打包,安裝簡單 軟體版本偏低
源碼包 手動編譯打包,安裝繁瑣 軟體版本隨意
二進位包 解壓即可使用, 安裝簡單 不能修改源碼

註意:不管是源碼包,還是二進位包,安裝時都可能會有依賴關係

RPM軟體包的獲取途徑

1.RedHat光碟或官方網站 (通過掛載的方式訪問)
2.RPM查詢官網網站
3.Nginx軟體官方網站
4.MySQL軟體官方網站

linux執行mount/dev/cdrom/mnt

[root@localhost ~]# mount /dev/cdrom /mnt/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# ls /mnt/
CentOS_BuildTag  Packages                    RPM-GPG-KEY-CentOS-Security-6
EULA             RELEASE-NOTES-en-US.html    RPM-GPG-KEY-CentOS-Testing-6
GPL              repodata                    TRANS.TBL
images           RPM-GPG-KEY-CentOS-6
isolinux         RPM-GPG-KEY-CentOS-Debug-6
[root@localhost ~]# ls /mnt/Packages/|head 

RPM包安裝管理

rpm參數

-i:         #安裝
-v:         #詳細信息
-h:         #安裝進度 
--test:     #測試是否能夠安裝成功
--force:    #強制重新安裝
--nodeps:   #忽略依賴關係

#安裝軟體包, 需要指定軟體包絕對路徑
[root@zls ~]# rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
[root@zls ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm

#在軟體包所在目錄下可以不指定絕對路徑
[root@zls ~]# cd /mnt/Packages/
[root@zls Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm

#測試一個軟體包是否能在該系統上安裝
[root@zls ~]# rpm -ivh --test /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm

#如果軟體包存在, 強制再次安裝
[root@zls ~]# rpm -ivh --force /mnt/Packages/tree-1.5.3-3.el6.x86_64.rpm

#安裝samba服務需要依賴其他組件, 使用--nodeps可重新強制安裝
[root@zls ~]# rpm -ivh --nodeps  /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm

rpm包查詢命令

rpm -q      #查看指定軟體包是否安裝
rpm -qa     #查看系統中已安裝的所有RPM軟體包列表
rpm -qi     #查看指定軟體的詳細信息
rpm -ql     #查詢指定軟體包所安裝的目錄、文件列表
rpm -qc     #查詢指定軟體包的配置文件
rpm -qd     #查詢指定軟體包的幫助文檔
rpm -qf     #查詢文件或目錄屬於哪個RPM軟體
rpm -q --scripts    #查詢rpm包安裝前和安裝後執行的腳本


#查詢未安裝的軟體包信息
rpm -qip    //查詢未安裝的rpm包詳細信息
rpm -qlp    //查詢未安裝的軟體包會產生哪些文件


#查詢vsftpd這個rpm包是否安裝
[root@zls ~]# rpm -q vsftpd

#模糊查找系統已安裝的rpm包
[root@zls ~]# rpm -qa |grep ftp

#查詢vsftpd軟體包的相關信息
[root@zls ~]# rpm -qi vsftpd

#查詢rpm包所安裝的文件
[root@zls ~]# rpm -ql vsftpd

#查詢rpm包相關的配置文件
[root@zls ~]# rpm -qc vsftpd

#查詢配置文件或命令來自於哪個rpm包
[root@zls ~]# rpm -qf /etc/vsftpd/vsftpd.conf
[root@zls ~]# rpm -qf /usr/sbin/vsftpd


//查詢未安裝的軟體包會產生哪些文件
[root@zls ~]# rpm -qlp /mnt/Packages/samba-3.6.23-41.el6.x86_64.rpm

//查詢未安裝的軟體包會產生哪些文件
[root@zls ~]# rpm -qip /mnt/Packages/samba-3.6.23-41.el6.x86_64.rpm

#以上查詢只能查詢已存在 已安裝的包,如果沒有安裝,需要聯網查詢
[root@db04 ~]# yum provides zip
[root@db04 ~]# yum provides */ifconfig
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
base/filelists_db                                                                                                                                                                                                      | 6.4 MB     00:00
epel/filelists_db                                                                                                                                                                                                      | 7.9 MB     00:00
extras/filelists_db                                                                                                                                                                                                    |  24 kB     00:00
updates/filelists_db                                                                                                                                                                                                   | 3.6 MB     00:00
net-tools-1.60-114.el6.x86_64 : Basic networking tools
Repo        : base
Matched from:
Filename    : /sbin/ifconfig

RPM包升級命令

-U如果老版本不存在,就全新安裝,如果存在有新版本即升級

-f老版本必須存在

[root@zls ~]# rpm -Uvh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm

RPM包卸載命令

卸載包時需要先把依賴的包卸載掉,如果依賴的包是系統所必須的,那就不能卸載這個包,否則會造成系統崩潰

//先查詢, 然後卸載 
[root@zls ~]# rpm -qa |grep sh
[root@zls ~]# rpm -e zsh

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

-Advertisement-
Play Games
更多相關文章
  • Samba服務 samba是一個網路伺服器,用於Linux和Windows之間共用文件。 samba埠號 samba (啟動時會預設多個埠) 數據傳輸的TCP埠 139、445 進行NetBIOS名稱解析之類工作的UDP埠就 137、138 Samba的功能: ① 分享檔案與印表機服務; ② ...
  • jupyter-notebook的安裝不在此說明 在網上搜了很多方案都不行,好不容易從坑裡爬出來 以下為遠程連接配置方法 1.生成配置文件 2.生成連接密鑰 這裡有兩種方法 先說第一種:使用password指令生成密鑰,生成的密鑰在一個文件里 第二種方法:在python環境中生成密鑰 會生成一組密鑰 ...
  • 一:如果chmod-x/bin/chmod執行上述命令後,如何恢復 Per版:sudo perl-e’chmod 0775,”/bin/chmod” Python3版:sudo python-c”import os;os.chmod(“/bin/chmod”,0755)” 二:一臺電腦配置無限好,可 ...
  • [toc] Linux硬體基礎 一、電腦的相關介紹 現在的人們幾乎無時無刻都在使用電腦!而且已經離不開電腦了。像桌上的台式電腦(桌機)、筆記本電腦(筆電)、平板電腦、智能手機等等,這些東西都算是電腦。 台式機 電腦 台式機電腦主要分為主機和顯示器兩個部分,一般用於家庭娛樂、日常辦公,例如:聽音樂、 ...
  • [toc] yum工具及源碼包 yum 是RedHat以及CentOS中的軟體包管理器,能夠通過互聯網下載以rpm結尾的包,並且安裝,並可以自動處理依賴性關係,無需繁瑣的一次次下載安裝。 yum源 要成功的使用yum工具安裝更新軟體或系統,就需要有一個包含各種rpm軟體包的repository(軟體 ...
  • Linux 操作系統及其組成 操作系統(OS)是管理電腦硬體與軟體資源的電腦程式,同時也是電腦系統的內核與基石。操作系統需要處理如管理與配置記憶體、決定系統資源供需的優先次序、控制輸入設備與輸出設備、操作網路與管理文件系統等基本事務。操作系統也提供一個讓用戶與系統交互的操作界面。 一個典型的Li ...
  • 本文主要瞭解了Linux系統中的Shell,以及什麼是BATH。 ...
  • 普通文件類型 (-)Linux中最多的一種文件類型, 包括 純文本文件(ASCII);二進位文件(binary);數據格式的文件(data);各種壓縮文件.第一個屬性為 [-] ,這些文件一般是用一些相關的應用程式創建,比如圖像工具、文檔工具、歸檔工具... .... 或 cp工具等。這類文件的刪除 ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...