如何通过 apt-get install 实际安装软件包?

mat*_*975 30 apt compiling software-installation

使用该apt-get install方法将包安装到 ubuntu 时,获取该包的源代码和从头开始构建它之间有什么根本区别吗?该apt-get install功能是简单地下载源代码并将其构建到您的计算机上的指定目录中,还是在幕后进行更多操作?

最后(也许这没有答案)一种方法比另一种更好吗?我在这里要讨论的是,从源代码自己构建它是否有任何优势,还是让它apt-get做它的事情更好?

Pan*_*her 27

apt、yum、pacman、emerge等包管理系统的优点包括:

  • 查询安装或可用的软件包版本很容易。
  • 完全删除一个包很容易,确保它的所有文件都消失了。
  • 验证包文件的完整性很容易,因此您可以查看它是否已损坏或被篡改。
  • 通过安装新版本并删除所有旧版本文件,可以轻松升级软件包。这将确保不会留下旧包中的任何挥之不去的文件来混淆或破坏事物。
  • 很容易查看包需要什么或提供其他包提供或需要的东西,因此您可以确保拥有包正常运行所需的项目。
  • 安装或删除软件包组很容易。
  • 在许多情况下,可以降级到包的先前版本,例如当新版本有错误时。

尽管它适用于 Fedora,但另请参阅:

https://fedoraproject.org/wiki/Package_management_system

从源代码安装可能有优势

  • 您可以自定义二进制文件(启用/禁用选项)
  • 存储库中提供了更多最新包
  • 有时需要修复错误

但缺点是,当有新版本可用时,您将不得不手动更新包,并且通常会失去支持。

IMO 如果你想编译你的全部或大部分包,我会建议 Gentoo。


ate*_*enz 19

Apt-get是 APT 包处理实用程序 (CLI),是SynapticAptitude的后端。

从系统触发的apt-get方法检查文件中列出的官方来源或存储库

etc/apt/sources.list

例如。在运行(我使用)时,运行类似sudo apt-get update && sudo apt-get upgrade

在此处输入图片说明

其中Link 前面的Ign (Ignore) 表示自上次访问该存储库以来没有进行任何更改,而Get表示对 Sources 文件的检索,说明该 Repository 中新可用包的更改。

不,apt-get实用程序不会下载源文件,而是下载由官方 Ubuntu 打包商打包和发布的.deb 包,该已经过稳定性和与系统集成的测试。

apt-get的下载包中可以找到

/var/cache/apt

在这里你可以看到所有的Updatesas .deb 包,你甚至可以通过访问这个Precise-updates 包来比较和交叉检查它们的版本。

就从源代码包编译而言,对于 Ubuntu 12.04 来说,这是不可取的,甚至不推荐使用,因为它是 LTS 版本,您可以在此处查看原因

从源代码编译还是从 .deb 包安装更好?

从源代码编译程序会加速我的操作系统吗?

从源代码安装的优点/缺点

进一步参考:apt-getsources.list