Warum muss ich keine Treiber für Ubuntu installieren?

14

Wenn ich Windows installiere, muss ich alle Treiber für meinen Laptop installieren.

Warum mache ich mit der Ubuntu-Installation nicht dasselbe?

Erkennt die Installation irgendwie meine Hardware und installiert sie selbst die richtigen Treiber?

Vielen Dank

Krake
quelle

Antworten:

14

In den meisten Fällen müssen Sie keine zusätzlichen Treiber installieren. Fast alle verfügbaren Treiber sind enthalten.

Ubuntu wird mit vielen Treibern ausgeliefert. Möglicherweise müssen Sie nur Treiber installieren, wenn einige Ihrer Hardwarekomponenten nicht ordnungsgemäß funktionieren oder nicht erkannt werden. Einige Treiber für Grafikkarten und WLAN-Adapter können heruntergeladen werden.

Der einfache Weg, um herauszufinden, ob Treiber benötigt werden, besteht darin, Ubuntu zuerst auf dem Installationsbildschirm zu testen, um festzustellen, ob Sie Treiber benötigen, und um festzustellen, ob Ubuntu mit Ihrer Hardware zusammenarbeitet.

Mitch
quelle
Um die ursprüngliche Frage noch etwas näher zu erläutern, benötigen alle Geräte einen Treiber, um mit einem Betriebssystem zu kommunizieren (unabhängig davon, ob dies Mac OS X, Windows, Linux usw. ist) und um zu verstehen, wie dieses Gerät funktioniert. Während Sie möglicherweise Treiber für die Geräte Ihres Systems installieren müssen, muss ich andererseits überhaupt keine Treiber installieren (für Windows ODER Ubuntu), wenn ich ein Betriebssystem neu installiere. Das bedeutet nicht, dass sie nicht da sind, sondern nur, dass die von den OS-Entwicklern bereitgestellten "Out-of-the-Box" -Treiber einwandfrei funktionieren. ;)
Schwerkraft
Installiert das Installationsprogramm verschiedene Treiber auf jedem Computer? Oder ist alles im Kernel, was bedeutet, dass das Programm auf allen Computern denselben Kernel mit denselben Treibern installiert?
Revetahw sagt Reinstate Monica
1
@Fiksdal Nein, das Installationsprogramm installiert immer die gleichen Treiber (Kernel und Module), unabhängig davon, auf welcher Hardware es ausgeführt wird. Der Kernel ermittelt dann, was er beim Booten benötigt, und lädt nur die Module, die für die Hardware benötigt werden, auf der er ausgeführt wird. Das ist auch der Grund, warum Sie eine Festplatte von einem Computer nehmen und in einen anderen einsetzen können, und es wird funktionieren.
Dies ist
@ JonasCz Danke für diese Information! Unter Windows ist dies mit einem Drittanbieter-Tool namens WinToUSB möglich. Es kümmert sich automatisch um die Treiber, wenn Sie zwischen verschiedenen Computern wechseln, die ich selbst benutze. Es ist sehr einfach und benutzerfreundlich.
Revetahw sagt Reinstate Monica
1

Ubuntu ist ein Open-Source-Betriebssystem, und unter einem Open-Source-Betriebssystem können Benutzer zusätzlich vor Problemen geschützt werden, die durch die Installation des falschen Treibers verursacht werden, und zusätzliche Hilfe bei der Wiederherstellung des Systems nach der Installation des falschen proprietären Grafiktreibers erhalten. Ich beziehe mich hier auf die integrierten Open-Source-Grafiktreiber wie nouveau und die amdgpu-Pakete sowie auf proprietäre Grafiktreiber wie die NVIDIA-Treiber von der offiziellen NVIDIA-Website und den AMDGPU-Pro-Treiber 1 von der offiziellen AMD-Website.

Die in Ubuntu integrierten Open Source-Treiber bieten dem Benutzer einen zusätzlichen Schutz vor einer Neuinstallation des Betriebssystems aufgrund eines Problems, das durch die Installation eines proprietären Treibers verursacht wurde. Der Grund, warum einige Treiber nicht in Ubuntu installiert werden müssen, ist, dass einige Open Source-Treiber bereits in der Ubuntu-Standardinstallation integriert sind. Durch die Installation eines proprietären Treibers kann Ihr System manchmal nicht mehr gestartet werden, wenn nicht die noch installierten Open-Source-Treiber installiert sind, mit denen das System nach der Deinstallation des proprietären Treibers, der das Problem verursacht hat, erneut gestartet werden kann.

