Linux 软件管理

软件管理

Linux 主流的软件包格式有两个 .deb.rpm。rpm 是属于 redhat 系列的,这个系列的发行版使用的软件管理工具是 rpm & yum。deb 是 debian 系列的软件包,由于 ubuntu 是一个 debian 的衍生版,所以使用的也是 deb 的软件包。

dpkg 是 debian 下面软件包的管理工具,它的作用是用于解决本地的软件问题,它也可以安装软件,但是需要我们手动的下载 .deb 安装包,并且它没处理依赖关系的功能。apt 是 dpkg 工具的封装,添加了一些网络的仓库,让我们能才网络中下载 .deb 软件包,并且自动的解决了软件依赖的问题和安装到本地。

debian 的 dpkg 就相当于 redhat 的 rpm,而 apt 就相当于 yum。


dpkg

本地软件管理方法。

dpkg -l // 已安装的软件列表
dpkg -l package // 软件的版本信息 | 例如:dpkg -l vim
dpkg -s package // 软件详情信息
dpkg -i package.deb // 安装软件
dpkg -r package // 删除软件
dpkg -L package // 关联文件

apt

apt 的使用比 dpkg 多了仓库的功能,/etc/apt/sources.list 就是 apt 的仓库文件,仓库也叫做更新源。默认的更新源是 ubuntu.com 的,但是由于国内网络问题,这个地址下载软件可能会比较慢,我们可以手动改成别的更新源。常见的有 阿里清华中科大163,下面我们改成中科大的。

$ cd /etc/apt/
$ cp sources.list sources.list.bak // 把原来的仓库做个备份
$ vim sources.list // 清空这个文件的内容,改成下面的内容

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

配置好源之后,做个更新 apt-get update

如果想对当前的系统软件做个升级可以使用 apt-get upgrade,一般逐个软件升级比较好,服务器追求的是稳定,而不是最新。

其他的一些命令。

apt-get install package // 安装
apt-get install package --reinstall // 重装

apt-cache depends python3 // 软件依赖
apt-cahce show python3 // 软件详情
apt-cahce search httpd // 仓库查找是否存在此软件

apt-get remove // 卸载
apt-get autoremove // 卸载未使用软件包
apt-get clean && apt-get autoclean // 清理已下载软件包

软件路径

再介绍两个有用的命令。

which ls // 软件可执行文件路径
whereis // 软件相关目录
更多教程 HTML5 教程 CSS3 教程 JavaScript 教程 JQuery 教程 React.js 教程 Node.js 教程 Koa2 教程 Python 教程 Linux 教程