溫馨提示×

如何在CentOS上安裝新軟件

小樊
49
2025-10-05 07:03:52
欄目: 智能運維

一、使用YUM/DNF包管理器(推薦,適用于大多數場景)

YUM(Yellowdog Updater Modified)是CentOS傳統包管理器,DNF(Dandified Yum)是其下一代版本,兩者均能自動解決軟件依賴問題,簡化安裝流程。

1. CentOS 7及更早版本(使用YUM)

  • 更新軟件包列表:安裝前建議先更新本地軟件包索引,確保獲取最新版本。
    sudo yum update
    
  • 搜索軟件包:若不確定軟件準確名稱,可通過關鍵詞搜索(如搜索“apache”相關包):
    sudo yum search apache
    
  • 安裝軟件包:指定軟件名稱(如安裝httpd Web服務器),按提示輸入y確認:
    sudo yum install httpd
    
  • 驗證安裝:安裝完成后,可通過rpm -q命令檢查軟件是否安裝成功:
    rpm -q httpd
    

2. CentOS 8及更新版本(使用DNF)

DNF兼容YUM命令,但性能更優,是CentOS 8+的默認包管理器。

  • 更新軟件包列表
    sudo dnf update
    
  • 搜索/安裝軟件包:命令與YUM類似(如安裝wget下載工具):
    sudo dnf search wget
    sudo dnf install wget
    

關鍵注意事項

  • 權限要求:需使用sudo或root用戶執行安裝命令。
  • 依賴自動解決:YUM/DNF會自動下載并安裝軟件依賴,無需手動處理(若依賴無法解決,需檢查倉庫配置或手動安裝缺失依賴)。
  • 倉庫配置:默認倉庫可能不包含所有軟件,可通過yum install epel-release安裝EPEL(Extra Packages for Enterprise Linux)倉庫,擴展可用軟件范圍。

二、使用RPM包手動安裝(適用于無倉庫的軟件)

若軟件不在YUM/DNF倉庫中,可下載其RPM包手動安裝,但需自行解決依賴問題。

1. 下載RPM包

從軟件官方網站或可信鏡像站下載對應版本的RPM包(如example.rpm)。

2. 安裝RPM包

使用rpm命令安裝,-ivh參數表示安裝(i)、顯示進度(v)、顯示詳細信息(h):

sudo rpm -ivh example.rpm

3. 處理依賴問題

若安裝時提示缺少依賴,需先安裝缺失的包(如libssl):

sudo yum install libssl  # 通過YUM解決依賴

若依賴無法通過倉庫解決,可使用--nodeps強制安裝(不推薦,可能導致軟件無法運行):

sudo rpm -ivh --nodeps example.rpm

4. 卸載RPM包

使用rpm -e命令卸載,需指定軟件名稱(而非RPM文件名):

sudo rpm -e example

離線安裝場景

若系統無法聯網,可先在一臺聯網機器上下載軟件及所有依賴的RPM包,使用createrepo工具創建本地倉庫,再通過YUM安裝:

sudo yum install createrepo  # 安裝createrepo工具
createrepo /path/to/rpms   # 生成倉庫元數據
sudo yum --disablerepo="*" --enablerepo="local-repo" install example  # 指定本地倉庫安裝

三、源代碼編譯安裝(適用于定制化需求)

若需要特定版本的軟件或自定義功能,可從源代碼編譯安裝,但步驟較復雜,需手動管理依賴。

1. 安裝編譯工具

編譯前需安裝開發工具組(包含gcc、make等工具):

sudo yum groupinstall "Development Tools"  # CentOS 7
sudo dnf groupinstall "Development Tools"  # CentOS 8+

2. 下載并解壓源代碼

從軟件官方網站下載源代碼包(如nginx-1.20.2.tar.gz),解壓后進入目錄:

wget http://nginx.org/download/nginx-1.20.2.tar.gz
tar -zxvf nginx-1.20.2.tar.gz
cd nginx-1.20.2

3. 配置編譯選項

運行./configure腳本檢查環境并設置安裝路徑(如--prefix指定安裝目錄):

./configure --prefix=/usr/local/nginx --with-http_ssl_module

常用選項:--prefix(安裝路徑)、--with-*(啟用模塊,如SSL、Gzip)。

4. 編譯與安裝

  • 編譯make命令編譯源代碼(耗時較長,取決于系統性能)。
  • 安裝sudo make install將編譯后的文件安裝到指定路徑。

5. 配置服務(以Nginx為例)

  • 創建systemd單元文件
    sudo vim /etc/systemd/system/nginx.service
    
    添加以下內容(指定啟動腳本路徑):
    [Unit]
    Description=Nginx Web Server
    After=network.target
    
    [Service]
    ExecStart=/usr/local/nginx/sbin/nginx
    ExecReload=/usr/local/nginx/sbin/nginx -s reload
    ExecStop=/usr/local/nginx/sbin/nginx -s stop
    Type=forking
    
    [Install]
    WantedBy=multi-user.target
    
  • 啟用并啟動服務
    sudo systemctl enable nginx  # 開機自啟
    sudo systemctl start nginx   # 立即啟動
    

源代碼安裝的優缺點

  • 優點:可定制軟件版本、功能;避免倉庫軟件版本滯后的問題。
  • 缺點:需手動管理依賴;更新復雜(需重新編譯);維護成本高。

四、常見問題解決

  • 找不到軟件包
    • 確認軟件名稱拼寫正確(可通過yum searchdnf search查找)。
    • 檢查倉庫是否啟用(如EPEL倉庫需運行yum install epel-release安裝)。
  • 依賴問題
    • 運行yum update更新倉庫索引,解決常見依賴沖突。
    • 手動安裝缺失的依賴(根據錯誤提示,使用yum install安裝)。
  • 權限不足
    • 確保使用sudo或root用戶執行安裝命令,避免“Permission denied”錯誤。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女