【第16期】装软件装到崩溃?这份Linux全发行版软件安装指南,让你10分钟搞定所有环境配置
大家好,我是运维老张。
说实话,我在刚接触Linux那会儿,装个软件能折腾一整天。记得有一次,公司新来了台CentOS服务器,我要装个Nginx,结果yum install nginx提示找不到包,折腾了半天才发现是源没配好。后来换Ubuntu,又发现命令全变了,apt-get、apt傻傻分不清楚。
这些年带了不少新人,发现大家在软件安装这块踩的坑都差不多:
• 软件源在国外,下载速度只有几KB,装个GCC要等半小时
• 不知道自己的系统该用apt还是yum还是dnf
• 源码编译安装总报错,./configure提示缺这个缺那个
• 装完软件找不到配置文件,不知道装到哪去了
今天这篇文章,我把这些年攒下来的经验一次性分享给你。不管你是用Ubuntu、CentOS、Fedora还是Arch,看完这篇都能找到对应的解决方案。
一、先搞清楚:你的系统属于哪个”家族”
Linux发行版虽然多,但软件包管理这块,基本上就分三大派系:
1. Debian系:apt/apt-get 当家
这个家族包括:
• Debian(老祖宗)
• Ubuntu(最流行的桌面版)
• Linux Mint(基于Ubuntu,更适合新手)
• Deepin(国产,界面漂亮)
• Kali Linux(安全测试专用)
这些系统的软件包格式是.deb,管理工具主要是apt或者apt-get。
2. Red Hat系:yum/dnf 说了算
这个家族包括:
• RHEL(Red Hat Enterprise Linux,企业级)
• CentOS(RHEL的免费版,现在转向CentOS Stream)
• Fedora(Red Hat的试验田,新功能先在这里测试)
• AlmaLinux、Rocky Linux(CentOS的替代品)
这些系统的软件包格式是.rpm,管理工具主要是yum(老版本)或dnf(新版本)。
3. Arch系:pacman 独领风骚
这个家族包括:
• Arch Linux(滚动更新,永远最新)
• Manjaro(基于Arch,对新手更友好)
• EndeavourOS(另一个Arch衍生版)
Arch用pacman作为包管理器,命令简洁高效。
💡 快速判断命令:不确定自己系统用啥?执行cat /etc/os-release看看ID字段就知道了。

