通常 Linux 上的软件安装主要有四种方式:
-
在线安装
-
从磁盘安装deb软件包
-
从二进制软件包安装
-
从源代码编译安装
这几种安装方式各有优劣,而大多数软件包会采用多种方式发布软件,所以我们常常需要全部掌握这几种软件安装方式,以便适应各种环境。下面将介绍前三种安装方式,从源码编译安装你将在 Linux 程序设计中学习到。
在线安装
apt-get
是用于处理 apt
包的公用程序集,我们可以用它来在线安装、卸载和升级软件包等,下面列出一些apt-get
包含的常用的一些工具:
工具 | 说明 |
---|---|
| 其后加上软件包名,用于安装一个软件包 |
| 从软件源镜像服务器上下载/更新用于更新本地软件源的软件包列表 |
| 升级本地可更新的全部软件包,但存在依赖问题时将不会升级,通常会在更新之前执行一次 |
| 解决依赖关系并升级(存在一定危险性) |
| 移除已安装的软件包,包括与被移除软件包有依赖关系的软件包,但不包含软件包的配置文件 |
| 移除之前被其他软件包依赖,但现在不再被使用的软件包 |
| 与remove相同,但会完全移除软件包,包含其配置文件 |
| 移除下载到本地的已经安装的软件包,默认保存在/var/cache/apt/archives/ |
| 移除已安装的软件的旧版本软件包 |
下面是一些apt-get
常用的参数:
参数 | 说明 |
---|---|
| 自动回应是否安装软件包的选项,在一些自动化安装脚本中使用这个参数将十分有用 |
| 模拟安装 |
| 静默安装方式,指定多个 |
| 修复损坏的依赖关系 |
| 只下载不安装 |
| 重新安装已经安装但可能存在问题的软件包 |
| 同时安装APT给出的建议安装的软件包 |
# 更新软件源$ sudo apt-get update# 升级没有依赖问题的软件包$ sudo apt-get upgrade# 升级并解决依赖关系 (有崩溃危险)$ sudo apt-get dist-upgrade
删除软件sudo apt-get remove w3m# 不保留配置文件的移除$ sudo apt-get purge w3m# 或者 sudo apt-get --purge remove# 移除不再需要的被依赖的软件包$ sudo apt-get autoremove
本地安装
使用 dpkg 从本地磁盘安装 deb 软件包
。
dpkg 本身是一个底层的工具。上层的工具,像是 APT,被用于从远程获取软件包以及处理复杂的软件包关系。"dpkg"是"Debian Package"的简写。
dpkg常用参数介绍:
参数 | 说明 |
---|---|
-i | 安装指定deb包 |
-R | 后面加上目录名,用于安装该目录下的所有deb安装包 |
-r | remove,移除某个已安装的软件包 |
-I | 显示deb 包文件的信息 |
-s | 显示已安装软件的信息 |
-S | 搜索已安装的软件包 |
-L | 显示已安装软件包的目录信息 |
# 使用dpkg安装sudo dpkg -i emacs24_24.5+1-6ubuntu1.1_amd64.deb
跟前面预料的一样,这里你可能出现了一些错误:
依赖包错误
这就要用到apt-get
了,使用它的-f
参数了,修复依赖关系的安装
sudo apt-get updatesudo apt-get -f install
然后就可以安装成功了