ubuntu 中的包和软件有什么区别?

ubuntu 中的包和软件有什么区别?

这是一个非常基本的问题,但我找不到答案。我想知道包和软件之间的区别。

通过输入命令 sudo apt-get install filezilla,下载名为 filezilla 的软件包和其他依赖软件包。OK。这是软件包。

那么,什么是软件?在 ubuntu 里所有的东西都是包,对吧?或者有软件吗?如果有,软件到底是什么?

通过使用 ubuntu 软件中心,我是否安装软件包或软件?

提前致谢。

答案1

如果您熟悉 MS-Windows,那么在该系统下安装软件的常用方法是setup.exe。如您所见,Ubuntu 使用软件包。

主要(巨大)差异在于软件包具有所谓的依赖关系,因此 APT 等系统可以在安装您选择的软件包之前下载所有必要的依赖关系。当然,有时所有依赖关系都已满足,因此只需安装一个软件包。

软件包setup.exe是单个二进制文件中文件的集合。在大多数情况下,这是某种压缩档案。在 MS-Windows 下,它们通常使用 zip。Debian / Ubuntu 软件包使用 ar 和 tar(ar 作为包装器,tar 用于保存软件包的所有文件。)

因此,根据软件的一般定义,一个包通常可以看作是一个软件(程序)。它需要自动安装的依赖项,这是人为的。但是,有些软件包本身并不是软件。也就是说,-doc 软件包可能只是 HTML 或 man 文件。其他软件包仅包含调试符号。

作为一名程序员,我会说软件是安装在/usr/bin(或等同于)下的文件。这些文件是实际的软件,即将编译好的程序发送到计算机的 CPU 来执行操作。

答案2

软件包就像盒子一样,里面装有“构建”软件所需的所有组件。当您使用 APT 安装软件时,您基本上是从存储库下载 DEB(Debian)软件包,然后使用此软件包附带的“部件”构建软件。所以是的,您在 Ubuntu 中使用软件。Ubuntu 本身就是一个软件。软件包只是编译(构建)程序的简单方法。

为了清楚起见,软件是用户和硬件之间进行通信的工具。

相关内容