
Bei entsprechender Konfiguration ist es möglich, auch auf älteren Systemen von einem NVME SSD-Laufwerk zu booten. Dabei wird vorausgesetzt, dass das Betriebssystem (OS) mit NVME SSDs arbeiten kann. Ich beziehe mich hierbei auf das Booten des OS, da NVME SSDs nach dem Booten mit den vorhandenen Treibern im OS sichtbar sind und verwendet werden können. Zusätzliche Software (SW) für Linux ist nicht erforderlich. Für Betriebssysteme der BSD-Familie und andere Unix-Systeme sollte dieser Weg vermutlich ebenfalls funktionieren.
Um von einem Speichergerät zu booten, müssen die Treiber für dieses Gerät in der Boot-Programm (BIOS oder EFI/UEFI) enthalten sein. NVME SSDs sind im Vergleich zu BIOS relativ neu, weshalb ältere Mainboard-Firmware in der Regel keine solchen Treiber enthält. In EFI ohne NVME SSD-Unterstützung kann entsprechender Code hinzugefügt werden, sodass eine vollständige Funktionalität dieses Geräts möglich wird – man kann das Betriebssystem installieren und booten. Bei älteren Systemen mit sogenanntem „Legacy BIOS“ wird es wahrscheinlich nicht möglich sein, das OS auf diese Art zu booten. Allerdings ist es möglich, dies zu umgehen.
Wie man es macht
Ich habe openSUSE Leap 15.1 verwendet. Für andere Linux-Distributionen werden die Schritte ähnlich sein.
1. Wir bereiten den Computer für die Installation des Betriebssystems vor.
Benötigt wird ein PC oder Server mit einem freien PCI-E 4x-Steckplatz oder länger, unabhängig von der Version; PCI-E 1.0 reicht aus. Natürlich ist eine neuere PCI-E-Version schneller. Und selbstverständlich benötigen wir ein NVMe SSD mit M.2 zu PCI-E 4x Adapter.
Außerdem wird ein Speichermedium mit einer Kapazität von 300 MB oder mehr benötigt, das im BIOS sichtbar ist und von dem das Betriebssystem geladen werden kann. Das kann eine HDD über IDE, SATA, SCSI oder SAS sein. Oder ein USB-Stick oder eine Speicherkarte. Eine Diskette passt nicht rein. Ein CD-ROM-Laufwerk eignet sich nicht, da es umgeschrieben werden muss. Bei DVD-RAM bin ich mir nicht sicher. Nennen wir dieses Gerät vorläufig ‚Legacy BIOS Speicher‘.
2. Wir laden Linux für die Installation (von einer optischen Disc oder einem bootfähigen USB-Stick etc.).
3. Bei der Partitionierung der Festplatte verteilen wir das Betriebssystem auf die vorhandenen Speichermedien:
3.1. Wir erstellen eine Partition für den GRUB-Bootloader zu Beginn des "Legacy BIOS-Laufwerks" mit einer Größe von 8 MB. Ich möchte darauf hinweisen, dass hier eine Besonderheit von openSUSE verwendet wird – GRUB wird in einer separaten Partition installiert. Standardmäßig nutzt openSUSE das Dateisystem (FS) BTRFS. Wenn GRUB in einer Partition mit BTRFS gespeichert wird, kann das System nicht booten. Daher wird eine separate Partition verwendet. Sie können GRUB auch woanders platzieren, solange es bootet.
3.2. Nach der GRUB-Partition erstellen wir eine Partition für einen Teil des Systemverzeichnisses ("Root"), und zwar für "/boot/", mit einer Größe von 300 MB.
3.3. Den übrigen Speicherplatz – den Rest des Systemverzeichnisses, die Swap-Partition, die Benutzerpartition "/home/" (falls Sie eine erstellen möchten) – können Sie auf dem NVME SSD anlegen.
Nach der Installation lädt das System GRUB, der die Dateien aus /boot/ lädt, woraufhin das NVME SSD verfügbar wird, und dann folgt das Booten des Systems von NVME SSD.
In der Praxis habe ich eine deutliche Beschleunigung festgestellt.
Kapazitätsanforderungen für das "Legacy BIOS-Laufwerk": 8 MB für die GRUB-Partition – das ist standardmäßig so, und etwa 200 MB für /boot/. 300 MB habe ich als Puffer eingeplant. Bei der Aktualisierung des Kernels (und bei Installationen neuerer Versionen) wird Linux die Partition /boot/ mit neuen Dateien ergänzen.
Geschwindigkeits- und Kostenbewertung
Der Preis für ein NVME SSD mit 128 GB liegt bei etwa 20,00 €.
Der Preis für einen M.2 — PCI-E 4x Adapter liegt bei etwa 5,00 €.
Es sind auch M.2 — PCI-E 16x Adapter erhältlich, die es ermöglichen, vier NVME SSDs anzuschließen, mit Preisen ab etwa 30,00 € — falls das jemand benötigt.
Maximale Geschwindigkeiten:
PCI-E 3.0 4x etwa 3.900 MB/s
PCI-E 2.0 4x 2.000 MB/s
PCI-E 1.0 4x 1.000 MB/s
Speicher mit PCI-E 3.0 4x erreichen in der Praxis Geschwindigkeiten von etwa 3.500 MB/s.
Man kann annehmen, dass die erreichbare Geschwindigkeit so aussieht:
PCI-E 3.0 4x etwa 3.500 MB/s
PCI-E 2.0 4x etwa 1.800 MB/s
PCI-E 1.0 4x etwa 900 MB/s
Was schneller ist als SATA mit 600 MB/s. Die erreichbare Geschwindigkeit für SATA 600 MB/s liegt bei etwa 550 MB/s.
Bei älteren Motherboards kann die SATA-Geschwindigkeit des Onboard-Controllers nicht 600 MB/s betragen, sondern nur 300 MB/s oder 150 MB/s. Hierbei bezeichnet Onboard-Controller den SATA-Controller, der im Southbridge-Chipsatz integriert ist.
Ich möchte hervorheben, dass NCQ bei NVME SSDs funktioniert, aber ältere Onboard-Controller möglicherweise nicht über diese Fähigkeit verfügen.
Ich habe Berechnungen für PCI-E 4x angestellt, allerdings haben einige Speicher eine PCI-E 2x Schnittstelle. Dies reicht für PCI-E 3.0 aus, doch für ältere Standards wie PCI-E 2.0 und 1.0 sollten solche NVME SSDs besser nicht verwendet werden. Zudem ist ein Speicher mit einem Cache in Form eines Speichermoduls schneller als ohne.
Für diejenigen, die vollständig auf den onboard SATA-Controller verzichten möchten, empfehle ich den Asmedia ASM 106x (1061 und andere) Controller, der zwei SATA 600 Ports (intern oder extern) bereitstellt. Er funktioniert sehr gut (nach einem Firmware-Update) und unterstützt im AHCI-Modus NCQ. Der Anschluss erfolgt über den PCI-E 2.0 1x-Bus.
Seine maximale Geschwindigkeit:
PCI-E 2.0 1x 500 MB/s
PCI-E 1.0 1x 250 MB/s
Die erreichbare Geschwindigkeit beträgt:
PCI-E 2.0 1x 460 MB/s
PCI-E 1.0 1x 280 MB/s
Das reicht für eine SATA SSD oder zwei HDDs aus.
Beobachtete Nachteile
1. SMART-Daten werden nicht gelesen 2. TRIM sollte funktionieren, muss aber überprüft werden.
Es gibt noch andere Möglichkeiten: einen SAS-Controller mit einem PCI-E 4x oder 8x Anschluss zu kaufen (gibt es auch 16x oder 32x?). Allerdings unterstützen die günstigen SAS 600, aber SATA 300, und die teureren sind teurer und langsamer als die oben genannte Methode.
Fazit
Für die Verwendung mit M$ Windows kann zusätzliche Software installiert werden – ein Bootloader mit integrierten Treibern für NVME SSDs.
Für die Verwendung mit M$ Windows kann zusätzliche Software installiert werden – ein Bootloader mit integrierten Treibern für NVME SSD.
Siehe hier:
Ich empfehle dem Leser, selbst zu beurteilen, ob ihm eine solche Nutzung von NVMe SSD sinnvoll erscheint, oder ob es besser wäre, ein neues Motherboard (+ Prozessor + RAM) mit einem vorhandenen M.2 PCI-E Anschluss und Unterstützung für den Start von NVMe SSD in EFI zu erwerben.
Quelle: habr.com
