06
软件包管理:装软件的三种姿势
Package Management · apt / dnf / source
Windows 装软件是"到处找安装包、下一步下一步",Linux 是包管理器一句话搞定,连依赖关系一起自动解决。学会它,装软件再也不求人。
Debian 系:apt 八件套
Ubuntu / Debian 日常包管理
sudo apt update # 刷新软件源清单(先跑它!)
sudo apt upgrade # 把所有软件升级到最新
sudo apt install nginx # 安装软件
sudo apt remove nginx # 卸载,但留着配置
sudo apt purge nginx # 卸载连配置一起删干净
sudo apt search "web server" # 搜软件
sudo apt show nginx # 看软件详情
apt list --installed # 列出装了哪些(不用 sudo)
sudo apt autoremove # 清掉没用的依赖垃圾
$ sudo apt install -y nginx
Reading package lists... Done
The following NEW packages will be installed:
nginx nginx-common nginx-core
After this operation, 5.2 MB of additional disk space will be used.
Setting up nginx (1.24.0-ubuntu) ...
# -y 表示自动回答 yes,脚本里常用
源/etc/apt/sources.list 与 PPA
软件源就是 apt 从哪个服务器下载软件,写在 /etc/apt/sources.list 和 /etc/apt/sources.list.d/ 里。国内服务器记得换成阿里云、清华等国内镜像源,下载快十倍。改完必须 sudo apt update 才生效。
PPA(个人软件源):官方源里没有的软件,开发者会放 PPA 里。sudo add-apt-repository ppa:某团队/某软件 添加,再 update、install。PPA 质量参差不齐,来路不明的别乱加。
/etc/apt/sources.list 长什么样(换清华镜像示例)
# 一行一个源:deb 协议 地址 发行版 软件分类
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble main restricted
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-updates main restricted
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-security main restricted
# noble = Ubuntu 24.04 的代号;换成你的发行版代号,改完 sudo apt update
RHEL 系:dnf / yum
Rocky / RHEL 日常包管理
sudo dnf install nginx # 安装(yum 命令同样可用)
sudo dnf remove nginx # 卸载
sudo dnf update # 升级所有软件
sudo dnf search nginx # 搜索
sudo dnf info nginx # 详情
sudo dnf list installed # 已装列表
# EPEL 源:官方源没有的扩展软件包,先装它:
sudo dnf install epel-release
| 对比 | Debian 系 apt | RHEL 系 dnf/yum |
|---|---|---|
| 安装 | apt install x | dnf install x |
| 更新清单 | apt update 后 apt upgrade | dnf update 一步到位 |
| 软件包格式 | .deb | .rpm |
| 源配置位置 | /etc/apt/sources.list | /etc/yum.repos.d/*.repo |
源码编译与通用包格式
./configure && make && make install → 源码编译三步
解压源码包后:./configure 检测环境生成配置 → make 编译 → sudo make install 装到系统。
为什么用:需要最新版、或要自定义编译参数时。缺点是不好卸载、不好升级,现代项目越来越少用。
snap / flatpak → 自包含通用包
把软件和依赖打包在一起,"一次打包处处运行"。
snap install code / flatpak install xxx。特点:不污染系统、自动更新;缺点是体积大、启动略慢。桌面软件用得多,服务器上少见。
记
本章小结
① Debian 系 apt update → apt install;RHEL 系 dnf install。记牢这两套即可。
② 改了软件源必须 update;卸载想干净就用 purge(apt)。
③ 能包管理就别源码编译;snap/flatpak 是桌面补充,服务器基本不用。