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 // 软件相关目录
Linux 教程 Linux 用户 Linux 基础命令 Linux 文件权限 Linux 文件查找 Linux 文件归档 Linux vim Linux 管道和重定向 Linux 进程 Linux 运行状态 Linux 服务管理 Linux 定时任务 Linux 磁盘 Linux LVM Linux 网络配置 Linux 软件管理 Linux iptables Linux SSH Linux curl