حلّ المجتمع

قرص NVMe في Beelink ME Mini غير ظاهر في واجهة ZimaOS: شخّص المشكلة

Beelink ME Mini users could read and write NVMe RAID pools while the ZimaOS dashboard misidentified drives or reported incorrect pool usage.

الخلاصة: إذا كانت RAID تعمل لكن ZimaOS يقول إن أقراص NVMe مفقودة، فاشتبه في تعيين المنافذ قبل تعطل القرص

في عدة عمليات تثبيت على أجهزة Beelink ME Mini، ظل تخزين RAID 0/5 قابلًا للقراءة والكتابة عبر SMB، بينما عرضت لوحة المعلومات أقراص NVMe مفقودة أو معلومات غير صحيحة عن المساحة الحرة. ويعني هذا النمط أن Linux وطبقة RAID تستطيعان بالفعل رؤية الأجهزة. أما الطبقة المعطّلة فهي تعيين المنافذ الفعلية وواجهة مستخدم ZimaOS.

تخزين ZimaOS يعرض مجموعة RAID5 مع الإبلاغ عن فقدان أقراص NVMe على جهاز Beelink ME Mini
ظلّت المجموعة قابلة للوصول، لكن ZimaOS عرض أربعة منافذ NVMe على أنها مفقودة رغم أن RAID الأساسية كانت تعمل.
تخزين ZimaOS يعرض مجموعة RAID0 مع فقدان أعضاء NVMe من خريطة المنافذ المرئية
أظهرت مجموعة ثانية عدم التطابق نفسه: تخزين RAID قابل للاستخدام في الخلفية، مع عرض غير صحيح للأقراص الفعلية في لوحة المعلومات.

أثبت أولًا سلامة NVMe وRAID خلف واجهة المستخدم

lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINTS
lspci | grep -i "Non-Volatile"
cat /proc/mdstat
df -h

إذا كانت RAID موصّلة، وكان SMB يعمل، وظهرت أجهزة NVMe المتوقعة في lspci/lsblk، ولا تُعد إنشاء المصفوفة لمجرد إصلاح لوحة المعلومات. صُممت شاشات التخزين الحالية في ZimaOS لعرض حالة القرص والسعة ومعلومات القراءة/الكتابة بمجرد تصحيح التعيين.

يوفّر حالة تخزين ZimaOS النتيجة النهائية المتوقعة.

يستخدم تعيين NVMe عناوين PCI، وليس HCTL الخاص بـ lsblk

طرفية ZimaOS حيث يعيد lsblk -o hctl ترويسة HCTL فقط لأجهزة NVMe
يوضح هذا التشخيص الفاشل خطأً شائعًا: يُعد HCTL مفيدًا للأجهزة ذات نمط SCSI/SATA، بينما يحتاج تعيين NVMe إلى عناوين PCI بدلًا من ذلك.

استخدم الإصلاح القديم للأجهزة غير التابعة لـ Zima lspci لأجهزة NVMe. lsblk -o hctl وهو فرع SATA/SCSI، وقد لا يعيد أي نتائج مفيدة لأجهزة NVMe. وقد أزال هذا التمييز الالتباس في النقاش.

الإصلاح التاريخي لملف local-storage.conf

الحل البديل من IceWhale للأجهزة غير التابعة لـ Zima استخدم /etc/casaos/local-storage.conf وحدّث الملف NVMe الربط بما يطابق عناوين PCI التي تم الكشف عنها بواسطة lspci، متبوعًا بـ:

systemctl restart zimaos-local-storage

اكتشف المستخدمون لاحقًا أن سلوك المحلل الفعلي في إصداراتهم يتطلب عناوين مفصولة بمسافات بدلًا من المثال المفصول بفواصل المنشور أصلًا. ونظرًا إلى أن هذا حل بديل قديم منخفض المستوى، خذ نسخة احتياطية من الإعدادات وفضّل سلوك ZimaOS الحالي أولًا قبل تعديلها يدويًا.

يحافظ ربط الأقراص غير التابعة لـ Zima على الإجراء التاريخي.

كيف تبدو واجهة NVMe المصححة

