Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Linux 軟體安裝與管理全攻略:原始碼編譯、RPM/DEB 套件、倉庫管理實戰

編輯:關於 Linux

Linux 軟體安裝方式多樣,各有優劣。本文系統整理原始碼編譯、RPM/DEB 二進制套件、YUM/DNF/APT 倉庫管理三大體系,並以 Apache Httpd 原始碼安裝為實戰案例。

軟體封裝格式速查

副檔名類型適用發行版特點
.tar.gz/.tar.bz2/.tgz原始碼包通用需編譯、高度客製化、無相依自動解析
.rpm二進制套件RHEL/CentOS/Fedora/SUSE預編譯、相依管理、資料庫追蹤
.deb二進制套件Debian/Ubuntu/Mint同上,工具為 dpkg/apt
.bin/.run商業軟體安裝程式通用互動式/靜默安裝、通常閉源

一、原始碼編譯安裝(最大彈性)

標準流程

# 1. 下載解壓
wget https://example.com/foo-1.0.tar.gz
tar zxvf foo-1.0.tar.gz && cd foo-1.0

# 2. 閱讀文檔(關鍵!)
cat README INSTALL

# 3. 環境檢測與配置
./configure --prefix=/opt/foo-1.0 --enable-feature-x

# 4. 編譯
make -j$(nproc)

# 5. 安裝(需 root)
make install

# 6. 環境變數
echo 'export PATH=/opt/foo-1.0/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

關鍵元件解析

  • configure:檢測編譯器、函式庫、標頭檔、系統呼叫;生成 Makefile 與 config.h
  • Makefile:定義編譯規則、相依關係、安裝路徑;make 執行增量編譯
  • make install:複製二進制、標頭檔、函式庫、man pages 至 --prefix 路徑

實戰:Apache Httpd 2.4 原始碼安裝

# 下載
wget https://dlcdn.apache.org/httpd/httpd-2.4.58.tar.bz2
tar jxvf httpd-2.4.58.tar.bz2 && cd httpd-2.4.58

# 配置:啟用 DSO、大多數模組共享、Proxy/SSL/重寫
./configure \
  --prefix=/opt/apache-2.4.58 \
  --enable-so \
  --enable-mods-shared=most \
  --enable-ssl=shared \
  --enable-proxy=shared \
  --enable-proxy-http=shared \
  --enable-proxy-balancer=shared \
  --enable-rewrite=shared \
  --with-pcre=/usr/local/pcre \
  --with-apr=/usr/local/apr \
  --with-apr-util=/usr/local/apr-util

# 編譯安裝
make -j4 && make install

# 管理腳本
/opt/apache-2.4.58/bin/apachectl start|stop|restart|graceful

二、RPM 套件管理(Red Hat 系核心)

套件命名規範

nginx-1.24.0-1.el9.x86_64.rpm
│      │       │   │    └─ 架構:x86_64/i686/noarch
│      │       │   └─ 發行版:el9/fc38
│      │       └─ 發布次數:修訂版本
│      └─ 版本號:上游版本
└─ 軟體名稱

核心指令速查

操作指令常用參數
安裝rpm -ivh pkg.rpm--test(試裝) --nodeps(忽略相依) --prefix(重定向)
升級rpm -Uvh pkg.rpm--oldpackage(降級)
查詢rpm -q pkg-a(全部) -i(資訊) -l(檔案清單) -c(設定檔) -d(文檔) --scripts(腳本)
驗證rpm -V pkg檢查檔案大小/權限/MD5/擁有者/類型
移除rpm -e pkg--nodeps --test

SRPM 重建套件

# 安裝 SRPM
rpm -ivh nginx-1.24.0-1.el9.src.rpm
# 檔案釋放至 ~/rpmbuild/{SPECS,SOURCES}

# 修改 SPEC 檔(如調整編譯參數)
vim ~/rpmbuild/SPECS/nginx.spec

# 重建二進制 RPM
rpmbuild -ba ~/rpmbuild/SPECS/nginx.spec
# 產出:~/rpmbuild/RPMS/x86_64/nginx-*.rpm

三、YUM/DNF 倉庫管理(高階包管理器)

# 常用指令
yum search keyword        # 搜尋
yum info pkg              # 詳細資訊
yum install pkg           # 安裝(自動解析相依)
yum update [pkg]          # 更新全部/指定
yum remove pkg            # 移除
yum list installed        # 已安裝清單
yum provides */foo.h      # 反查檔案屬於哪包
yum history               # 交易歷史/回滾

# 第三方倉庫:EPEL、Remi、ElRepo
yum install -y epel-release

四、DEB/APT 系統(Debian/Ubuntu 系)

# dpkg 底層工具
dpkg -i pkg.deb           # 安裝
dpkg -l | grep pkg        # 查詢
dpkg -L pkg               # 檔案清單
dpkg -S /path/to/file     # 反查
dpkg -r pkg               # 移除

# APT 高階工具
apt update                # 更新索引
apt search keyword
apt show pkg
apt install pkg
apt upgrade
apt autoremove            # 清理孤兒套件
apt list --installed

# 修復相依
apt --fix-broken install

五、最佳實踐建議

  1. 優先使用官方倉庫:安全更新及時、相依關係經驗證
  2. 原始碼安裝隔離目錄:/opt/name-version,避免汙染 /usr/local
  3. 使用 Stow/GNU Stow 管理:符號連結方式切換版本
  4. 容器化替代編譯:Docker/Podman 封裝複雜建置環境
  5. 記錄安裝日誌:make install 2>&1 | tee install.log

掌握三大體系,面對任何 Linux 軟體部署場景皆能游刃有餘。

Copyright © Windows教程網 All Rights Reserved