جهاز الحلقة

في أنظمة التشغيل الشبيهة بنظام Unix ، فإن جهاز الحلقة ، أو vnd (قرص العقدة الافتراضية)، أو lofi (واجهة ملف الحلقة) هو جهاز زائف يجعل ملف الكمبيوتر قابلاً للوصول إليه كجهاز كتلة .

قبل الاستخدام، يجب توصيل جهاز الحلقة بملف موجود في نظام الملفات . يوفر هذا الربط للمستخدم واجهة برمجة تطبيقات ( API ) تسمح باستخدام الملف بدلاً من ملف خاص بالكتل (انظر نظام ملفات الجهاز ). وبالتالي، إذا كان الملف يحتوي على نظام ملفات كامل، فيمكن حينها تحميله كما لو كان جهاز قرص.

تُستخدم هذه الملفات عادةً لإنشاء صور ISO لأقراص CD وصور الأقراص المرنة . يؤدي ربط ملف يحتوي على نظام ملفات عبر حلقة ربط كهذه إلى إمكانية الوصول إلى الملفات الموجودة داخل ذلك النظام، حيث تظهر في دليل نقطة الربط .

قد يسمح جهاز الحلقة بمعالجة البيانات أثناء عملية إعادة التوجيه. على سبيل المثال، قد يكون الجهاز نسخة غير مشفرة من ملف مشفر. في هذه الحالة، قد يكون الملف المرتبط بجهاز الحلقة جهازًا وهميًا آخر. يُعد هذا مفيدًا بشكل خاص عندما يحتوي هذا الجهاز على نظام ملفات مشفر. إذا كان ذلك مدعومًا، فإن جهاز الحلقة في هذه الحالة هو النسخة غير المشفرة من الملف المشفر الأصلي، وبالتالي يمكن تركيبه كما لو كان نظام ملفات عاديًا.

استخدامات تركيب الحلقة

بعد تحميل ملف يحتوي على نظام ملفات، يمكن الوصول إلى الملفات الموجودة في هذا النظام من خلال واجهة نظام الملفات المعتادة لنظام التشغيل، دون الحاجة إلى أي وظائف خاصة، مثل القراءة والكتابة إلى صور ISO، في التطبيقات.

تُستخدم تقنية التثبيت الحلقي في العديد من التطبيقات. فهي طريقة ملائمة لإدارة وتعديل صور نظام الملفات دون اتصال بالإنترنت، والتي تُستخدم لاحقًا في التشغيل العادي للنظام. ويشمل ذلك صور الأقراص المضغوطة أو أقراص DVD أو أنظمة التثبيت. كما يمكن استخدامها لتثبيت نظام تشغيل على نظام ملفات دون الحاجة إلى إعادة تقسيم القرص. وتوفر أيضًا فصلًا دائمًا للبيانات، على سبيل المثال، عند محاكاة وسائط التخزين القابلة للإزالة على قرص صلب أسرع وأكثر ملاءمة، أو عند تغليف نظام ملفات مشفر.

التوافر

توفر أنظمة التشغيل المختلفة الشبيهة بنظام يونكس وظائف جهاز الحلقة باستخدام أسماء مختلفة.

في نظام لينكس، تُشفّر أسماء الأجهزة في مدخلات جدول الرموز الخاصة ببرامج تشغيل الأجهزة المقابلة لها. يُطلق على الجهاز اسم "جهاز حلقة"، وعادةً ما تُسمى عُقد الجهاز /dev/loop0 ، /dev/loop1 ، وهكذا. يمكن إنشاؤها باستخدام makedev لدليل الجهاز الثابت، أو ديناميكيًا باستخدام إمكانيات نظام ملفات الجهاز ( udev )، أو مباشرةً باستخدام mknod . واجهة المستخدم لإدارة جهاز الحلقة هي losetup ، وهي جزء من حزمة util-linux .

يُشار أحيانًا إلى جهاز الحلقة خطأً باسم جهاز الارتداد ، ولكن هذا المصطلح مخصص لأجهزة الشبكات في أنظمة التشغيل. مفهوم جهاز الحلقة مختلف.

في الأنظمة المشتقة من BSD ، مثل NetBSD و OpenBSD ، يُطلق على جهاز الحلقة اسم "جهاز العقدة الافتراضية" أو "vnd"، ويقع عادةً في المسار /dev/vnd0 أو /dev/rvnd0 أو /dev/svnd0 ، وما إلى ذلك، في نظام الملفات. ويُستخدم البرنامج vnconfig لضبط الإعدادات.

اتبع نظام FreeBSD نفس اصطلاحات أنظمة BSD الأخرى حتى الإصدار الخامس، حيث تم دمج جهاز الحلقة في برنامج تشغيل قرص الذاكرة ("md"). يتم الآن إجراء التهيئة باستخدام الأداة المساعدة mdconfig . [ 1 ]

في نظامي التشغيل Solaris و OpenSolaris ، يُطلق على جهاز الحلقة اسم "واجهة ملف الاسترجاع" أو lofi، [ 2 ] ويقع في المسار /dev/lofi/1 ، إلخ. يحتوي نظام SunOS على برنامج التكوين lofiadm . يدعم lofi ضغط القراءة فقط وتشفير القراءة والكتابة. يتوفر أيضًا برنامج تشغيل من طرف ثالث يُسمى fbk ( محاكاة جهاز الكتلة للملفات )، لنظامي SunOS/Solaris منذ صيف عام 1988. [ 3 ]

يتضمن نظام UnixWare برنامج تشغيل الأجهزة القابل للتحميل ديناميكيًا، وهو برنامج mary (7)، والأداة المساعدة mary (1M). [ 4 ] يسمح برنامج التشغيل mary بالتعامل مع الملفات العادية كأجهزة. ويمكن الوصول إلى الملف العادي إما عبر جهاز كتلة، /dev/marry/regfile ، أو كجهاز حرفي، /dev/marry/rregfile . كما يدعم الأمر mary تشفير وفك تشفير الملف العادي.