مجموعة ZimaOS RAID5 التي تعرض ثلاثة أقراص SSD من TEAMGROUP NVMe مع درجات حرارة الحالة ونسبة استخدام تبلغ صفرًا بالمئة
أظهر إعداد Beelink لاحق النتيجة المقصودة: ظهور طرازات أقراص NVMe الفردية وسعاتها ودرجات حرارتها في واجهة التخزين.
مجموعة ZimaOS RAID5 التي تعرض ثلاثة أقراص SSD من Crucial NVMe بسعة 2 تيرابايت مع معلومات الحالة ودرجة الحرارة
كشفت تهيئة مصححة أخرى عن أسماء طرز أقراص NVMe ونسب الاستخدام ودرجات الحرارة بدلًا من بطاقات الأقراص المفقودة الوهمية.
شاشة تخزين ZimaOS RAID5 التي تعرض ثلاثة أقراص SSD من Crucial NVMe بسعة 4 تيرابايت وقد جرى اكتشافها بشكل صحيح
أظهرت خريطة منافذ عاملة تضم ثلاثة أقراص NVMe بسعة 4 تيرابايت أن المشكلة كانت في ربط واجهة المستخدم، لا في وظيفة RAID.
تخزين ZimaOS الذي يعرض أقراص NVMe الستة على أنها مفقودة في لوحة المعلومات قبل تصحيح ربط NVMe عبر PCI
ظهرت مواضع NVMe الستة جميعها على أنها مفقودة رغم وجود المجموعة، مما أكد مجددًا أن تهيئة المنافذ المرئية كانت خاطئة.
مجموعة ZimaOS RAID5 التي تعرض أقراص SSD من Crucial NVMe الستة بشكل صحيح بعد تحديث ربط عناوين PCI
بعد تصحيح ربط عناوين PCI لأقراص NVMe، ظهرت أقراص SSD الستة جميعها مع بيانات الطراز والسعة ودرجة الحرارة.

بعد تصحيح الربط، يمكن للوحة المعلومات عرض طراز كل قرص SSD وسعته ودرجة حرارته ونسبة استخدامه بدلًا من بطاقات الأقراص المفقودة الوهمية. يغيّر الإصلاح طريقة ربط ZimaOS لأجهزة PCI الفعلية بالمنافذ المرئية؛ ولا يصلح بيانات نظام الملفات.

كيفية التحقق من صحة NVMe بشكل مستقل عن الواجهة

nvme list
nvme smart-log /dev/nvme0
smartctl -a /dev/nvme0

يوفر فحوصات صحة nvme-cli أدوات NVMe القياسية لنظام Linux. استخدمها عندما تكون لوحة المعلومات موضع شك، لكنك لا تزال بحاجة إلى أدلة على صحة محرك الأقراص.

متى ينبغي ألّا تعدّل خريطة الفتحات

إذا كان جهاز NVMe غير موجود في lspci و lsblk، فأنت لا تواجه مشكلة تقتصر على الواجهة. تحقّق أولًا من BIOS، وتركيب محرك الأقراص، وبروتوكول الفتحة، والطاقة، وتوافق الأجهزة. لا يمكن لتعديل خريطة الفتحات أن يجعل محرك أقراص غير مكتشف فعليًا يظهر.

يوفر تخزين ZimaCube 2 واسترداد RAID بنيات مرجعية أكثر أمانًا.

الأسئلة الشائعة

لماذا تعمل مصفوفة RAID على Beelink بينما يعرض ZimaOS أقراصًا مفقودة؟

يمكن لنظام Linux تجميع RAID وتركيبه حتى إذا لم تتطابق خريطة الفتحات المرئية في ZimaOS مع طوبولوجيا PCI الخاصة بـ Beelink.

هل ينبغي إعادة إنشاء RAID لإصلاح بطاقات NVMe المفقودة؟

لا. إذا كانت البيانات قابلة للقراءة والمصفوفة سليمة، فأصلح ربط الواجهة أو أبلغ عنه بدلًا من تدمير مصفوفة عاملة.

لماذا لا يعرض lsblk -o hctl أي شيء؟

أجهزة NVMe هي أجهزة PCIe، وكان الحل البديل القديم يستخدم عناوين lspci. أما HCTL فهو أكثر صلة بربط الأجهزة بنمط SCSI/SATA.

هل لا يزال بإمكاني استخدام nvme-cli إذا كانت واجهة ZimaOS غير صحيحة؟

نعم، إذا كان الجهاز ظاهرًا لنظام Linux. يمكن للأمر nvme smart-log توفير معلومات الصحة ودرجة الحرارة وعدادات الأخطاء بشكل مستقل عن لوحة المعلومات.

هل لا يزال تعديل local-storage.conf هو الخطوة الأولى الموصى بها؟

لا. هذا حلّ بديل تاريخي للأجهزة غير التابعة لـ Zima. اختبر الإصدار الحالي أولًا واحتفظ بنسخة احتياطية من الإعدادات قبل إجراء تعديلات يدوية.