Utilisation du SSD NVME comme lecteur système sur des ordinateurs dotés d'un BIOS et d'un système d'exploitation Linux plus anciens

Utilisation du SSD NVME comme lecteur système sur des ordinateurs dotés d'un BIOS et d'un système d'exploitation Linux plus anciens

S'il est correctement configuré, vous pouvez démarrer à partir d'un SSD NVME même sur des systèmes plus anciens. Il est supposé que le système d'exploitation (OS) est capable de fonctionner avec NVME SSD. J'envisage de démarrer le système d'exploitation, car avec les pilotes disponibles dans le système d'exploitation, le SSD NVME est visible dans le système d'exploitation après le démarrage et peut être utilisé. Aucun logiciel supplémentaire (logiciel) pour Linux n'est requis. Pour les systèmes d'exploitation de la famille BSD et d'autres Unix, la méthode est probablement également appropriée.

Pour démarrer à partir de n'importe quel lecteur, le chargeur de démarrage (BOP), le BIOS ou l'EFI (UEFI) doivent contenir des pilotes pour ce périphérique. Les disques SSD NVME sont des périphériques assez nouveaux par rapport au BIOS, et il n'y a pas de tels pilotes dans le micrologiciel des anciennes cartes mères. Dans EFI sans prise en charge du SSD NVME, vous pouvez ajouter le code approprié, puis il devient possible de travailler pleinement avec cet appareil - vous pouvez installer le système d'exploitation et le démarrer. Pour les anciens systèmes avec soi-disant. Il est peu probable que le démarrage du système d'exploitation avec le "BIOS hérité" le fasse. Cependant, cela peut être contourné.

Comment

J'ai utilisé openSUSE Leap 15.1. Pour les autres Linux, les étapes seront à peu près les mêmes.

1. Préparons l'ordinateur pour installer le système d'exploitation.
Vous avez besoin d'un PC ou d'un serveur avec un emplacement PCI-E 4x ou plus libre, quelle que soit la version, PCI-E 1.0 suffit. Bien sûr, plus la version PCI-E est récente, plus la vitesse sera rapide. Eh bien, en fait, SSD NVME avec adaptateur M.2 - PCI-E 4x.
Vous avez également besoin d'un type de lecteur d'une capacité de 300 Mo ou plus, visible depuis le BIOS et à partir duquel vous pouvez charger le système d'exploitation. Il peut s'agir d'un disque dur avec connexion IDE, SATA, SCSI. S.A.S. Ou clé USB ou carte mémoire. Il ne tient pas sur une disquette. Un CD-ROM ne fonctionnera pas et devra être réécrit. DVD-RAM - aucune idée. Nous appellerons conditionnellement cette chose un "lecteur BIOS hérité".

2. Nous chargeons Linux pour l'installation (à partir d'un disque optique ou d'un lecteur flash amorçable, etc.).

3. Lors du partitionnement d'un disque, répartissez le système d'exploitation parmi les lecteurs disponibles :
3.1. Créons une partition pour le chargeur de démarrage GRUB au début du "BIOS du lecteur hérité" avec une taille de 8 Mo. Je note qu'ici la fonctionnalité openSUSE est utilisée - GRUB sur une partition séparée. Pour openSUSE, le système de fichiers par défaut (FS) est BTRFS. Si vous placez GRUB sur une partition avec un système de fichiers BTRFS, le système ne démarrera pas. Par conséquent, une section distincte est utilisée. Vous pouvez placer GRUB ailleurs, tant qu'il démarre.
3.2. Après la partition avec GRUB, nous allons créer une partition avec une partie du dossier système ("root"), à savoir avec "/boot/", d'une taille de 300 Mo.
3.3. Le reste de la bonté - le reste du dossier système, la partition d'échange, la partition utilisateur "/home/" (si vous décidez d'en créer une) peut être placé sur le SSD NVME.

Après l'installation, le système charge GRUB, qui charge les fichiers depuis /boot/, après quoi le SSD NVME devient disponible, puis le système démarre à partir du SSD NVME.
En pratique, j'ai obtenu une accélération significative.

