为什么我不需要为Ubuntu安装任何驱动程序


14

因此,当我安装Windows时,需要安装笔记本电脑各自的所有驱动程序。

为什么在Ubuntu安装中不做同样的事情?

安装是否会以某种方式检测到我的硬件并自行安装适当的驱动程序?

谢谢

Answers:


14

在大多数情况下,您不需要安装其他驱动程序。几乎包括所有可用的驱动程序。

Ubuntu附带了许多现成的驱动程序。仅当某些硬件无法正常工作或未被检测到时,才可能需要安装驱动程序。可以下载一些图形卡和无线适配器驱动程序。

找出是否需要任何驱动程序的简单方法是,首先从安装屏幕中选择尝试Ubuntu,以查看是否需要任何驱动程序,并查看Ubuntu是否正在使用您的硬件。


为了进一步扩展最初的问题,所有设备都需要某种类型的驱动程序才能与OS通信(无论是Mac OS X,Windows,Linux等),并且能够了解该设备的工作方式。虽然您可能需要为系统设备安装驱动程序,但另一方面,如果我重新安装操作系统,则根本不需要安装任何驱动程序(对于Windows或Ubuntu)。这并不意味着它们不存在,只是OS开发人员提供的“开箱即用”驱动程序可以正常工作。;)
重力

安装程序是否为每台计算机安装了不同的驱动程序?还是全部在内核中,这意味着该程序将所有具有相同驱动程序的相同内核安装到所有计算机?
雷维塔夫(Revetahw)说恢复莫妮卡(Monica)

1
@Fiksdal不,安装程序始终安装相同的驱动程序(内核和模块),无论它运行在什么硬件上。然后,内核确定启动时需要什么,并仅加载运行其的硬件所需的模块。这就是为什么您可以从一台计算机中取出硬盘驱动器,然后将其放入另一台计算机中,然后它可以工作的原因。使用Windows AFAIK很难做到这一点
JonasCz-恢复莫妮卡(Monica)

@JonasCz感谢您提供的信息!使用Windows,可以通过名为WinToUSB的第三方工具进行操作。当您在我自己使用的多台计算机之间切换时,它会自动处理驱动程序,这非常简单且用户友好。
Revetahw说恢复莫妮卡

1

Ubuntu是一个开放源代码操作系统,在开放源代码操作系统中,可以为用户提供额外的保护,以防止由于安装错误的驱动程序而导致的问题,以及在安装了错误的专有图形驱动程序后为恢复系统提供更多帮助。我在这里指的是内置的开源图形驱动程序,例如nouveau和amdgpu软件包,以及专有的图形驱动程序,例如NVIDIA官方网站的NVIDIA驱动程序和AMD 官方网站的AMDGPU-Pro驱动程序1

Ubuntu中内置的开源驱动程序为用户提供了额外的保护层,以防止由于安装专有驱动程序而导致的问题而导致必须重新安装操作系统。不需要在Ubuntu中安装某些驱动程序的原因是,默认的Ubuntu安装中已经内置了一些开源驱动程序。安装专有驱动程序有时会使您的系统无法启动,除非不是因为仍然安装了开源驱动程序,否则这些驱动程序使系统在导致问题的专有驱动程序被卸载后能够再次启动。


内置开源驱动程序的原因并不是针对任何事物的“保护”。它是Linux内核的概念。它只有它们。如果在某些情况下不支持某些硬件,则可能需要专有驱动程序。
飞行员

我在这里指的是像nouveau和amdgpu软件包这样的开源驱动程序。
karel

这些驱动程序不应被视为“保护”或临时解决方案。他们应该能够很好地处理硬件,以便永久使用。但这并非总是有不同的原因。就如此容易。
飞行员

我没有说开源图形驱动程序应该“做什么”。我说过这些驱动程序是用户的保护层。显然,内置驱动程序也应该能够正常运行,否则就不会对其进行审查以将其包含在默认的Ubuntu存储库中。
卡雷尔

它们不是保护层。他们只是我们的驱动力。
飞行员

0

Linux(和其他一些开源的unix)系统对待驱动程序的方式与Windows操作系统的方式非常不同。

在Windows系统中(尤其是Windows 10之前的版本),OS内核提供了一个稳定的二进制软件接口,可以针对其编写驱动程序,并且保证该接口(除例外)在给定Windows版本的支持周期内不会发生变化。这有利于由第三方编写和提供驱动程序,在该支持周期内,它们通常将至少可用于Windows的一个版本。不利之处在于,该驱动程序界面很难在该生命周期内进行改进或修复,并且倾向于以二进制形式分发驱动程序(不考虑所有因素!)通常会限制一致的多平台支持。

Linux内核确实具有不断变化的驱动程序接口,该接口仅在源代码级别上严格指定,并且偏向于即兴性和多平台一致性。这意味着,除非使用提供特定,稳定二进制接口的附加“翻译器”驱动程序,否则二进制驱动程序特定于确切的内核构建。可以“捏造”驱动程序二进制文件以使其与一个平台上的几十个确切的内核版本兼容,但是维护它(作为二进制文件提供)的工作是不经济的。在Linux内核社区中,这种偏见在政治上也是需要的,因为他们假装闭源二进制驱动程序可能比具有总线控制能力的外围设备上的恶意固件更糟糕。认为封闭源代码既不可信任又太令人讨厌,无法以内核特权运行。因此,所有主要硬件的开源设备驱动程序都在内核包本身中提供,第二种选择是使用一种相对容易使用的方法来分发外部驱动程序作为源tarball,以针对已安装的内核进行编译。

其他一些Linux驱动程序(例如,经典的X11图形驱动程序,扫描仪驱动程序,打印机驱动程序)不是作为内核部分而是作为某些用户空间软件的一部分来处理的,这些用户空间软件提供了作为系统范围服务的功能(XOrg,Sane,Ghostscript)。 ..)-这些内容也往往是特定于相关用户空间软件的给定版本,并且大多随它们一起分发。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.