تكوين مجلدات VirtualBox المشتركة لنظام Linux الضيف

تعليمات خطوة بخطوة لإعداد مجلدات مشاركة في VirtualBox

Page content

لـتهيئة مجلدات VirtualBox المشتركة في نظام التشغيل الضيف Linux Guest، اتبع الخطوات التالية:

نافذة تهيئة مجلدات VirtualBox المشتركة

1. تثبيت VirtualBox Guest Additions

يجب تثبيت Guest Additions في نظام التشغيل الضيف لتفعيل دعم المجلدات المشتركة:

  • ابدأ بالنظام الضيف.
  • من قائمة VirtualBox، اختر:
الأدوات > إدراج صورة CD لـ Guest Additions

截图 لإدراج صورة CD لـ Guest Additions

  • افتح نافذة الطرفية في النظام الضيف، وقم بتثبيت CD إذا لزم الأمر، ثم قم بتشغيل المثبت:
sudo sh /media/$USER/VBox_GAs_*/VBoxLinuxAdditions.run
  • أعد تشغيل النظام الضيف بعد التثبيت.

  • أضف مستخدمك إلى مجموعة vboxsf في النظام الضيف (هذا ضروري للحصول على إذن الوصول):

sudo usermod -aG vboxsf $(whoami)

` يجب إعادة التشغيل أو تسجيل الخروج/الدخول لكي تؤخذ التغييرات في المجموعة في الاعتبار.

2. تهيئة مجلد مشترك في VirtualBox Manager على المضيف

  • انقر بزر الماوس الأيمن على جهازك الافتراضي، وانتقل إلى:
الإعدادات > المجلدات المشتركة
  • انقر على زر إضافة مجلد مشترك.
  • حدد ما يلي:
    • مسار المجلد: المجلد على نظامك المضيف لجعله مشتركًا.
    • اسم المجلد: الاسم المرجعية في النظام الضيف (مثلاً: share).
    • قم بتفعيل التركيب التلقائي إذا أردت تركيبه تلقائيًا عند التشغيل.
    • قم بتفعيل الاستمرارية إذا أردت جعله مستمرًا.

3. تركيب المجلد المشترك في النظام الضيف Linux

إذا تم تفعيل التركيب التلقائي، فسيقوم VirtualBox بتركيب المجلد المشترك تلقائيًا، عادةً في /media/sf_ (مثلاً: /media/sf_share) مع إذن الوصول للمجموعة vboxsf.

إذا أردت تركيبه يدويًا أو في موقع مخصص:

  • أنشئ نقطة تركيب:
mkdir ~/host_share
  • قم بتركيبه باستخدام:
sudo mount -t vboxsf  ~/host_share

تركيب المجلد المشترك تلقائيًا عند التشغيل

في نظام التشغيل الضيف Linux، يُنصح بإضافة دخل لـ المجلد المشترك في ملف /etc/fstab الخاص بالنظام الضيف. هذا يضمن تركيب المجلد كل مرة يبدأ فيها النظام التشغيل.

افتح /etc/fstab باستخدام محرر النصوص كجذر:

sudo nano /etc/fstab

أضف سطرًا مثل هذا، مع استبدال sharename و /home/youruser/host_share بالمسار المرغوب (مثلاً: /mnt/shared):

sharename   /home/youruser/host_share   vboxsf  defaults  0   0

الـ sharename هو كما تم تعريفه في إعدادات المجلدات المشتركة في VirtualBox.

أنشئ نقطة التركيب (إذا لم تكن موجودة):

mkdir -p /home/youruser/host_share

قم بتركيب جميع أنظمة الملفات أو أعد التشغيل لاختبار:

sudo mount -a

تحقق من أن مجلدك المشترك الآن متاح.

الوصول، الإذونات والتحقيق في الأخطاء

  • سيكون المجلد المشترك مملوكًا لـ root:vboxsf داخل النظام الضيف.
  • تأكد من أن مستخدمك الضيف موجود في مجموعة vboxsf (id $USER للتحقق).
  • إذا واجهت مشاكل في الإذونات، تأكد من أنك موجود في مجموعة vboxsf وأنك تخرج/تُدخل (أو تعيد التشغيل) بعد إضافتك إلى المجموعة.
  • إذا كنت بحاجة إلى متطلبات معقدة أو تركيب ديناميكي/شرط، يمكنك أيضًا استخدام وحدة systemd automount، ولكن /etc/fstab هو الأسهل والأقوى لتركيب مجلدات VirtualBox المشتركة على Linux.

هذا النهج سيضمن أن مجلد VirtualBox المشترك يتم تركيبه تلقائيًا في كل مرة يبدأ فيها النظام التشغيل.

لا يمكن لـ VirtualBox العمل في وضع VMX الجذر.

إذا حصلت على الخطأ التالي الذي يوجه اللوم إلى وحدة KVM في النواة:

VBoxManage: خطأ:
لا يمكن لـ VirtualBox العمل في وضع VMX الجذر.
يرجى تعطيل وحدة KVM في النواة، إعادة تجميع نواةك و إعادة التشغيل
(ERR_VMX_IN_VMX_ROOT_MODE)

VBoxManage: خطأ:
التفاصيل:
كود NS_ERROR_FAILURE (0x80004005),
المكون ConsoleWrap، الواجهة IConsole

افعل ما يلي على مسؤوليتك الخاصة. يمكنك محاولة التغلب على هذا الخطأ في Ubuntu 24.04 عن طريق تعطيله مؤقتًا، فقط تأكد من أن لا أحد يستخدم kvm في الوقت الحالي:

lsmod | grep kvm
lsof | grep kvm
sudo modprobe -r kvm_intel 

يمكنك أيضًا محاولة تعطيل وإعادة تجميع إذا أردت ذلك، وإذا كنت تستخدم VirtualBox كثيرًا.

تحقق من أن kvm مُحمّل (يجب أن يكون الحال كذلك عند الحصول على خطأ VirtualBox):

lsmod | grep kvm

للمراجعة إذا كان kvm قيد الاستخدام حاليًا:

lsof | grep kvm

إذا لم يكن هناك أي إخراج، فإن kvm غير قيد الاستخدام ويمكن إزالة وحدة النواة بأمان:

sudo rmmod kvm_intel # أو kvm_amd على معالجات AMD
sudo rmmod kvm

هذا سيقوم فقط بإزالة وحدة النواة لجلسة واحدة. لتعطيل kvm عند التشغيل، يجب أن تضيفه إلى القائمة السوداء وتحديث initramfs. أضف هذا إلى /etc/modprobe.d/blacklist-kvm.conf:

blacklist kvm
blacklist kvm_intel   # أو kvm_amd

تحديث initramfs وإعادة التشغيل:

sudo update-initramfs -u
sudo reboot

روابط مفيدة