Linux 軟體安裝

来源:http://www.cnblogs.com/powercto/archive/2017/05/07/6821642.html
-Advertisement-
Play Games

不同的軟體的安裝方法是並不相同的。有的軟體只能通過特定的方法來安裝。 在不同的Linux發行版本上安裝同一個軟體的方法也未必相同, 因此有的時候,你在網上找到的在Ubuntu上安裝某個軟體的方法,也許在CentOS上並不能成功。 RPM、YUM、dpkg、apt-get、aptitude ...


[TOC]

0 前言

  • 不同的軟體的安裝方法是並不相同的。有的軟體只能通過特定的方法來安裝。
  • 在不同的Linux發行版本上安裝同一個軟體的方法也未必相同, 因此有的時候,你在網上找到的在Ubuntu上安裝某個軟體的方法,也許在CentOS上並不能成功。

1 RPM

1.1 介紹

RPM是 Redhat Package Manager的縮寫,是Linux上的一種軟體打包和管理的工具。 因為Linux的不同發行版(distribution),甚至同一發行版的不同版本之間往往有很多的不同, 開發者在某個Linux發行版下開發和編譯的程式,直接放到另外一個Linux下有非常大的可能性無法運行。 因此早期的Linux的軟體都是通過源碼來分發,使用者基本都是通過在自己的Linux平臺上重新編譯源代碼來安裝軟體。 但是這種編譯源代碼的方式比較繁瑣和複雜,普通用戶往往也難以掌握。後來 Redhat推出了RPM這個軟體打包的方式。就是在特定的Linux平臺上把軟體編譯好,然後把與這個軟體相關的文件和庫打包成一個文件(RPM包), 但需要註意的是: 通常不同的distribution所發佈的RPM包往往不能用於其他的Linux的distributions上面。 例如,針對Redhat的RPM包往往無法直接在OpenSUSE上進行安裝。因此,在使用RPM方式進行安裝的時候,必須選擇和你使用的平臺一致的RPM安裝包。

1.2 命令

rpm -ivh google-chrome-33.xxxx.rpm
  • -i: install 安裝
  • -v: verbose 顯示詳細信息
  • -h: hash 顯示安裝進度

升級某個軟體:

rpm -Uvh   abc.xxx.rpm             //abc這個軟體的新版本會覆蓋原來的版本,如果原來沒有安裝,直接安裝

查詢某個軟體是否安裝

rpm -q httpd                    //查詢是否安裝了apache服務
rpm -qa | grep pam              //查詢是否安裝了包含pam這個名字的軟體
rpm -qi httpd                   //列出目前安裝的apache服務的詳細信息
rpm -qR httpd                   //列出apache的軟體依賴關係

卸載軟體

rpm -e httpd   //卸載apache

1.3 問題

雖然用RPM包來安裝軟體免去了編譯源代碼的麻煩,但軟體之間的屬性依賴問題並沒有解決,有的時候,為了安裝某個軟體,你不得不先要安裝N個其他的軟體才行。


2 YUM

2.1 介紹

為瞭解決軟體依賴的問題,已經為了給用戶提供一種更加方便簡單的軟體安裝方法, YUM被開發出來了。 YUM 是Yellowdog Updater Modified 的縮寫. YUM 是建立在RPM的基礎之上的, 為用戶提供軟體安裝,升級,卸載的功能。YUM最大的好處是解決了軟體依賴的問題。YUM 把很多軟體的RPM包放在RPM 容器(repository)中, 用YUM 方式來安裝軟體的時候,會自動分析你要安裝的軟體的依賴關係,並會自動幫你安裝必須的“依賴軟體”, 這樣就解決了最為困擾用戶的軟體依賴的問題。

2.2 命令

查詢功能

yum list/search /info   xxx
例如:yum list httpd   //檢查apache是否已經安裝
yum info httpd  //查看apache的詳細信息, 類似 rpm -qi httpd
yum search httpd  //查詢和 apache (httpd)相關的軟體

安裝升級

yum install httpd
yum update httpd

卸載軟體

yum remove httpd

3 dpkg

3.1 介紹

用於Ubuntu。

dpkg 是一種比較低層的軟體包安裝管理工具,在安裝時,不會安裝軟體包的依賴關係;只能安裝所要求的軟體包。