karel
quelle
Der Grund, warum Open Source-Treiber eingebaut sind, ist kein "Schutz" vor irgendetwas. Es ist das Konzept des Linux-Kernels. Es hat sie einfach. Wenn in einigen Fällen keine Hardware unterstützt wird, sind möglicherweise proprietäre Treiber erforderlich.
Pilot6
Ich beziehe mich hier auf Open-Source-Treiber wie Nouveau und die amdgpu-Pakete.
Karl
Diese Treiber sollen kein "Schutz" oder eine vorübergehende Lösung sein. Sie müssen mit der Hardware so gut umgehen können, dass sie dauerhaft verwendet werden können. Dies ist jedoch aus verschiedenen Gründen nicht immer der Fall. So einfach ist das.
Pilot6
Ich habe nicht gesagt, was die Open Source-Grafiktreiber tun sollen. Ich sagte, dass diese Treiber eine Schutzschicht für den Benutzer sind. Es ist offensichtlich, dass die eingebauten Treiber auch angemessen funktionieren sollen, da sie sonst nicht auf die Aufnahme in die Standard-Ubuntu-Repositorys überprüft worden wären.
Karl
Sie sind keine Schutzschicht. Sie sind nur die Fahrer, die wir haben.
Pilot6
0

Linux-Systeme (und einige andere Open-Source-Unix-Systeme) behandeln Treiber ganz anders als Windows-Betriebssysteme.

In Windows-Systemen (insbesondere vor Windows 10) bietet der Betriebssystemkern eine stabile binäre Softwareschnittstelle, auf die ein Treiber geschrieben werden kann, und diese Schnittstelle ist (mit Ausnahmen) während des gesamten Supportzyklus einer bestimmten Windows-Version garantiert unverändert. Dies begünstigt Treiber, die von Drittanbietern geschrieben und bereitgestellt werden. Sie funktionieren normalerweise für mindestens eine Windows-Version in diesem Supportzyklus. Der Nachteil ist, dass diese Treiberoberfläche in diesem Lebenszyklus nur schwer zu verbessern oder zu beheben ist und die Binärverteilung von Treibern bevorzugt wird, was (abgesehen von der Politik!) Häufig die konsistente Unterstützung mehrerer Plattformen einschränkt.

Linux-Kernel haben eine sich ändernde Treiber-Oberfläche, die nur auf der Quellcode-Ebene streng spezifiziert ist und auf Verbesserung und Konsistenz auf mehreren Plattformen ausgerichtet ist. Dies bedeutet, dass, sofern kein zusätzlicher "Übersetzer" -Treiber mit einer bestimmten, stabilen Binärschnittstelle verwendet wird, eine Treiberbinärdatei für eine genaue Kernel-Erstellung spezifisch ist. Man könnte eine Treiber-Binärdatei "fudgen", um vielleicht mit ein paar Dutzend exakter Kernel-Versionen auf einer Plattform kompatibel zu sein, aber der Aufwand, sie zu warten (als Binärangebot), wäre unwirtschaftlich. Diese Tendenz ist auch in der Linux-Kernel-Community politisch gewollt, da sie vorgibt, ein Closed-Source-Binary-Treiber könne auf einem busmastering-fähigen Peripheriegerät viel schlechter abschneiden als schädliche FirmwareBetrachten Sie geschlossenen Quellcode als zu nicht vertrauenswürdig und zu unangenehm, um ihn mit Kernelprivilegien ausführen zu können. Open-Source-Gerätetreiber für alle wichtigen Hardwarekomponenten werden daher im Kernel-Paket selbst bereitgestellt, wobei die zweite Option darin besteht, ein relativ einfach zu verwendendes Verfahren zum Verteilen eines externen Treibers als Quell-Tarball gegen den installierten Kernel zu kompilieren.

Einige andere Linux-Treiber (z. B. klassische X11-Grafiktreiber, Scannertreiber, Druckertreiber) werden nicht als Teile des Kernels behandelt, sondern als Teile einer Userspace-Software, die die Funktionalität als systemweiten Dienst bereitstellt (XOrg, Sane, Ghostscript). ..) - Auch diese sind in der Regel spezifisch für eine bestimmte Version der jeweiligen Userspace-Software und werden meistens mit dieser vertrieben.

Rackandboneman
quelle