يُطبّق نظام macOS آليةً أصليةً لتركيب الصور كجزءٍ من تجريد أجهزة الأقراص ذات الوصول العشوائي. يُؤدي الأمر `hdiutil attach -imagekey diskimage-class=CRawDiskImage -nomount <filename>` إلى ظهور جهاز الكتلة في /dev كجهاز قرص عادي وأجهزة فرعية للأقسام المُعترف بها. تُرسل عمليات القراءة والكتابة من وإلى هذه الأجهزة إلى عملية مساعدة في وضع المستخدم، والتي تقرأ البيانات من الملف أو تكتبها إليه. في واجهة المستخدم، يتم تنشيطها تلقائيًا عند فتح صورة القرص. يدعم macOS صور الأقراص (.dmg أو .iso) وأقراص CD-ROM وأقراص DVD بتنسيقاتٍ مُتعددة.

لم تكن خاصية تثبيت الأقراص الحلقية متاحة في أنظمة تشغيل مايكروسوفت ويندوز حتى ويندوز 7 ، حيث تم تطبيق هذه الخاصية بشكل أصلي، وهي متاحة عبر أداة diskpart . [ 5 ] [ 6 ] ومع ذلك، غالبًا ما تتم إضافة هذه الخاصية باستخدام تطبيقات خارجية مثل Daemon Tools و Alcohol 120% . كما يمكن استخدام أدوات مجانية من VMware (أداة تثبيت الأقراص) (مؤرشفة بتاريخ 22-08-2013 على Wayback Machine) و LTR Data (ImDisk) لتحقيق وظائف مماثلة. في نظامي التشغيل ويندوز XP وفيستا، من الممكن أيضًا استخدام ميزة القرص الصلب الافتراضي عن طريق إضافة أحد مكونات Microsoft Virtual Server 2005 R2. [ 7 ]

في نظام A2 ، الذي كان يُعرف سابقًا باسم AOS ثم Bluebottle، يتم إنشاء قرص افتراضي قائم على الملفات باستخدام VirtualDisks.Create . ويمكن تثبيت نظام ملفات في هذا "القرص" باستخدام VirtualDisks.Install .

مثال

يتطلب تثبيت ملف يحتوي على صورة قرص على دليل خطوتين:

  1. ربط الملف بعقدة جهاز الحلقة ،
  2. تركيب جهاز الحلقة في دليل نقطة التركيب

يمكن تنفيذ هاتين العمليتين إما باستخدام أمرين منفصلين، أو من خلال علامات خاصة لأمر mount. يمكن تنفيذ العملية الأولى بواسطة برامج مثل losetup [ 8 ] في لينكس ، أو lofiadm [ 9 ] في SunOS. على سبيل المثال، إذا example.imgكان ملفًا عاديًا يحتوي على نظام ملفات، /home/you/dirوكان دليل مستخدم لينكس، فيمكن للمستخدم الجذر (root) ربط الملف بالدليل عن طريق تنفيذ الأمرين التاليين:

losetup /dev/loop0 example.img قم بتثبيت /dev/loop0 /home/you/dir

يقوم الأمر الثاني بتثبيت الجهاز على الدليل /home/you/dir. والنتيجة الإجمالية لتنفيذ هذين الأمرين هي استخدام محتوى الملف كنظام ملفات متجذر عند نقطة التثبيت.

لتحديد جهاز حلقة متاح للاستخدام في الأوامر المذكورة أعلاه، يمكن للمستخدم المتميز (root) استخدام ما يلي:

losetup -f

عادةً ما تكون أداة التثبيت قادرة على التعامل مع الإجراء بأكمله:

mount -o loop example.img /home/you/dir

يمكن بعد ذلك فصل الجهاز باستخدام الأمر التالي:

فك تثبيت /home/you/dir # أو، بعد العثور على رقم الحلقة المرتبط باستخدام الأمر التالي على سبيل المثال: mount | grep "/home/you/dir" # أو losetup -a | grep example.img إلغاء تحميل /dev/loop<N>

على مستوى أدنى من واجهة برمجة التطبيقات ( API )، يتم ربط وفصل ملف بجهاز حلقة باستخدام استدعاء النظام ioctl على جهاز الحلقة.

انظر أيضاً

مراجع

  1. "mdconfig" . freebsd.org .
  2. "صفحات الدليل، القسم 7: واجهات الأجهزة والشبكات - صن مايكروسيستمز" . مؤرشف من الأصل بتاريخ 30 ديسمبر 2010. تم الاطلاع عليه بتاريخ 28 سبتمبر 2009 .
  3. "أدوات شيلي - تصفح /kernel/fbk على موقع SourceForge.net" . sourceforge.net .
  4. "استخدام الأمر `marry` لإنشاء صور نظام الملفات على الملفات" . uw714doc.sco.com .
  5. "GES على نظام التشغيل Windows 7" . docs.microsoft.com . 25 سبتمبر 2024.
  6. "ملف القرص الصلب الافتراضي VHD - الإنشاء والتشغيل عند بدء التشغيل - منتديات مساعدة ويندوز 7" . sevenforums.com .
  7. "ويندوز إكس بي/فيستا: كيفية إرفاق ملف VHD" . وصفات تقنية: كتاب مليء بالدروس التقنية . 12 نوفمبر 2008.
  8. "صفحة دليل يونكس: man 8 losetup" . man7.org .
  9. دليل أوامر إدارة نظام صن (lofiadm)، مؤرشف بتاريخ 2 مايو 2009 في أرشيف الإنترنت (Wayback Machine).