二、Debian/Ubuntu系列:apt命令详解
我用Ubuntu比较多,先从apt开始讲。
1. 基础命令速查表
# 更新软件源列表(相当于刷新商店商品目录)
sudo apt update
# 升级已安装的软件包
sudo apt upgrade
# 安装软件
sudo apt install 软件名
# 卸载软件(保留配置文件)
sudo apt remove 软件名
# 彻底卸载(删除配置文件)
sudo apt purge 软件名
# 自动清理不需要的依赖
sudo apt autoremove
# 搜索软件包
apt search 关键词
# 查看软件包信息
apt show 软件名
2. apt 和 apt-get 的区别
很多新手困惑:到底用apt还是apt-get?
简单说,apt是新版,apt-get是老版。现在推荐用apt,因为它:
• 命令更短,好记
• 有进度条,看着舒服
• 输出信息更友好
但有些脚本里还会用apt-get,因为它更稳定,适合自动化。日常手动操作,用apt就够了。
3. 实战:安装Nginx并启动
# 先更新源
sudo apt update
# 安装Nginx
sudo apt install nginx -y
# 查看安装状态
systemctl status nginx
# 启动Nginx
sudo systemctl start nginx
# 设置开机自启
sudo systemctl enable nginx
三、CentOS/RHEL/Fedora系列:yum和dnf
Red Hat系的包管理稍微复杂点,因为有个版本过渡的问题。
1. CentOS 7及以前:用yum
# 更新软件源缓存
sudo yum makecache
# 安装软件
sudo yum install 软件名
# 卸载软件
sudo yum remove 软件名
# 搜索软件
yum search 关键词
# 查看软件信息
yum info 软件名
# 更新所有软件
sudo yum update
2. CentOS 8/RHEL 8/Fedora:用dnf
从CentOS 8开始,默认用dnf替代yum。不过别担心,命令几乎一模一样:
# dnf命令和yum几乎一样
sudo dnf install nginx
sudo dnf remove nginx
sudo dnf update
实际上,在CentOS 8上执行yum命令,底层调用的也是dnf,做了个兼容。
3. 一个坑:EPEL源
用CentOS的朋友可能遇到过这种情况:想装个软件,yum提示找不到包。
这是因为很多软件不在官方源里,需要装EPEL(Extra Packages for Enterprise Linux)源:
# CentOS 7
sudo yum install epel-release -y
# CentOS 8/Stream
sudo dnf install epel-release -y
装完EPEL,软件数量瞬间多了一大半,Nginx、Redis、Docker这些都能找到。
四、Arch Linux:pacman极简之道
Arch的包管理是我用过最爽的,命令简洁,没有废话。
# 同步软件源并更新系统
sudo pacman -Syu
# 安装软件
sudo pacman -S 软件名
# 卸载软件
sudo pacman -R 软件名
# 卸载软件及其依赖(更彻底)
sudo pacman -Rs 软件名
# 搜索软件
pacman -Ss 关键词
# 查询已安装软件
pacman -Q | grep 关键词
Arch还有一个神器叫AUR(Arch User Repository),里面有社区维护的大量软件。用yay这个工具可以方便地安装AUR软件:
# 安装yay(先装基础包)
sudo pacman -S –needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
# 用yay安装Chrome(官方源没有)
yay -S google-chrome
五、配置国内镜像源:让下载速度飞起来
这是我最想讲的部分。默认的官方源都在国外,国内访问速度感人,经常只有几KB/s。配置国内镜像源后,速度能提升到几MB/s甚至几十MB/s。

1. Ubuntu配置清华源
先备份原配置:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
然后编辑sources.list:
sudo nano /etc/apt/sources.list
把里面的内容换成(以Ubuntu 22.04 jammy为例):
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# 以下安全更新使用官方源
deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
保存后执行:
sudo apt update
sudo apt upgrade
🚀 效果对比:我实测过,官方源下载速度约50KB/s,换清华源后能达到15MB/s,提升300倍!
2. CentOS配置阿里源
CentOS 7的配置:
# 备份
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 下载阿里源
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 清除缓存并重建
sudo yum clean all
sudo yum makecache
CentOS 8/Stream的配置稍有不同,可以用清华源:
# 备份原有配置
sudo mkdir /etc/yum.repos.d/backup
sudo mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
# 下载清华源配置
sudo wget -O /etc/yum.repos.d/CentOS-Stream.repo https://mirrors.tuna.tsinghua.edu.cn/centos/centos8-stream.repo
# 重建缓存
sudo dnf clean all
sudo dnf makecache
3. Arch配置清华源
# 编辑镜像列表
sudo nano /etc/pacman.d/mirrorlist
# 把清华源放到最前面
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
# 更新
sudo pacman -Syu
4. 国内主流镜像站推荐
• 清华大学:https://mirrors.tuna.tsinghua.edu.cn – 速度快,同步及时
• 阿里云:https://mirrors.aliyun.com – 节点多,稳定
• 中科大:https://mirrors.ustc.edu.cn – 老牌镜像站
• 华为云:https://repo.huaweicloud.com – 企业级稳定
• 腾讯云:https://mirrors.cloud.tencent.com – 速度快
六、源码编译安装:终极解决方案
有时候官方源里的软件版本太旧,或者需要特殊编译选项,这时候就得源码编译安装了。

