شرح صفوف ومحتوى الفقرة
إدارة شجرة اللقطات متعددة الفروع وآلية الدمج عند حذف لقطة قديمة
لا تقتصر اللقطات في برنامج VirtualBox على مسار خطي واحد، بل تُنظم في هيكل هرمي يُسمى شجرة اللقطات (Snapshot Tree). فكلما عدت بالزمن إلى لقطة أقدم — مثل لقطة الأساس النظيفة — ثم شغلت الآلة والتقطت نقطة جديدة، ينشئ البرنامج فرعاً موازياً جديداً دون أن يمسح فرعك التجريبي السابق.
يساعدك فهم قواعد التفرع والحذف على إدارة تجاربك المتوازية وحماية مساحة قرصك الصلب بكفاءة:
- التجريب متعدد المسارات من نقطة أصل واحدة: يمكنك الانطلاق من لقطة نظام أساسية واحدة لبناء فرع أول مهيأ بخادم
Apache + MySQL، ثم العودة لنقطة الأصل وبناء فرع ثانٍ مهيأ بخادمNginx + PostgreSQL، والتنقل بين البيئتين خلال ثوانٍ مع استهلاك مساحة الفروقات فقط لكل فرع. - الفرق الدقيق بين الحالة الجارية والحالة المعدلة: تُمثل عقدة
Current Stateفي نهاية الفرع النشط واقع الآلة في اللحظة الراهنة. وبمجرد تشغيل الآلة أو تعديل أي إعداد بعد أخذ اللقطة، يتحول اسمها تلقائياً إلىCurrent State (changed)لتنبيهك بوجود تعديلات جديدة غير محفوظة في لقطة مستقلة. - ماذا يحدث تقنياً عند حذف لقطة قديمة من وسط الشجرة؟ يخشى كثير من المبتدئين أن يؤدي النقر على Delete لحذف لقطة وسطى إلى ضياع التعديلات الأحدث منها. في الحقيقة، لا يؤثر حذف اللقطة إطلاقاً على بيانات الحالة الجارية؛ بل ينفذ البرنامج عملية دمج تلقائي تنقل القطاعات المعدلة من اللقطة المحذوفة إلى القرص الفرعي التالي لها ثم تحرر المساحة المكررة على القرص المضيف.
Shell
# 1. Inspect the full hierarchical snapshot tree and UUIDs
VBoxManage snapshot "Ubuntu-Web-Lab" list --details
# 2. Delete an obsolete intermediate snapshot and merge its delta
VBoxManage snapshot "Ubuntu-Web-Lab" delete "Pre-Nginx-Upgrade"