libguestfs
libguestfs هي مكتبة C ومجموعة أدوات للوصول إلى صور الأقراص الافتراضية وتعديلها، وهي تُستخدم في محاكاة الأنظمة الأساسية . يمكن استخدام هذه الأدوات لعرض وتحرير الأجهزة الافتراضية (VMs) التي تُديرها libvirt والملفات الموجودة داخلها، وكتابة البرامج النصية لتغييرات الأجهزة الافتراضية، وإنشاء أجهزة افتراضية، وغير ذلك الكثير. [ 3 ] وقد صُممت لتجنب المشكلات الأمنية التي تحدث عند تحميل صور الأقراص الافتراضية مباشرةً على النظام المضيف. [ 4 ]
يمكن لـ libguestfs الوصول إلى جميع أنواع أنظمة الملفات تقريبًا، بما في ذلك: جميع أنواع أنظمة ملفات لينكس المعروفة ( ext2 / 3 / 4 ، XFS ، btrfs ، إلخ)، وأي نظام ملفات ويندوز ( VFAT و NTFS )، وأي أنظمة ملفات ماك أو إس إكس وبي إس دي، وإدارة وحدات التخزين LVM2 ، وأقسام الأقراص MBR و GPT ، والأقراص الخام، و qcow2 ، وVirtualBox VDI ، وVMWare VMDK ، وHyper-V VHD /VHDX، على الملفات، والأجهزة المحلية، وأقراص ISO للأقراص المدمجة وأقراص DVD، وبطاقات SD، أو عن بُعد عبر FTP، وHTTP، وSSH ، و iSCSI ، وNBD ، و GlusterFS ، وCeph ، وSheepdog، وغيرها الكثير. لا يتطلب libguestfs صلاحيات الجذر.
يمكن ربط واجهة برمجة التطبيقات C الخاصة بـ libguestfs ببرامج C و C++ . وهي تحتوي على روابط رسمية للغات Perl و Python و Ruby و Rust و Java و OCaml و PHP و Haskell و Erlang و Lua و Golang و C# . [ 3 ]
تأتي مكتبة libguestfs مزودة ببرامج سطر أوامر تتيح استخدامها من خلال نصوص برمجية أو عبر سطر الأوامر. [ 3 ] وتحتوي على "صدفتين" خاصتين بها للاستخدام التفاعلي، وهما guestfish للعمليات العامة و virt-rescue لإصلاح الأجهزة الافتراضية غير القابلة للتشغيل. وتتوفر أدوات متعددة مصممة على غرار أوامر يونكس العادية ، مثل virt-cat و virt-tar . [ 5 ] ومن خلال وحدة FUSE ، يمكن تثبيت أنظمة ملفات الضيف على المضيف باستخدام الأمر guestmount . [ 3 ]
يعمل نظام libguestfs جزئيًا عن طريق تشغيل جهاز (توزيعة لينكس مصغرة) داخل آلة افتراضية. [ 6 ] ويمكن تحقيق ذلك من خلال QEMU أو libvirt . ويمكن لهذين النظامين بدورهما استخدام TCG (محاكاة برمجية) أو KVM (تسريع الأجهزة). [ 7 ]
بناء
يُعدّ libguestfs جزءًا واحدًا فقط من مشروع libguestfs الأكبر. كلٌّ مما يلي عبارة عن أرشيف شفرة مصدرية منفصل (tarball): [ 8 ]
- libguestfs، المكتبة.
- guestfs-tools، وهي برامج سطر الأوامر التي تستخدم libguestfs.
- hivex، مكتبة تحرير سجل ويندوز (مع برامج سطر الأوامر).
- libnbd، مكتبة مساحة المستخدم التي توفر عميل جهاز كتلة الشبكة .
- nbdkit، برنامج لخادم جهاز كتلة الشبكة.
- سوبرمين، أدوات لإنشاء "أجهزة".
- virt-p2v، أداة لتحويل جهاز فعلي إلى مثيل KVM.
- virt-v2v، أداة لتحويل مثيل برنامج إدارة الأجهزة الافتراضية غير KVM إلى مثيل KVM.
بعض هذه المكونات (المتعلقة بـ nbd و hivex) أنشأها مطورو libguestfs بشكل منفصل لأنها ضرورية لتنفيذ بعض الميزات في libguestfs، ولكن يمكن استخدامها أيضًا بشكل مستقل عن وظائف معالجة الصور. أما المكونات الأخرى فهي أدوات مبنية على libguestfs ولكنها تتجاوز نطاقها الأصلي.
هايفكس
Hivex هي مكتبة C من تطوير المؤلفين، مُخصصة لقراءة وكتابة ملفات سجل ويندوز (Hive). تأتي المكتبة مزودة بعدد من برامج سطر الأوامر لمعالجة هذه الملفات. لا تتعامل Hivex نفسها مع صور الأجهزة الافتراضية. لتحرير الملفات في صور الأجهزة الافتراضية، توفر مكتبة libguestfs برنامجًا يُسمى "virt-win-reg". [ 9 ]
انظر أيضاً
مراجع
- ↑ "الإصدارات التاريخية لـ libguestfs" .
- ↑ "libguestfs 1.58.1 stable" .
- 1 2 3 4 "الوصف من الصفحة الرئيسية" .
- ↑ "تذكير لماذا يجب عليك عدم تثبيت صور أقراص الضيف على نظام التشغيل المضيف" .
- ↑ "الميزات في فيدورا 12" .
- ↑ "صفحة الدليل guestfs-performance(1): هندسة libguestfs لتحقيق أفضل أداء" . libguestfs.org .
- ↑ "صفحة الدليل guestfs(3)، الأقسام "الخلفية" و "إعدادات الخلفية"" .
- ↑ "فهرس /" . download.libguestfs.org . تم الاسترجاع في 2025-09-07 .
- ↑ "hivex - مكتبة استخراج "hive" من سجل ويندوز" . libguestfs.org . تم الاطلاع عليه بتاريخ 2025-09-07 .
روابط خارجية
- واجهات برمجة التطبيقات
- برنامج محاكاة افتراضية مجاني
- الآلات الافتراضية
- برامج المحاكاة الافتراضية لنظام التشغيل لينكس