dpkg通常用於 安裝.deb文件,不會自動解決軟體安裝過程中的依賴關係。

3.2 命令

dpkg -i package_name.deb  #安裝本地軟體包,不解決依賴關係
dpkg -r package #刪除軟體包
dpkg -P #刪除軟體包及配置文件

4 apt-get

4.1 介紹

用於Ubuntu。

apt-get 是一種高級的軟體包管理工具,在安裝軟體時,會自動解決軟體安裝過程中的依賴關係;

ap-get remove 不會自動刪除不需要的軟體包。

4.2 命令

apt-get install package #線上安裝軟體包
apt-get install package --reinstall   #重新安裝軟體包
apt-get remove package  #刪除軟體包
apt-get remove package --purge      #刪除軟體包及配置文件
apt-get autoremove #刪除不再需要的軟體包
apt-get clean #清除 /var/cache/apt/archives 目錄
apt-get autoclean #清除 /var/cache/apt/archives 目錄,不過只清理過時的包
apt-get build-dep package #解決編譯源碼 package 的依賴關係

5 aptitude

5.1 介紹

用於Ubuntu。

aptitude 是一種帶有UI界面的更高級的軟體包安裝管理工具,自動解決軟體包安裝中的依賴關係;並且在刪除的時候,會自動刪除不需要的軟體依賴關係安裝包;更加的智能,高效。


6 參考資料


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

-Advertisement-
Play Games
更多相關文章
  • 基本原理和步驟其實都是一樣的(可參看上一篇“MySQL的事務處理”),PDO中的事務處理就是調用PDO對象的三個方法: 開啟事務:beginTransaction 回滾操作:rollBack 執行操作:commit 事務處理最典型的就是借還錢。下麵以張三向李四還1000元為例 首先看一下資料庫中各自 ...
  • 步驟: 1.開啟事務 start transaction 當我們開啟一個事務的時候,我們對sql的操作都發生在記憶體中,但是沒有真正的反饋到資料庫磁碟的文件中! 2.回滾 rollback 回滾,就是恢復到事務開啟之前的最原始的狀態! 註意:回滾操作會自動的關閉一個事務,如果想再次執行事務,需要重新開 ...
  • 第一招、mysql服務的啟動和停止 net stop mysql net start mysql 第二招、登陸mysql 語法如下: mysql -u用戶名 -p用戶密碼 鍵入命令mysql -uroot -p, 回車後提示你輸入密碼,輸入12345,然後回車即可進入到mysql中了,mysql的提 ...
  • 整體結構 首先創建一個名為employee的資料庫 create database employee; 然後在該資料庫下建一張表 然後就是項目和資料庫進行聯繫,然後操作資料庫(增刪改查) 如果看了上一個項目大家應該被每次操作都要重新連接資料庫而煩惱,而且代碼具有高度的重覆性,那麼我們把相同的代碼封裝 ...
  • 如何讓一個表的時間欄位,隨著用戶對該行操作修改時自動更新 顯示表的所有欄位 數值列類型取值範圍及占用位元組 字元串列類型最大尺寸及占用位元組 時間列類型取值範圍及占用位元組 ...
  • Cygwin Unable to get setup from * 錯誤 解決方案 是因為用自定義鏡像站點,比如 http://mirrors.xdlinux.info/cygwin/x86_64/ 安裝x86_64位Cygwin時,因為多加了/導致Cygwin安裝程式找不到steup 換成如下即可 ...
  • shell的性質 Linux系統的shell相當於操作系統的“一層外殼”,它是命令語言解釋器,它為用戶提供了使用操作系統的介面。它不屬於內核,而是在內核之外以用戶態方式運行。它的基本功能是解釋並執行用戶打入的各種命令,實現用戶與Linux內核的介面。 個人理解:shell就是普通的用戶態程式,能夠理 ...
  • 前言:學習通配符有點為正則表達式打基礎的感覺……之前學python有學過正則表達式,所以這篇博客學起來還是挺快的。 特殊符號 通配符 他是shell的內置功能通配符,用過DOS的應該很瞭解,也很常用。通配符,指包含這些字元的字元串“?”,“*”,“[]”,{} 通配符含義 >匹配文件名 通配符詳解 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...