軟件包管理
- 概念
- 軟件包管理工具
- Red Hat 系
- RPM
- rpm安裝
- rpm卸載
- YUM(推薦)
- 源倉庫管理
- 常見國內 yum 源
- 更換源(非必須,除非下載速度確實過慢)
- YUM管理軟件
- Debian 系
- 源倉庫管理
- 常見國內 apt 源
- 更換源(非必須,除非下載速度確實過慢)
- 包管理
概念
各個系統都有自己的軟件包管理工具,方便用戶管理,使用各種軟件;
只是大部分Windows用戶可能并沒有太關注,其實也是有的。
軟件包管理工具
不同的系統包管理工具也不同;大體如下
-
Linux:
Debian/Ubuntu:APT (Advanced Package Tool)
CentOS/RHEL/Fedora:RPM(RedHat Package Manager)
Arch Linux:Pacman (Package Manager)
openSUSE:Zypper
Slackware:pkgtools -
macOS:
Homebrew
MacPorts
Fink -
Windows:
Chocolatey
Scoop
NuGet -
FreeBSD:
pkg (pkgng)
這里重點看看Linux下的包管理工具,發行版主要看Red Hat 和 Debian 系
Red Hat 系
RPM
rpm包以 .rpm為后綴;包名一般包含了軟件名,版本,適用的處理器架構
常用參數
- q 查詢
- a 所有
- i 詳細信息
rpm安裝
rpm -ivh rpm完整包名
安裝時,忽略運行所需的依賴的檢查 –nodeps
rpm卸載
rpm -e 軟件名(無需完整包名):檢查依賴,當前軟件被依賴時,則無法卸載提示報錯。
rpm -e –nodeps 軟件名(無需完整包名);不檢查依賴,強制卸載,可能導致依賴它的軟件無法正常運行
YUM(推薦)
rpm包管理工具存在缺陷,需手動維護軟件之間的依賴關系,而且先下載rpm包。
基于以上原因,基于RPM,更智能化的軟件管理工具YUM就誕生了。
YUM底層還是使用的RPM,只是對其做了一些優化,使其更易于使用。
YUM 在安裝軟件時,會自動下載安裝所需依賴軟件,然后安裝本軟件。
有點類似Maven,所以YUM也有倉庫一說。
源倉庫管理
常見國內 yum 源
阿里云開源鏡像站:https://mirrors.aliyun.com/
網易開源鏡像站:https://mirrors.163.com/
中科大開源鏡像站:https://mirrors.ustc.edu.cn/
清華開源鏡像站:https://mirrors.tuna.tsinghua.edu.cn/
更換源(非必須,除非下載速度確實過慢)
倉庫配置位于 /etc/yum.repos.d 目錄
- 先將系統默認的倉庫源備份
cp CentOS-Base.repo CentOS-Base.repo.bak
- 下載鏡像倉庫配置
# 阿里云鏡像倉庫
wget http://mirrors.aliyun.com/repo/Centos-7.repo
- 將上面下載的鏡像源改名為系統默認加載的 CentOS-Base.repo 名字
- 清理之前的yum緩存 && 重新構建緩存
yum clean all && yum makecache
完成。
當然,個別軟件可能在中央倉庫中不存在,則需要我們將對應的倉庫文件拉取到這個目錄下;當中央倉庫找不到時,會自動去其他.repo 結尾的倉庫里面找。
YUM管理軟件
基本語法
yum [opts] command
最常用的可選參數 是 -y:對安裝過程中的詢問以yes處理
yum 行為
- install :安裝
yum install 軟件名
- update:更新
# 更新所有可更新軟件
yum update# 更新指定軟件
yum update 軟件名
- check-update:檢查更新
# 檢查所有更新
yum check-update# 檢查指定軟件更新
yum check-update 軟件名
- remove:卸載
yum remove 軟件名
- list:已安裝列表
# 查看所有已安裝軟件及(可安裝更新)
yum list# 查看指定軟件及(可安裝更新)
yum list 軟件名
- clean:清除yum無效緩存
# 清除無效緩存 && 重新構建緩存;一般更新源后需要執行
yum clean && yum mackcache
- deplist:顯示軟件包依賴關系
yum deplist 軟件名
Debian 系
Debian系發行版使用 apt 管理軟件包
源倉庫管理
常見國內 apt 源
- 華為云
http://repo.huaweicloud.com/ubuntu/ - 阿里云
http://mirrors.aliyun.com/ubuntu/ - 清華大學
https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ - 中科大
https://mirrors.ustc.edu.cn/ubuntu/ - 163
http://mirrors.163.com/ubuntu/
更換源(非必須,除非下載速度確實過慢)
- 備份默認配置
cp /etc/apt/sources.list /etc/apt/sources.list.bak
- 修改配置文件
sed -i -r "s#^(deb )(http://.*archive.ubuntu.com|http://.*security.ubuntu.com)#\1http://repo.huaweicloud.com#g" /etc/apt/sources.list
- 更新本地源
apt-get update
包管理
基本語法
apt [opts] command
可選項
最常用的是 -y
命令
- install :安裝/更新(如果已安裝且存在可用更新時)
# 安裝/更新 軟件
apt install 軟件名# 僅更新,如果沒有安裝過,則不執行操作
apt install --only-upgrade 軟件名
- update:僅僅更新軟件源列表,不更新任何軟件
# 更新軟件源列表
apt update
- upgrade:升級所有已安裝的軟件包
apt upgrade
- list --upgradable:檢查更新
# 檢查所有更新
apt list --upgradable
- remove:卸載
apt remove 軟件名
- list:已安裝列表
# 查看所有已安裝軟件及(可安裝更新)
apt list# 查看指定軟件及(可安裝更新)
apt list 軟件名