دليل Multipass VM Manager: دليل Ubuntu و Windows و macOS
التركيب متعدد المرات، والتهيئة، وال명령ات الأساسية
Multipass هو مدير و仼ات افتراضية خفيف يسهل إنشاء وإدارة مثيلات Ubuntu السحابية على Linux وWindows وmacOS.
سواء كنت مطورًا يحتاج إلى بيئات مفصولة، أو مهندس DevOps يختبر التكوينات، أو شخصًا يتعلم Linux، فإن Multipass يوفر واجهة سطر الأوامر البسيطة لإطلاق و仼ات Ubuntu بسرعة.
ما هو Multipass؟
Multipass هو الأداة الرسمية من Canonical لإنشاء وإدارة و仼ات Ubuntu الافتراضية. تم تصميمه ليكون بسيطًا وسريعًا ومتعدد المنصات، مما يجعله خيارًا ممتازًا للمطورين الذين يحتاجون إلى بيئات Ubuntu متسقة عبر أنظمة تشغيل مختلفة.
الميزات الرئيسية
- متعدد المنصات: يعمل على Linux وWindows وmacOS
- خفيف الوزن: تحميل أقل مقارنة بالو仼ات الافتراضية التقليدية
- دعم cloud-init: تكوين و仼ات باستخدام بيانات cloud-init
- دعم الملفات المُلتقطة: إنشاء واستعادة ملفات الملفات المُلتقطة
- تكامل الشبكة: توصيل سهل بين المضيف والو仼ات
- وصول SSH: إدارة مفاتيح SSH مدمجة
الأوامر الأكثر فائدة
# مرجع سريع
multipass launch --name dev --cpus 2 --memory 4G --disk 20G
multipass shell dev
multipass mount ./project dev:/home/ubuntu/project
multipass snapshot dev before-changes
multipass restore dev before-changes
multipass delete dev
multipass purge
التثبيت
Ubuntu/Linux
# التثبيت عبر snap (الموصى به)
sudo snap install multipass
# أو التثبيت عبر apt
sudo apt update
sudo apt install multipass
Windows
- قم بتنزيل مثيل Windows من multipass.run
- قم بتشغيل المثيل كمسؤول
- سيستخدم Multipass Hyper-V كافتراضي (Windows 10 Pro/Enterprise) أو يعود إلى VirtualBox
macOS
# التثبيت عبر Homebrew
brew install --cask multipass
# أو قم بتنزيله من multipass.run
الاستخدام الأساسي
إنشاء أول و仼ة
# إنشاء و仼ة بمواصفات الافتراضية
multipass launch
# إنشاء و仼ة باسم محدد
multipass launch --name my-vm
# إنشاء و仼ة بنسخة Ubuntu محددة
multipass launch 22.04 --name ubuntu-22
# إنشاء و仼ة بموارد مخصصة
multipass launch --name dev-vm --cpus 2 --memory 4G --disk 20G
إدارة و仼ات
# قائمة بكل و仼ات
multipass list
# تشغيل و仼ة
multipass start my-vm
# إيقاف و仼ة
multipass stop my-vm
# حذف و仼ة
multipass delete my-vm
multipass purge # حذف جميع الـ VMs المحذوفة
الوصول إلى و仼ات
# فتح نافذة في الـ VM
multipass shell my-vm
# تنفيذ أمر في الـ VM
multipass exec my-vm -- ls -la
# نسخ ملفات إلى/من الـ VM
multipass transfer file.txt my-vm:/home/ubuntu/
multipass transfer my-vm:/home/ubuntu/file.txt ./
بمجرد دخول و仼ة Multipass، ستكون لديك وصول إلى بيئة Ubuntu الكاملة. للعمل بكفاءة عبر سطر الأوامر، راجع ورقة مساعدة Bash الخاصة بنا للحصول على الأوامر والاختصارات الأساسية.
ورقة مساعدة Multipass
أوامر إدارة الـ VM
# إنشاء وإطلاق
multipass launch # إنشاء و仼ة افتراضية
multipass launch --name vm1 # إنشاء و仼ة مُسمى
multipass launch 20.04 --name old # نسخة Ubuntu محددة
# تخصيص الموارد
multipass launch --cpus 2 --memory 4G --disk 20G --name dev
# تحكم في الـ VM
multipass start vm1 # تشغيل الـ VM
multipass stop vm1 # إيقاف الـ VM
multipass restart vm1 # إعادة تشغيل الـ VM
multipass suspend vm1 # إيقاف مؤقت للـ VM
# معلومات
multipass list # قائمة بكل الـ VMs
multipass info vm1 # تفاصيل الـ VM
multipass get local.privileged-mounts # التحقق من إعدادات التثبيت
عمليات الملفات
# نقل الملفات
multipass transfer file.txt vm1:/home/ubuntu/
multipass transfer vm1:/home/ubuntu/file.txt ./
multipass transfer --recursive ./folder vm1:/home/ubuntu/
# تثبيت دليل المضيف
multipass mount /host/path vm1:/vm/path
multipass umount vm1:/vm/path
تكوين الشبكة
# معلومات الشبكة
multipass info vm1 | grep IPv4
# توجيه المنافذ (Windows/macOS)
multipass set local.port-forwarding=true
multipass restart vm1
الملفات المُلتقطة والنسخ الاحتياطية
# إنشاء ملف مُلتقط
multipass snapshot vm1 snapshot1
# استعادة ملف مُلتقط
multipass restore vm1 snapshot1
# قائمة بالملفات المُلتقطة
multipass list --all
التكوين المتقدم
تكامل cloud-init
أنشئ ملفًا cloud-config.yaml
:
#cloud-config
package_update: true
package_upgrade: true
packages:
- docker.io
- git
- curl
users:
- name: developer
sudo: ALL=(ALL) NOPASSWD:ALL
shell: /bin/bash
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC...
runcmd:
- systemctl enable docker
- systemctl start docker
إطلاق و仼ة مع cloud-init:
multipass launch --cloud-init cloud-config.yaml --name configured-vm
الصور المخصصة
# قائمة بالصور المتاحة
multipass find
# استخدام صورة محددة
multipass launch daily:22.04 --name daily-vm
التكامل مع أدوات التطوير
تكامل Docker يعمل Multipass بشكل ممتاز مع Docker لتطوير الحاويات. يمكنك تشغيل Docker داخل و仼ات Multipass أو استخدام Multipass لإنشاء بيئات مفصولة لـ تطوير Docker.
بيئات التطوير لتطوير Python، يمكنك إعداد بيئات مفصولة مشابهة لـ بيئات Python الافتراضية ولكن مع عزل كامل للنظام. للمستخدمين الذين يستخدمون VS Code، يمكن استخدام و仼ات Multipass كبيئات تطوير عن بعد، مكملة لـ الحاويات في VS Code.
تطبيقات الذاتية المُستضافة Multipass مثالي لاختبار تطبيقات مُستضافة مثل Gitea أو Ollama في بيئات مفصولة. لتطوير الحاويات، يمكنك تشغيل مجموعات Kubernetes داخل و仼ات Multipass واستخدام ورقة مساعدة Kubernetes الخاصة بنا لإدارة أعبائك الحاويات.
حل المشكلات
المشاكل الشائعة
# التحقق من حالة Multipass
multipass get local.driver
# إعادة تعيين Multipass
multipass purge
sudo snap restart multipass
# التحقق من سجلات الـ VM
multipass logs vm1
تحسين الأداء
# تمكين التثبيت المُخول للحصول على أداء أفضل
multipass set local.privileged-mounts=true
# تكوين حدود الذاكرة
multipass set local.memory=8G
مقارنة مع البديل
Multipass مقابل Docker
- Multipass: و仼ات كاملة، أفضل لاختبار مستوى النظام، أكثر استهلاكًا للموارد
- Docker: حاويات، أكثر كفاءة، أفضل لنشر التطبيقات
Multipass مقابل VirtualBox/VMware
- Multipass: مركّز على سطر الأوامر، دعم cloud-init، سهولة التلقائية
- VirtualBox/VMware: مبني على واجهة الرسوم، خيارات تكوين أكثر، أفضل للاستخدام على سطح المكتب
Multipass مقابل Proxmox
- Multipass: خفيف، تركيز على و仼ة واحدة، مثالي لبيئات التطوير
- Proxmox: مجموعة كاملة من التوظيف، أفضل لبيئات الإنتاج، ميزات متقدمة مثل التجميع والتوافر العالي
Multipass مقابل Vagrant
- Multipass: Ubuntu-مُركّز، إعداد أبسط، أفضل لسيناريوهات و仼ة واحدة
- Vagrant: دعم متعدد المزودين، تكوين معقد، أفضل لسيناريوهات و仼ات متعددة
الممارسات المثلى
- إدارة الموارد: تخصيص وحدات المعالجة المركزية والذاكرة المناسبة بناءً على عبء العمل
- استراتيجية الملفات المُلتقطة: إنشاء ملفات مُلتقطة قبل التغييرات الكبيرة
- الأمان الشبكي: استخدام قواعد الحماية المناسبة للخدمات المكشوفة
- استراتيجية النسخ الاحتياطية: نسخ بيانات الـ VM المهمة بشكل دوري
- التنظيف: حذف الـ VM غير المستخدمة لتحرير مساحة القرص
متى تستخدم Multipass
اختر Multipass عندما:
- تحتاج إلى و仼ات Ubuntu الكاملة للتطوير
- ترغب في إدارة و仼ات سهلة عبر سطر الأوامر
- تعمل عبر أنظمة تشغيل مختلفة
- تحتاج إلى دعم تكوين cloud-init
- ترغب في اختبار تطبيقات مُستضافة بشكل منفصل
فكر في البديل عندما:
- تحتاج إلى أداء قصوى (استخدم حاويات Docker)
- تحتاج إلى تكوينات و仼ات معقدة (استخدم Vagrant)
- تحتاج إلى إدارة مبنية على واجهة الرسوم (استخدم VirtualBox/VMware)
يتفوق Multipass في توفير بيئات تطوير Ubuntu بسيطة ومتسقة عبر المنصات، مما يجعله خيارًا ممتازًا للمطورين الذين يحتاجون إلى إدارة و仼ات موثوقة دون تعقيد أدوات التوظيف التقليدية.