1. 标准三步走
大部分开源软件都遵循GNU Autotools标准:
# 第一步:配置
./configure –prefix=/usr/local
# 第二步:编译
make
# 第三步:安装
sudo make install
2. 一个完整的例子:编译安装Redis 7.0
# 1. 下载源码
wget https://download.redis.io/releases/redis-7.0.12.tar.gz
# 2. 解压
tar -xzf redis-7.0.12.tar.gz
cd redis-7.0.12
# 3. 编译(Redis不需要configure,直接make)
make
# 4. 安装到指定目录
sudo make PREFIX=/usr/local/redis install
# 5. 复制配置文件
sudo mkdir -p /usr/local/redis/etc
sudo cp redis.conf /usr/local/redis/etc/
# 6. 创建软链接方便使用
sudo ln -s /usr/local/redis/bin/redis-server /usr/local/bin/
sudo ln -s /usr/local/redis/bin/redis-cli /usr/local/bin/
3. 常见编译错误及解决
错误1:提示缺少gcc
configure: error: no acceptable C compiler found in $PATH
解决:
# Ubuntu/Debian
sudo apt install build-essential
# CentOS/RHEL
sudo yum groupinstall “Development Tools”
错误2:提示缺少某个库
error: openssl library not found
解决:安装对应的开发包
# Ubuntu
sudo apt install libssl-dev
# CentOS
sudo yum install openssl-devel
注意:Debian系的后缀是-dev,Red Hat系的后缀是-devel,这个区别经常让人搞混。
4. 编译安装的优缺点
优点:
• 可以安装最新版本
• 可以自定义编译选项
• 不依赖系统包管理器
缺点:
• 编译时间长
• 不会自动处理依赖
• 卸载麻烦(make uninstall不一定好用)
• 不会自动更新
⚠️ 建议:能用包管理器安装的,优先用包管理器。实在不行了再编译安装。
七、Linux新手必装软件推荐
最后,分享一些我每装新系统必装的软件。

1. 基础工具类
# Ubuntu/Debian
sudo apt install -y vim git curl wget htop tree net-tools
# CentOS
sudo yum install -y vim git curl wget htop tree net-tools
# Arch
sudo pacman -S vim git curl wget htop tree net-tools
这些工具的作用:
• vim:编辑器,虽然难学但必会
• git:版本控制,必备
• curl/wget:下载工具
• htop:比top更好看的进程监控
• tree:以树形结构显示目录
• net-tools:提供ifconfig、netstat等网络命令
2. 开发环境类
# 安装Python3和pip
sudo apt install python3 python3-pip
# 安装Node.js(推荐用nvm管理版本)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install node
# 安装Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
3. 效率工具类
# zsh + oh-my-zsh(比bash好用太多)
sudo apt install zsh
chsh -s $(which zsh)
sh -c “$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)”
# tmux(终端复用,断网也不怕)
sudo apt install tmux
# fzf(命令行模糊查找)
git clone –depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install
4. 运维监控类
# 系统监控
sudo apt install sysstat iotop iftop nethogs
# 日志查看
sudo apt install multitail
# 网络诊断
sudo apt install traceroute mtr-tiny nmap
八、总结与建议
写这篇文章的时候,我想起了自己刚学Linux时的窘境。那时候为了装个LAMP环境,折腾了整整两天。现在回头看,很多问题其实都是因为:
1. 不熟悉包管理器的使用
2. 没配置国内镜像源
3. 不知道EPEL这类扩展源的存在
4. 遇到报错就慌,不会看错误信息
希望这篇文章能帮到你。最后给几个建议:
1. 优先用包管理器:能用apt/yum/dnf装的,就别去官网下载安装包
2. 第一时间换国内源:装完系统先换源,省下来的时间够你看两集电视剧
3. 学会看错误信息:报错的时候别急着百度,先仔细看错误提示,很多时候答案就在里面
4. 做好笔记:把常用的命令和配置记下来,下次直接复制粘贴
如果你在实际操作中遇到问题,欢迎在评论区留言。我会尽量回复。
📌 下期预告:Linux用户和权限管理详解,带你彻底搞懂chmod、chown和sudo配置。
觉得有用的话,点个在看支持一下吧!
—— 运维老张,写于2026年5月
夜雨聆风