1. 程式人生 > >Linux系統中安裝軟體的幾種方式

Linux系統中安裝軟體的幾種方式

目錄

紅帽派:

Linux有很多種發行版本,各種發行版本之間安裝軟體方式和命令不一樣,同一個版本之間安裝軟體也有不同的方法。但是,大體來說,Linux有兩大派系,一個是紅帽派系,包含Redhat、Centos、Fedora等。還有一個是Debian派系,包含Kali、Ubuntu等。

紅帽派:

原始碼包安裝:

原始碼安裝需要安裝編譯工具: yum -y install gcc gcc-c++ make

以Redhat下安裝apache為例

  • 先網站下載原始碼包 httpd-2.2.15.tar.gz
  • tar -xvf  httpd-2.2.15.tar.gz  -C   /usr/src   將其解壓到 /usr/src/ 目錄下
  • 到其解壓目錄 /usr/src/httpd-2.2.15/ 下, ./configure  執行configure配置檔案,設定安裝目錄,安裝模組等,不設定的話,軟體預設安裝在 /usr/local/apache2/目錄下。如果  ./configure  --prefix=/usr/local/https/  ,則是將其安裝在/usr/local/https/目錄下。此時還並未安裝,只是配置安裝路徑
  • make 編譯,生成可執行的二進位制檔案Makefile
  • make  install 安裝。此時,軟體安裝在 /usr/local/https/ 目錄下

安裝完成之後對安裝包的清理

  •     進入其解壓目錄  /usr/src/httpd-2.2.15/下  ,  make  uninstall   或者   make   clean 用於清除上一次的編譯
  •     然後返回到上一級目錄,把 httpd-2.2.15 刪除
  •     如果要解除安裝軟體的話,把 /usr/local/apache2 這個軟體刪除就可以

rpm包安裝:

RPM (RedHat Package Manager) :由紅帽公司提出,建議統一的資料庫檔案,詳細記錄軟體包的安裝、解除安裝等變化資訊,能夠自動分析軟體包依賴關係
 
RPM包的命名格式: firefox-17.0.10-1.el6.centos.x86_64.rpm
                                軟體名稱 版本號發行次數 硬體平臺副檔名

rpm指令管理
  針對已安裝軟體

  •           rpm -qa:查詢所有已安裝軟體的rpm包資訊,列出包的版本
  •           rpm  -q httpd: 檢視 httpd 是否安裝
  •           rpm -qi  httpd:列出 httpd 軟體的詳細資訊
  •           rpm -qc httpd:檢視 httpd 的配置檔案目錄
  •           rpm  -ql  httpd:檢視 httpd 所包含的檔案
  •           whereis  httpd:檢視httpd的安裝路徑和可執行檔案路徑

    根據指令搜尋包的名稱

  •           which vim:搜尋指令在系統中的路徑
  •           rpm -qf   指令的絕對路徑 : 檢視該命令是由哪個rpm包所提供  rqm -qf  /usr/bin/vim

  針對未安裝軟體(需要把光碟檔案掛載,然後進入其Package目錄下  

  •          rpm -qpl 包.rpm  選項p表示package,後面需要寫包的完整路徑資訊,qpl表示列出這個包在安裝之後生成哪些檔案和目錄
  •          rpm -qpi 包.rpm  查詢未安裝包的詳細資訊

  安裝與解除安裝

  •         rpm  -ivh  包.rpm        i表示安裝,v表示顯示安裝過程,h表示以‘#’作為進度,顯示安裝進度
  •         rpm  -e  包的名稱       移除指定的rpm包

yum源安裝:

YUM(Yellow dog  Updater Modified): 基於RPM包構建的軟體更新機制,可以自動解決rpm包之間的依賴關係,所有軟體包由集中的yum軟體倉庫提供

  •   yum  clean all                           清空快取資訊
  •   yum  list                                   列出所有包的資訊
  •   yum  list  httpd                         檢視 httpd 是否安裝
  •   yum  info httpd                        顯示 httpd 包的詳細具體資訊
  •   yum install httpd   -y               安裝 httpd 包
  •   yum remove httpd  -y            解除安裝 httpd 包
  •   yum search 關鍵詞                 根據關鍵詞,在已發現的repo源中搜索包含關鍵詞的rpm包
  •   yum provides 命令                   根據命令,在已發現的repo源中搜索安裝指令的rpm包
  •   yum history  list/info/undo/redo number             history可以列出,檢視,重灌,反安裝對應的包,但是是以yum指令的操作順序為依據的,所以需要加指定的數字執行

Debian派:

Deb包安裝:

DEB是Debian軟體包格式的副檔名,Debian包是Unixar的標準歸檔,將包檔案資訊以及包內容,經過gzip和tar打包而成。
處理這些包的經典程式是dpkg,經常是通過Debian的apt-get來運作。deb 格式是 Debian 系統(包含 Debian 和 Ubuntu )專屬安裝包格式,配合 APT 軟體管理系統,成為了當前在 Linux 下非常流行的一種安裝包
 
dpkg指令用法:
dpkg

  •     -i:安裝軟體包;
  •     -r:刪除軟體包;
  •     -P:刪除軟體包的同時刪除其配置檔案;
  •     -L:顯示於軟體包關聯的檔案;
  •     -l:顯示已安裝軟體包列表;
  •     --unpack:解開軟體包;
  •     -c:顯示軟體包內檔案列表;
  •    --confiugre:配置軟體包。

apt-get源安裝:

apt-get 的使用
1.Ubuntu中的高階包管理方法apt-get
除了apt的便捷以外,apt-get的一大好處是極大地減小了所謂依賴關係惡夢的發生機率(dependency hell),即使是陷入了dependency hell,apt-get也提供了很好的援助手段,幫你逃出魔窟。 
通常 apt-get 都和網上的壓縮包一起出沒,從網際網路上下載或是安裝。全世界有超過200個 debian官方映象,還有繁多的非官方軟體包提供網站。你所使用的基於Debian的釋出版不同,你所使用的軟體倉庫可能需要手工選擇或是可以自動設定。你能從Debian官方網站得到完整的映象列表。而很多非官方網站提供各種特殊用途的非官方軟體包,當然,使用非官方軟體包會有更多風險了。 
軟體包都是為某一個基本的Debian釋出版所準備的(從unstable 到stable),並且劃分到不同類別中(如 main contrib nonfree),這個是依據 debian 自由軟體綱領而劃分的(也就是常說的dfsg),因為美國限制加密軟體出口,還有一個non-us類別。 
2.常用的APT命令引數
apt-cache search package    搜尋包 
apt-cache show package      獲取包的相關資訊,如說明、大小、版本等 
sudo apt-get install package  安裝包 
sudo apt-get install package -- reinstall  重新安裝包 
sudo apt-get -f install      修復安裝"-f = --fix-missing" 
sudo apt-get remove package  刪除包 
sudo apt-get remove package -- purge  刪除包,包括刪除配置檔案等 
sudo apt-get update   更新源 
sudo apt-get upgrade  更新已安裝的包 
sudo apt-get dist-upgrade  升級系統 
sudo apt-get dselect-upgrade  使用 dselect 升級 
apt-cache depends package  瞭解使用依賴 
apt-cache rdepends package  是檢視該包被哪些包依賴 
sudo apt-get build-dep package  安裝相關的編譯環境 
apt-get source package  下載該包的原始碼 
sudo apt-get clean && sudo apt-get autoclean  清理無用的包 
sudo apt-get check  檢查是否有損壞的依賴