linux上安装软件主要有四种方式
- 在线安装
- 从磁盘安装deb软件包
- 从二进制软件包安装
- 从源代码编译安装
在线安装
在linux下,一个命令加回车,等待一下软件就安装好了
比如想安装一个软件,名字叫做w3m,那么输入以下命令:sudo apt-get install w3m
apt包管理工具介绍
当你在执行安装操作时,首先 apt-get
工具会在本地的一个数据库中搜索关于 w3m
软件的相关信息,并根据这些信息在相关的服务器上下载软件安装,这里大家可能会一个疑问:既然是在线安装软件,为啥会在本地的数据库中搜索?要解释这个问题就得提到几个名词了:
- 软件源镜像服务器
- 软件源
我们需要定期从服务器上下载一个软件包列表,使用 sudo apt-get update
命令来保持本地的软件包列表是最新的(有时你也需要手动执行这个操作,比如更换了软件源),而这个表里会有软件依赖信息的记录,对于软件依赖,我举个例子:我们安装 w3m
软件的时候,而这个软件需要 libgc1c2
这个软件包才能正常工作,这个时候 apt-get
在安装软件的时候会一并替我们安装了,以保证 w3m
能正常的工作。
apt-get
是用于处理 apt
包的公用程序集,我们可以用它来在线安装、卸载和升级软件包等,下面列出一些 apt-get
包含的常用的一些工具:
工具 | 说明 |
---|---|
install |
其后加上软件包名,用于安装一个软件包 |
update |
从软件源镜像服务器上下载/更新用于更新本地软件源的软件包列表 |
upgrade |
升级本地可更新的全部软件包,但存在依赖问题时将不会升级,通常会在更新之前执行一次 update |
dist-upgrade |
解决依赖关系并升级(存在一定危险性) |
remove |
移除已安装的软件包,包括与被移除软件包有依赖关系的软件包,但不包含软件包的配置文件 |
autoremove |
移除之前被其他软件包依赖,但现在不再被使用的软件包 |
purge |
与 remove 相同,但会完全移除软件包,包含其配置文件 |
clean |
移除下载到本地的已经安装的软件包,默认保存在 /var/cache/apt/archives/ |
autoclean |
移除已安装的软件的旧版本软件包 |
下面是一些apt-get
常用的参数:
参数 | 说明 |
---|---|
-y |
自动回应是否安装软件包的选项,在一些自动化安装脚本中使用这个参数将十分有用 |
-s |
模拟安装 |
-q |
静默安装方式,指定多个 q 或者 -q=# ,# 表示数字,用于设定静默级别,这在你不想要在安装软件包时屏幕输出过多时很有用 |
-f |
修复损坏的依赖关系 |
-d |
只下载不安装 |
--reinstall |
重新安装已经安装但可能存在问题的软件包 |
--install-suggests |
同时安装 APT 给出的建议安装的软件包 |
重新安装软件
很多时候我们需要重新安装一个软件包,比如你的系统被破坏,或者一些错误的配置导致软件无法正常工作。你可以使用如下方式重新安装:
sudo apt-get --reinstall install <packagename>
另一个你需要掌握的是,如何在不知道软件包完整名的时候进行安装。通常我们是使用 Tab 键补全软件包名,后面会介绍更好的方法来搜索软件包。
软件升级
**
# 更新软件源
sudo apt-get update
# 升级没有依赖问题的软件包
sudo apt-get upgrade
# 升级并解决依赖关系
sudo apt-get dist-upgrade
卸载软件
如果你现在觉得 w3m
这个软件不合自己的胃口或者是找到了更好的,你需要卸载它。那么简单,同样是一个命令加回车 sudo apt-get remove w3m
,系统会有一个确认的操作,之后这个软件就被卸载了。
或者,你可以执行
# 不保留配置文件的移除
sudo apt-get purge w3m
# 或者
sudo apt-get --purge remove w3m
# 移除不再需要的被依赖的软件包
sudo apt-get autoremove
软件搜索
当自己刚知道了一个软件,想下载使用,需要确认软件仓库里面有没有,就需要用到搜索功能了,命令如下:
sudo apt-cache search softname1 softname2 softname3……
apt-cache
命令则是针对本地数据进行相关操作的工具,search
顾名思义在本地的数据库中寻找有关 softname1
,softname2
相关软件的信息。
从磁盘安装deb软件包
dpkg 介绍
dpkg 是 Debian 软件包管理器的基础,它被伊恩·默多克创建于 1993 年。dpkg 与 RPM 十分相似,同样被用于安装、卸载和供给和 .deb 软件包相关的信息。 dpkg 本身是一个底层的工具。上层的工具,像是 APT,被用于从远程获取软件包以及处理复杂的软件包关系。”dpkg”是”Debian Package”的简写。
dpkg
常用参数介绍:
参数 | 说明 |
---|---|
-i |
安装指定 deb 包 |
-R |
后面加上目录名,用于安装该目录下的所有 deb 安装包 |
-r |
remove,移除某个已安装的软件包 |
-I |
显示 deb 包文件的信息 |
-s |
显示已安装软件的信息 |
-S |
搜索已安装的软件包 |
-L |
显示已安装软件包的目录信息 |