Capacité requise pour un "BIOS de lecteur hérité": 8 Mo pour une partition GRUB est la valeur par défaut, et n'importe où à partir de 200 Mo pour /boot/. 300 Mo j'ai pris avec une marge. Lors de la mise à jour du noyau (et lors de l'installation de nouveaux noyaux), Linux reconstituera la partition /boot/ avec de nouveaux fichiers.

Estimation de la vitesse et du coût

Le coût du SSD NVME 128 Go - à partir d'environ 2000 roubles.
Le coût d'un adaptateur M.2 - PCI-E 4x - d'environ 500 roubles.
Des adaptateurs M.2 vers PCI-E 16x pour quatre disques SSD NVME sont également en vente, au prix de 3000 r. - si quelqu'un en a besoin.

Vitesses limites :
PCI-E 3.0 4x environ 3900 Mo/s
PCI-E 2.0 4x 2000 Mo/s
PCI-E 1.0 4x 1000 Mo/s
Les disques avec PCI-E 3.0 4x atteignent en pratique des vitesses d'environ 3500 Mo / s.
On peut supposer que la vitesse réalisable sera la suivante :
PCI-E 3.0 4x environ 3500 Mo/s
PCI-E 2.0 4x environ 1800 Mo/s
PCI-E 1.0 4x environ 900 Mo/s

Ce qui est plus rapide que SATA 600 Mo/s. La vitesse réalisable pour SATA 600 Mo/s est d'environ 550 Mo/s.
Dans le même temps, sur les cartes mères plus anciennes, la vitesse SATA du contrôleur embarqué peut ne pas être de 600 Mo/s, mais de 300 Mo/s ou 150 Mo/s. Ici onboard controller = contrôleur SATA intégré au southbridge du chipset.

Je note que NCQ fonctionnera pour les SSD NVME, alors que les anciens contrôleurs embarqués peuvent ne pas l'avoir.

J'ai fait les calculs pour PCI-E 4x, cependant, certains disques ont un bus PCI-E 2x. C'est suffisant pour PCI-E 3.0, mais pour les anciennes normes PCI-E - 2.0 et 1.0 - il vaut mieux ne pas prendre de tels SSD NVME. De plus, un lecteur avec un tampon sous la forme d'une puce mémoire sera plus rapide que sans lui.

Pour ceux qui veulent abandonner complètement le contrôleur SATA embarqué, je vous conseille d'utiliser le contrôleur Asmedia ASM 106x (1061, etc.), qui fournit deux ports SATA 600 (internes ou externes). Il fonctionne plutôt bien (après une mise à jour du firmware), en mode AHCI il supporte NCQ. Connecté via le bus PCI-E 2.0 1x.

Sa vitesse de pointe :
PCI-E 2.0 1x 500 Mo/s
PCI-E 1.0 1x 250 Mo/s
La vitesse réalisable sera :
PCI-E 2.0 1x 460 Mo/s
PCI-E 1.0 1x 280 Mo/s

C'est suffisant pour un SSD SATA ou deux disques durs.

Lacunes constatées

1. Pas lu Paramètres INTELLIGENTS avec NVME SSD, il n'y a que des informations générales sur le fabricant, le numéro de série, etc. Peut-être à cause d'une trop vieille carte mère (mp). Pour mes expériences inhumaines, j'ai utilisé le plus vieux mp que j'ai pu trouver, avec un chipset nForce4.

2. TRIM devrait fonctionner, mais il doit être vérifié.

Conclusion

Il existe d'autres options : achetez un contrôleur SAS avec un slot PCI-E 4x ou 8x (y a-t-il 16x ou 32x ?). Cependant, s'ils sont bon marché, ils prennent en charge SAS 600, mais SATA 300, et les plus chers seront plus chers et plus lents que la méthode proposée ci-dessus.

Pour une utilisation avec M $ Windows, vous pouvez installer un logiciel supplémentaire - un chargeur de démarrage avec des pilotes intégrés pour NVME SSD.

Voir ici:
www.win-raid.com/t871f50-Guide-How-to-get-full-NVMe-support-for-all-Systems-with-an-AMI-UEFI-BIOS.html
www.win-raid.com/t3286f50-Guide-NVMe-boot-for-systems-with-legacy-BIOS-and-older-UEFI-DUET-REFIND.html
forum.overclockers.ua/viewtopic.php?t=185732
pcportal.org/forum/51-9843-1
mrlithium.blogspot.com/2015/12/how-to-boot-nvme-ssd-from-legacy-bios.html

J'invite le lecteur à évaluer par lui-même s'il a besoin d'une telle application de SSD NVME, ou s'il serait préférable d'acheter une nouvelle carte mère (+ processeur + mémoire) avec un connecteur M.2 PCI-E existant et un support pour démarrer à partir de NVME SSD en EFI.

Source: habr.com

Ajouter un commentaire