Linux:这啥命令?这台服务器我说了算-软件安装与包管理——“装个软件而已,怎么还有这么多姿势?”

举报
yd_240046519 发表于 2026/10/30 11:07:49 2026/10/30
【摘要】 《Linux:从“这啥命令?”到“这台服务器我说了算”》 第四章:软件安装与包管理——“装个软件而已,怎么还有这么多姿势?”前面几章,我们已经能在 Linux 里认路、管文件、处理权限。接下来终于到了一个非常现实的问题:软件到底怎么装?刚接触 Linux 的同学很容易带着 Windows 思维到处找 .exe,然后发现:下载按钮呢?安装向导呢?“下一步、下一步、完成”去哪了?Linux 的...

《Linux:从“这啥命令?”到“这台服务器我说了算”》

第四章:软件安装与包管理——“装个软件而已,怎么还有这么多姿势?”

前面几章,我们已经能在 Linux 里认路、管文件、处理权限。

接下来终于到了一个非常现实的问题:

软件到底怎么装?

刚接触 Linux 的同学很容易带着 Windows 思维到处找 .exe,然后发现:下载按钮呢?安装向导呢?“下一步、下一步、完成”去哪了?

Linux 的答案是:别找了,交给包管理器。


1. 什么是包管理器?

Linux 软件通常会被整理成“软件包”。包管理器负责:

  • 找软件
  • 下载软件
  • 安装依赖
  • 升级软件
  • 卸载软件

它有点像系统自带的“应用商店”,只不过主要靠命令操作。

不同发行版的包管理器不同:

发行版 常用工具
Ubuntu / Debian apt
Fedora / RHEL 新版本 dnf
Arch Linux pacman

本章主要使用 Ubuntu / Debian 的 apt,其他发行版思路基本一致。


2. 安装前先更新“菜单”

执行:

sudo apt update

注意,apt update 不是升级所有软件。

它做的事情更像:

“老板,把你家今天的软件菜单给我刷新一下。”

真正升级已安装软件通常是:

sudo apt upgrade

所以记住:

apt update   → 更新软件包索引
apt upgrade  → 升级已安装的软件

3. 安装软件:一句命令搞定

比如安装 tree:

sudo apt install tree

安装完成后试试:

tree --version

再例如安装 curl:

sudo apt install curl

一次装多个:

sudo apt install git curl vim

比起一路点“下一步”,是不是突然有点上瘾?


4. 我不知道包名怎么办?

可以搜索:

apt search nginx

查看某个软件包的信息:

apt show nginx

你可以看到版本、依赖、描述等信息。

如果只是想知道某个命令是否已经存在:

which git

或者:

command -v git

有输出路径,说明命令已经能被找到。


5. 卸载软件:删,但别乱删

卸载程序:

sudo apt remove tree

如果连配置文件也想一起清理:

sudo apt purge tree

两者区别可以简单理解成:

remove → 人搬走了,部分家具还在
purge  → 人和家具一起搬走

一些已经不再需要的依赖可以清理:

sudo apt autoremove

但服务器上执行前最好认真看一眼待删除列表,别养成“看到 Y 就无脑回车”的习惯。


6. 软件到底装到哪里了?

这也是 Linux 新手常见疑问。

比如:

which nginx

可能返回:

/usr/sbin/nginx

查看某个软件包安装了哪些文件:

dpkg -L nginx

常见位置包括:

/usr/bin      普通命令
/usr/sbin     系统管理命令
/etc          配置文件
/var/log      日志
/usr/share    共享资源

Linux 软件往往不是全部塞进一个目录,而是按照用途“各回各家”。


7. .deb 文件怎么装?

有时官网下载的是:

example.deb

推荐这样安装:

sudo apt install ./example.deb

这里的 ./ 很重要,它告诉 apt:这是当前目录里的文件,不是软件仓库中的包名。

你也可能看到:

sudo dpkg -i example.deb

dpkg 能安装 .deb,但处理依赖没有 apt 方便,所以新手优先用 apt install ./xxx.deb。


8. 软件源是什么?

你执行:

sudo apt install nginx

系统并不是凭空变出 nginx,而是从配置好的**软件源(Repository)**下载。

可以把软件源理解成 Linux 的“官方仓库地址”。

这也是为什么网上有些教程会让你“添加软件源”——系统默认仓库里可能没有那个软件,或者版本较旧。

但请记住一条重要原则:

不要看到一条 curl ... | sudo bash 就直接复制执行。

因为这相当于:从网上下载一段脚本,然后立刻给它管理员权限执行。

至少先确认来源可信,并看清楚脚本到底做什么。


9. apt、Snap、Flatpak,怎么又冒出来两个?

Ubuntu 上你还可能见到:

snap

桌面 Linux 中也经常见到:

Flatpak

简单理解:

apt      → 传统系统软件包
Snap     → Canonical 推动的独立打包方案
Flatpak  → 桌面应用常见的跨发行版方案

现在不用急着研究它们的战争史。

服务器学习阶段,先把 apt 用熟最重要。


10. 本章实战:装一套基础工具箱

先更新索引:

sudo apt update

安装几个常用工具:

sudo apt install git curl tree htop

逐个检查:

git --version
curl --version
tree --version
htop --version

查找 git 的位置:

which git

查看软件包信息:

apt show git

最后试着卸载 tree:

sudo apt remove tree

再装回来:

sudo apt install tree

恭喜,你已经完成了一次完整的“查、装、看、删、重装”。


11. 本章命令速查

命令 用途
apt update 更新软件包索引
apt upgrade 升级已安装软件
apt install 安装软件
apt remove 卸载软件
apt purge 连配置一起清理
apt autoremove 清理无用依赖
apt search 搜索软件包
apt show 查看软件包信息
which 查看命令路径
dpkg -L 查看软件包安装文件

12. 这一章你应该带走什么?

以后再看到“安装某某软件”,脑子里先别出现“去官网找安装包”。

先按这个思路走:

1. 软件源里有没有?      → apt search
2. 更新索引了吗?        → apt update
3. 安装                  → apt install
4. 命令在哪里?          → which / command -v
5. 不用了                 → apt remove

包管理器用顺手以后,你会发现 Linux 安装软件其实并不麻烦。

真正麻烦的是下一件事:

软件装好了,它怎么自己跑起来?挂了怎么重启?开机怎么自动启动?

下一章见:

第五章:进程与服务——“程序明明装了,它为什么躺着不动?”

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。