Utilisation du SSD NVME en tant que lecteur système sur les ordinateurs dotés d'un ancien BIOS et d'un système d'exploitation Linux

image

S'il est configuré correctement, vous pouvez démarrer à partir du SSD NVME même sur des systèmes plus anciens. Il est supposé que le système d'exploitation (OS) peut fonctionner avec le SSD NVME. Je considère le chargement du système d'exploitation, car avec les pilotes NVME disponibles dans le système d'exploitation, le SSD est visible dans le système d'exploitation après le chargement 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 convient très probablement également.

Pour démarrer à partir d'un lecteur, il est nécessaire que le programme de démarrage (BIOS), BIOS ou EFI (UEFI) contienne les pilotes de ce périphérique. Les SSD NVME sont des appareils assez nouveaux par rapport au BIOS, et il n'y a pas de tels pilotes dans le firmware du firmware des anciennes cartes mères. Dans EFI, sans prise en charge 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 charger. Pour les anciens systèmes avec ce qu'on appelle Il est peu probable que le "BIOS hérité" puisse être fait en chargeant le système d'exploitation. Cependant, cela peut être contourné.

Comment faire


J'ai utilisé openSUSE Leap 15.1. Pour les autres Linux, les actions seront approximativement les mêmes.

1. Préparez l'ordinateur pour installer le système d'exploitation.
Vous avez besoin d'un PC ou d'un serveur avec un connecteur PCI-E 4x gratuit ou plus, quelle que soit la version, PCI-E 1.0 est suffisant. Bien sûr, plus la version PCI-E est récente, plus la vitesse est élevée. Eh bien, en fait, NVME SSD avec un adaptateur M.2 - PCI-E 4x.
Vous avez également besoin d'une sorte 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 via IDE, SATA, SCSI. SAS. Ou une clé USB ou une carte mémoire. Il ne rentrera pas sur une disquette. Le CD-ROM ne fonctionnera pas, une réécriture est requise. DVD-RAM - aucune idée. Appelons cette chose «lecteur BIOS hérité».

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

3. Lors du balisage du disque, nous distribuerons le système d'exploitation aux lecteurs disponibles:
3.1. Créez une partition pour le chargeur de démarrage GRUB au début du «lecteur BIOS hérité» de taille 8 Mo. Je note que nous utilisons ici la fonctionnalité openSUSE - GRUB dans une section distincte. Pour openSUSE, le système de fichiers BTRFS (FS) est utilisé par défaut. Si GRUB est placé sur une partition avec BTRFS FS, le système ne démarre pas. Par conséquent, une section distincte est utilisée. Vous pouvez placer GRUB dans un autre endroit si seulement il est chargé.
3.2. Après la partition avec GRUB, créez une partition avec une partie du dossier système («root»), à savoir avec «/ boot /», d'une taille de 300 Mo.
3.3. Le bien restant - le reste du dossier système, la partition de swap, la partition utilisateur «/ home /» (si vous avez décidé d'en créer une) peuvent être placés sur le SSD NVME.

Après l'installation, le système charge GRUB, qui télé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 reçu une accélération importante.

Exigences de capacité pour le «lecteur BIOS hérité»: 8 Mo pour la partition GRUB est la valeur par défaut, et quelque part autour de 200 Mo pour / boot /. J'ai pris 300 Mo avec une marge. Lors de la mise à jour du noyau (et lors de l'installation de nouveaux), Linux reconstituera la section / boot / avec de nouveaux fichiers, tout en supprimant plus de noyaux inutiles, cela libérera de l'espace. L'espace restant sur le "lecteur BIOS hérité" en dehors de ces deux sections peut être utilisé à votre discrétion.

Estimation de la vitesse et du coût


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

Limites de vitesse:
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 3 500 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 anciennes cartes mères, la vitesse SATA du contrôleur intégré peut ne pas être de 600 Mo / s, mais de 300 Mo / s ou 150 Mo / s. Ici, le contrôleur embarqué = contrôleur SATA intégré dans le pont sud du chipset.

Je note que NCQ fonctionnera pour le SSD NVME, mais cela peut ne pas être le cas avec les anciens contrôleurs embarqués.

J'ai fait des 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 est préférable de ne pas prendre de tels SSD NVME. De plus, un lecteur avec un tampon sous forme de puce mémoire sera plus rapide que sans lui.

Pour ceux qui veulent abandonner complètement le contrôleur SATA intégré, je vous conseille d'utiliser le contrôleur Asmedia ASM 106x (1061 et autres), qui fournit deux ports SATA 600 (interne ou externe). Il fonctionne très bien (après la mise à jour du firmware), en mode AHCI il prend en charge NCQ. Il est connecté via le bus PCI-E 2.0 1x.

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

Cela suffit pour un SSD SATA ou deux disques durs.

Lacunes


1. Les paramètres SMART ne sont pas lus avec le SSD NVME, il n'y a que des données générales sur le fabricant, le numéro de série, etc. Peut-être à cause d'une carte mère trop ancienne (MP). Pour mes expériences inhumaines , j'ai utilisé le plus ancien mp que j'ai pu trouver avec le chipset nForce4.

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

Conclusion


Il existe d'autres options: acheter un contrôleur SAS avec un connecteur PCI-E 4x ou 8x (existe-t-il 16x ou 32x?). Cependant, s'ils sont bon marché, ils prennent en charge SAS 600, mais SATA n'est que 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 des logiciels supplémentaires - 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

Je suggère au lecteur d'évaluer par lui-même s'il a besoin d'une telle application de NVME SSD, ou s'il serait préférable d'acheter une nouvelle carte mère (+ processeur + mémoire) avec un connecteur PCI-E M.2 existant et un support pour le téléchargement de NVME SSD vers EFI.

Source: https://habr.com/ru/post/fr472068/


All Articles