为什么 Linux 发行版没有通用的软件安装平台?

-2 windows kubuntu software-installation

我是 Linux 新手。我已经使用 Kubuntu 一段时间了。任何在 Windows 中构建的软件都具有可执行/安装文件。如果您想下载任何应用程序。您只需访问该应用程序的官方网站,下载相关软件包,然后单击 .exe/setup 文件将打开软件包安装程序,您只需单击下一步,下一步并安装即可。该应用程序会安装,但在 Linux 发行版中情况并非如此,您必须打开终端,必须安装软件包,此外您还需要安装一些额外的软件包、补丁等。并且没有像这样的单个可执行文件在windows中很容易找到并安装。安装任何软件,通常都要到github上复制软件包地址,按照很多步骤才能安装软件。所以我的问题是为什么没有任何 Linux 发行版像 Windows 那样构建一个通用的软件安装程序?如果没有,将来是否可以构建一个类似于 .exe/setup 文件的文件,您可以轻松下载和安装,而无需执行许多过程。

例如,如果你想安装一个tplink无线适配器的软件,对于Windows来说这是非常容易的。有可执行文件,双击完成。但在 Linux 中只需查看此How do I get a TP-Link TL-WN823N V3 wireless Adapter work? 。你将会明白我在说什么。

Jör*_*tag 6

您忽略了 Linux 发行版最重要的方面:它是多个软件包的发行版

Linux 发行版保证属于该发行版的所有软件包可以协同工作。Windows 的情况则完全不同:例如,Microsoft、Adobe 和 Apple 都不保证 PhotoShop 和 iTunes 能够很好地协同工作。(当然,这是一个愚蠢的例子。)在使用 Windows 的近 30 年中,我观察到很多情况,安装一个应用程序会破坏另一个应用程序。

而在 Linux 发行版中,发行商保证该发行版中的所有软件包都能很好地协同工作,例如,包括来自两个不同开发人员的两个软件包,而他们甚至不知道另一个软件包的存在。

另一个区别是 Linux 发行版支持的平台比 Windows 多得多。目前,(消费者)Windows 仅支持两个平台:AMD64 和 ARM64。如果您在 ARM64 上使用 Windows,您将会发现

您只需访问他们的官方网站,下载相关的软件包,然后单击 .exe 文件将打开软件包安装程序,您只需单击下一步并安装即可。

很多时候不起作用因为没有ARM64 版本。

而 Linux 发行版将保证该发行版中的所有软件包都可用于所有平台。

只是为了比较,Windows 目前支持 ARM64 和 AMD64,Linux 目前支持 ARM 32 位(多个变体)、ARM64、Alpha、Arc、IA-64(安腾)、AMD64、x86、x32(具有 32 位指针的 AMD64)、ARC 、C-SKY、日立/瑞萨 H8、摩托罗拉 m680x0、Qualcomm Hexagon、Microblaze、MIPS(32 和 64 位)、OpenRISC、HP PA-RISC、PowerPC(32 和 64 位)、RISC-V、IBM S/390( 31 位)和 S/390x(64 位)、Super-H、SPARC、Xtensa、Andes NDS32 和 Altera NIOS。

当然,现在并不是所有的 Linux 发行版都支持所有这些架构,但例如 Ubuntu 支持 AMD64、ARM64、POWER 和 S/390x,这是 Windows 的两倍。其他 Linux 发行版支持更多:Debian 支持 AMD64、ARM64、armel(适用于较旧 ARM CPU 的 ARM 32 位嵌入式 ABI)、armhf(ARM 32 位,支持较新的 ARM CPU 的硬件浮点)、x86、MIPS(32 和 64 位) )、PowerPC 64 位、S/390x。Gentoo 支持 AMD64、Alpha、ARM(32 和 64 位)、HP PA-RISC、IA-64、m68k、PowerPC(32 和 64 位)、RISC-V、SPARC、x86 和 S/390(x)。

例如,如果你想安装一个tplink无线适配器的软件,对于Windows来说这是非常容易的。有可执行文件,双击完成。但在Linux中只需查看How to install driver for TP-Link TL-WN722N on Ubuntu 14.04?。你将会明白我在说什么。

这是一个非常特殊的例子。

首先,请注意,这个问题已经有七年多了。如果您阅读该问题下的评论,您会发现这些都不再是必要的了。该驱动程序随所有当前的 Linux 发行版一起提供,并且该设备开箱即用。

这看起来如此复杂的唯一原因是因为提出问题的用户想要使用具有旧版本操作系统的全新设备,并试图从较新版本的 Linux 中提取驱动程序并使其在较旧版本的 Linux 上运行Linux 版本。

如果他们只是等待操作系统的下一个版本并进行更新,他们就不需要做任何事情。

但更笼统地回答您的问题:这是硬件供应商的问题!如果您想知道为什么 TP-Link 在 Windows 上提供驱动程序安装程序,但在 Ubuntu 上不提供驱动程序安装程序,那么您必须询问 TP-Link。有些适用于任何其他软件:当然可以执行您所要求的操作,但供应商实际上必须这样做。

如果某个供应商选择发布适用于 Windows 而不是 Linux 的安装程序,则这是该特定供应商的责任,而不是 Linux 社区的责任。

  • “想要使用带有旧版本操作系统的全新设备,并尝试从较新版本的 Linux 中提取驱动程序,并使其在旧版本的 Linux 上运行。” +1000 (3认同)
  • 我的一台笔记本电脑上有 Intel 3160,它显然不适用于 Windows 8.1。需要 Windows 10 或更高版本。因此 chili555 突出显示的语句也适用于其他操作系统:) (2认同)