اینترنت پنجره ها اندروید
بسط دادن

سازماندهی سوئیچینگ بین هایپروایزر VirtualBox و Hyper-V. نحوه افزایش سرعت ماشین‌های مجازی VMWare، Oracle VirtualBox و Microsoft Hyper-V بهبود عملکرد داخل ماشین مجازی


سلام.

1. برای شروع انتقال، ابتدا هارد دیسک .vdi را از VirtualBox به درایو vhd Hyper-V تبدیل می کنیم.

در دایرکتوری VirtualBox دستور تبدیل تصویر .vdi را به raw اجرا می کنیم
دستورات داخلی VBoxManage.exe converttoraw d:\project\project.vdi d:\project.raw

WinImage را جستجو و نصب می کنیم، آن را راه اندازی می کنیم، Disk -> Convert Virtual Hard Disk Image را انتخاب می کنیم.
نوع فایل *.*، تصویر خام .را باز کنید، به عنوان image.vhd در حال گسترش پویا ذخیره کنید

2. ما با استفاده از کارت شبکه Legacy یک ماشین مجازی جدید در Hyper-V ایجاد می کنیم، زیرا کارت شبکه مصنوعی تا زمانی که سرویس های یکپارچه سازی لینوکس نصب نشود کار نخواهد کرد.

3. VirtualBoxAdditions را از CentOS حذف کنید
در پوشه /etc/init.d/
تیم
chkconfig --del "vboxadd"
chkconfig --del "vboxadd-service"
chkconfig --del "vboxadd-x11"

سپس این فایل ها را از پوشه /etc/init.d حذف می کنیم (vboxadd، vboxadd-service، vboxadd-x11)

4. به تنظیمات Hyper-V بروید، یک مک آدرس ثابت برای کارت شبکه تنظیم کنید
سپس در لینوکس مسیر را دنبال می کنیم
/etc/sysconfig/network-scripts/
فایل ifcfg-eth0 (یا ifcfg-seth0) را ویرایش کنید و بر اساس قیاس بنویسید:
DEVICE=eth0
BOOTPROTO=استاتیک
BROADCAST=10.10.10.255
HWADDR=00:01:02:03:04 (برگرفته از تنظیمات hyper-v)
IPADDR=10.10.10.10
NETMASK=255.255.255.0
NETWORK=10.10.10.0
ONBOOT=بله

یا حتی ساده تر آن را انجام می دهیم، آن را در کنسول اجرا می کنیم system-config-network-tuiو eth0 (آداپتور فیزیکی) یا seth0 (آداپتور مصنوعی) را پیکربندی کنید.
لینوکس را راه اندازی مجدد کنید.

5. CentOS را به روز کنید، در کنسول تایپ کنید:
به روز رسانی yum
yum group "ابزارهای توسعه" را نصب کنید
راه اندازی مجدد

6. Linux Integration Services v2.1 را برای Windows Server 2008 Hyper-V R2 دانلود کنید، iso را از بسته بندی خارج کرده و در یک ماشین مجازی در پنجره hyper-v نصب کنید.

خدمات یکپارچه سازی لینوکس نصب شده به ما می دهد:
- پشتیبانی از درایور برای دستگاه های مصنوعی - آداپتور اترنت مصنوعی، سریعتر از erhernet قدیمی
- پشتیبانی از راه اندازی Fastpath برای Hyper-V - بوت سریعتر ماشین مجازی
- Timesync - همگام سازی زمان با ماشین میزبان
- خاموش کردن یکپارچه - امکان خاموش کردن لینوکس از اسنپ این Hyper-v
- پشتیبانی از چند پردازش متقارن (SMP) - پشتیبانی از حداکثر 4 پردازنده
- ضربان قلب - توانایی نظارت بر وضعیت سیستم عامل مهمان
- منبع زمان قابل اتصال

از موارد تحقق نیافته:
- خدمات یکپارچه سازی: تبادل داده، پشتیبان گیری عکس فوری حجم
- شبکه: فریم های جامبو و TCP Offload
- ذخیره سازی: Hot Add/Remove (VHD و Passthrough Disk)

7. Mount Linux Integration Services v2.1 ISO:
mkdir -p /mnt/cdrom
mount /dev/cdrom /mnt/cdrom

فایل ها را در هارد دیسک خود کپی کنید:
mkdir /opt/linux_ic
cp -R /mnt/cdrom/* /opt/linux_ic
umount/mnt/cdrom

نصب سرویس های یکپارچه سازی لینوکس،
سی دی /opt/linux_ic
ساختن
را نصب کنید

تا زمانی که دوباره راه اندازی کنیم. اگر RedHat5.5 دارید (و ما CentOS 5.5 داریم)، ​​پس باید به آن بروید
/boot/grub/grub.conf فایل را تغییر دهید hda=noprobe hdb=noprobeبر ide0=noprobe ide1=noprobe. اگر گراب را تعمیر نکنیم، بعد از راه‌اندازی مجدد کرنل دچار وحشت می‌شویم:

ما در کنسول راه اندازی مجدد می کنیم و از عملکرد صحیح CentOS 5.5 تحت Hyper-V لذت می بریم.

PS:
سنگ های زیر آب:
1. در ابتدا نمی‌توانستم بفهمم که چرا لینوکس هنگام بارگذاری از hyper-v به کارت شبکه متصل نمی‌شود، گوگل پیشنهاد کرد که ابتدا باید از یک کارت شبکه قدیمی استفاده کنم.
2. طبق دستورالعمل‌هایی که با Linux Integration Services v2.1 ارائه شد، هیچ چیز کار نمی‌کرد تا زمانی که من دستور جادویی yum groupinstall «ابزارهای توسعه» را در گوگل جستجو کردم، بسته فاقد این ابزارهای توسعه‌دهنده و در عین حال هسته تازه‌تر بود.
3. بالاخره LIS نصب شد، راه اندازی مجدد شاد و... وحشت هسته. مطالعه دقیق اسناد نشان داد که گراب نیاز به ویرایش دارد.

VirtualBox و Hyper-V ابزارهای مجازی سازی بسیار قدرتمندی هستند. هر کدام از آنها مزایا و معایب خود را دارند و گاهی اوقات باید بتوانید از هر دو هایپروایزر در یک رایانه استفاده کنید. این واقعی است، با وجود این واقعیت که وقتی Hyper-V فعال می شود، راه اندازی ماشین مجازی VirtualBox غیرممکن است. فقط با این خطا تمام می شود.

با این حال، با یک ترفند می توانید آنها را مجبور به همزیستی کنید. برای این کار باید یک فایل bat با محتوای زیر ایجاد کنید:

ام اس داس

@echo خاموش cls echo. echo گزینه های Hyper-V Hypervisor را هنگام بوت کردن ویندوز انتخاب کنید. پس از انتخاب، رایانه به طور خودکار راه اندازی مجدد می شود. اکو echo 1. Hypervisor را فعال کنید. echo 2. هایپروایزر را خاموش کنید. echo 3. خروج. اکو set /p Choice= انتخاب شما: اگر "%choice%"=="1" باید 1 شود اگر "%choice%"=="2" باید 2 شود اگر "%choice%"=="3" باید 3 اگر نه " %choice%"=="" echo "%choice%" یک مورد نامعتبر است echo:1 cls echo روشن کردن هایپروایزر... bcdedit /set hypervisorlaunchtype auto shutdown -r -f -t 10 -c exit:2 cls echo خاموش کردن هایپروایزر... bcdedit /set hypervisorlaunchtype off shutdown -r -f -t 10 -c "کامپیوتر در 10 ثانیه راه اندازی مجدد می شود." خروج: 3 خروج

@echo خاموش

پژواک .

اکو گزینه های Hyper-V Hypervisor را هنگام بوت کردن ویندوز انتخاب کنید. پس از انتخاب، رایانه به طور خودکار راه اندازی مجدد می شود.

پژواک .

اکو 1. Hypervisor را فعال کنید.

اکو 2. هایپروایزر را خاموش کنید.

echo 3. خروج.

پژواک .

set/pchoice = انتخاب شما:

اگر "%choice%" == "1" باید 1 شود

اگر "%choice%" == "2" باید 2 شود

if "%choice%" == "3" باید 3 شود

اگر نه "%choice%" == "" echo "%choice%" یک مورد نامعتبر است

اکو

اکو فعال کردن هایپروایزر...

bcdedit /set hypervisorlaunchtypeauto

خاموش شدن -r -f -t 10 -c "کامپیوتر 10 ثانیه دیگر راه اندازی مجدد می شود."

خروج

اکو خاموش کردن هایپروایزر...

bcdedit /set hypervisorlaunchtypeoff

خاموش شدن -r -f -t 10 -c "کامپیوتر 10 ثانیه دیگر راه اندازی مجدد می شود."

خروج

خروج

این فایل دسته ای بسیار ساده کار می کند. با کمک آن، می توانید به طور موقت هایپروایزر Hyper-V را بدون لمس خود Hyper-V، فایل ها و تنظیمات آن غیرفعال یا فعال کنید. ماشین‌های مجازی ایجاد شده در Hyper-V نیز سالم و سالم خواهند ماند. در صورت لزوم، باید فایل bat را که ما ایجاد کردیم اجرا کنید از طرف مدیر، گزینه مورد نظر را انتخاب کنید و کامپیوتر شما به طور خودکار ریستارت می شود. متأسفانه، بدون راه‌اندازی مجدد نمی‌توانید این کار را انجام دهید، اما باز هم آسان‌تر از پاک کردن و نصب مجدد Hyper-V در هر بار است. یک، دو، و همانطور که می بینید، VirtualBox حتی با Hyper-V نیز عالی کار می کند.

در صورت لزوم، به سادگی Hyper-V Hyper-V را روشن کرده و دوباره از آن استفاده کنید. فعال یا غیرفعال کردن برای یک بار انجام کافی است؛ در راه اندازی های بعدی، ویندوز از تنظیمات نصب شده قبلی استفاده می کند.

4289

به روز VirtualBoxمحبوب ترین پلتفرم مجازی سازی رایگان است، اما حتی طرفداران آن ممکن است در مقطعی بخواهند ماشین های مجازی دیگر، به ویژه پلت فرم داخلی را امتحان کنند. Hyper-V. فقط کاربری که آن را روشن می کند خیلی زود متوجه می شود که ماشین های مجازی روی مورد علاقه او هستند VirtualBoxدیگر راه اندازی نمی شود و پلتفرم خطا می دهد "نمی توان یک جلسه برای ماشین مجازی باز کرد" با کد E_FAIL (0x80004005) .


خطا ممکن است ناشی از نوشتن وضعیت ناموفق باشد VMبرای تشکیل پرونده VBOX، به روز رسانی تجمعی کج خود ویندوز، غیرفعال کردن مجازی سازی در BIOS، اما در این مورد دلیل در تعارض است VirtualBoxبا Hyper-V. شما می توانید با حذف اجزاء، عملکرد عادی Virtualbox را بازیابی کنید Hyper-Vاز سیستم، اما اگر هنوز به ماشین های نصب شده روی این پلت فرم نیاز دارید، چه باید کرد؟ راه اندازی VMروی یک کامپیوتر با فعال VirtualBoxو Hyper-Vاین امکان پذیر نیست، اما می توانید به طور موقت مؤلفه مجازی سازی استاندارد را بدون حذف آن غیرفعال کنید.

این کار به سادگی انجام می شود. یک خط فرمان یا کنسول را به عنوان مدیر اجرا کنید و دستور را اجرا کنید bcdedit /set hypervisorlaunchtype خاموش و سپس کامپیوتر خود را مجددا راه اندازی کنید.

ماشین های مجازی VirtualBoxبدون خطا راه اندازی می شود. برگشتن Hyper-Vدر حالت کار، دستور را اجرا کنید bcdedit /set hypervisorlaunchtype auto و دوباره راه اندازی مجدد

برای راحتی، می‌توانید فایل‌های دسته‌ای را با دستورات ایجاد کنید و آنها را روی دسکتاپ خود قرار دهید.

علاوه بر این، شما می توانید یک حالت عملکرد سیستم را اضافه کنید Hyper-Vو بدون آن به منوی بوت.

برای انجام این کار، در یک خط فرمان در حال اجرا با حقوق بالا (نه پاورشل)دستور را اجرا کنید bcdedit /copy (current) /d "Hyper-V غیرفعال" . با این کار یک آیتم جدید در منوی بوت ایجاد می شود و شناسه آن در کنسول نمایش داده می شود (رشته 32 کاراکتری) . آن را در کلیپ بورد کپی کنید، عنصر را با آن جایگزین کنید GUIDدر یک تیم bcdedit /set (GUID) hypervisorlaunchtype غیرفعال است و دستور را اجرا کنید.

نصب مجدد سیستم عامل یا تغییر یک دستگاه کامپیوتری به معنای پایان کار با سیستم عامل های مهمان نصب شده در برنامه نیست. درست است، یک استثنا ممکن است زمانی باشد که فایل‌های هارد درایو ماشین مجازی در درایو سیستم رایانه قرار دارند و خود سیستم پس از یک شکست بحرانی قابل بازیابی نیست. برای ادامه کار با سیستم‌عامل‌های مهمان موجود در حالی که وضعیت آن‌ها حفظ می‌شود، اما در یک ویندوز نصب‌شده مجدد یا روی رایانه دیگری، برنامه VirtualBox ابزاری برای صادرات پیکربندی ماشین‌های مجازی موجود برای وارد کردن آن در آینده دارد. گزینه دیگری برای ادامه کار با سیستم‌عامل‌های مهمان موجود، اضافه کردن ماشین‌های مجازی جدید بر اساس فایل‌های موجود در هارد دیسک‌هایشان است. در زیر تمام این فرآیندها را در نظر خواهیم گرفت.

1. فرمت فایل صادرات ماشین مجازی جهانی

پیکربندی یک ماشین مجازی VirtualBox موجود به فایل صادر می شود " تخم مرغ" فایل ".ova" (Open Virtual Appliance) یک فایل ذخیره اطلاعات ماشین مجازی جهانی است که می تواند در برنامه های مختلف برای مجازی سازی سیستم عامل ها استفاده شود. این ، . سپس ماشین مجازی صادر شده به این فایل می تواند توسط VirtualBox، VMware Workstation یا Microsoft Hyper-V در سیستم های مهمان پشتیبانی شده توسط این برنامه ها وارد شود.

بیایید نگاهی دقیق تر به فرآیند صادرات و وارد کردن پیکربندی ماشین مجازی VirtualBox در سیستم اصلی ویندوز بیندازیم.

2. یک ماشین مجازی را صادر کنید

در پنجره VirtualBox، یک ماشین مجازی خاص را برای صادرات انتخاب کنید، روی منو کلیک کنید. فایل"و انتخاب کنید" پیکربندی ها را صادر کنید».

در پنجره بعدی، روی “ بعد».

صادر کردن پیکربندی تنها زمانی امکان‌پذیر است که ماشین مجازی خاموش باشد، و در صورت توقف موقت، VirtualBox از شما می‌خواهد که حالت ذخیره‌شده را برای ادامه فرآیند تنظیم مجدد کنید.

بعد، پنجره گزینه های صادرات ظاهر می شود. ما فرمت از پیش تعیین شده را ترک می کنیم، اما پوشه فایل صادراتی ".ova" را که به طور پیش فرض در درایو سیستم قرار دارد، به پوشه ای تغییر می دهیم، به عنوان مثال، مانند مورد ما، که مخصوصا در درایو غیر سیستمی D ایجاد شده است.

در پنجره بعدی، روی “ صادرات».

منتظر تکمیل فرآیند صادرات هستیم.

ماشین مجازی صادر شده در فایل ".ova" در پوشه مشخص شده قرار می گیرد، از آنجا می توان آن را به رایانه دیگری، رسانه قابل جابجایی یا به یک سرویس ابری منتقل کرد. یا می توانید آن را مانند مورد ما در محل خود بگذارید - در یک درایو غیر سیستمی، جایی که این فایل در هنگام نصب مجدد ویندوز ذخیره می شود.

3. یک ماشین مجازی وارد کنید

پس از نصب VirtualBox در ویندوز جدید یا رایانه دیگری، برنامه را باز کنید و در منوی " فایل" انتخاب کنید " وارد کردن تنظیمات».

در پنجره بعدی، مسیر فایل “.ova” را با ماشین مجازی صادر شده مشخص کنید. کلیک " بعد».

در انتهای پنجره، مسیری که فایل دیسک سخت ".vdi" پس از وارد کردن در آن قرار می گیرد، نشان داده می شود. به طور پیش فرض، این درایو سیستم است و برای اینکه آن را به هم نریزید و از گم شدن فایل “.vdi” در صورت خرابی سیستم جلوگیری کنید، می توانید با تعیین پوشه ذخیره سازی در یک غیر سیستم، مسیر را تغییر دهید. راندن. کلیک " وارد كردن».

منتظر تکمیل فرآیند واردات هستیم.

پس از آن ماشین مجازی وارد شده را در لیست ماشین های VirtualBox خواهیم دید. تنها چیزی که در حال حاضر باقی می ماند روشن کردن ماشین است.

سیستم عامل مهمان دقیقاً در همان حالتی که در زمان صادر شدن ماشین مجازی در آن بود شروع می شود.

4. افزودن یک ماشین جدید از یک فایل دیسک سخت VirtualBox موجود

یک جایگزین برای صادرات و وارد کردن یک ماشین مجازی، اضافه کردن یک ماشین جدید از یک فایل هارد دیسک VirtualBox موجود است. vdi" این روش به هیچ وجه کمتر از روش صادرات و واردات ماشین مجازی نیست. علاوه بر این، اگر فایل ".vdi" روی یک درایو غیر سیستمی قرار دارد، وقتی ویندوز را مجدداً روی یک رایانه فیزیکی نصب می‌کنید، حتی نیازی به تلف کردن زمان برای صادرات پیکربندی ندارید. ما به سادگی می توانیم فایل “.vdi” ذخیره شده در دیسک سیستم را به یک دیسک غیر سیستمی انتقال دهیم. به طور کلی، فرآیند صادرات و واردات یک ماشین مجازی تنها با صرفه جویی در فضای اشغال شده توسط فایل ".ova" سود می برد. به عنوان مثال، در مورد ما، ما یک ماشین مجازی را با سیستم عامل مهمان ویندوز XP صادر کردیم و وزن فایل ".ova" در خروجی بود. 4,11 گیگابایت در حالی که حجم هارد دیسک فایل “.vdi” همان سیستم است 10 گیگابایت.

اگر یک ماشین مجازی را با استفاده از فضای ذخیره سازی ابری یا رسانه های قابل جابجایی با اندازه محدود به رایانه دیگری منتقل کنید، این مزیت صرفه جویی در فضا ممکن است مرتبط باشد. در مورد ما، هنگامی که در مورد نصب مجدد ویندوز صحبت می کنیم، روش اضافه کردن یک ماشین جدید از یک فایل هارد دیسک موجود VirtualBox کاملا مناسب است.

VirtualBox را راه اندازی کنید و روی "کلیک کنید" ايجاد كردن».

ما نشانگر RAM را تنظیم می کنیم. کلیک " بعد».

در پنجره انتخاب هارد، گزینه “ از هارد دیسک موجود استفاده کنید"، با استفاده از دکمه مرور، مسیر ذخیره فایل ".vdi" را مشخص کنید. کلیک " ايجاد كردن».

ماشین مجازی در لیست VirtualBox ظاهر می شود، ما می توانیم آن را راه اندازی کنیم.

سیستم عامل مهمان دقیقاً در حالتی شروع می شود که آخرین باری که با آن کار کرده اید ذخیره شده است.

افزودن یک ماشین مجازی جدید از یک فایل ".vdi" موجود نیز راهی برای انتقال فایل دیسک سخت سیستم عامل مهمان به درایو غیر سیستمی رایانه است، در صورتی که در ابتدا در درایو سیستم ایجاد شده باشد، و به مرور زمان فضای آن را منتقل می کند. اشغال شروع به کاهش عملکرد سیستم کرد. برای این کار باید ماشین مجازی را از لیست پنجره اصلی VirtualBox حذف کنید. در دستگاه انتخاب شده، منوی زمینه را فراخوانی کنید و « را انتخاب کنید حذف».

سپس در پنجره ای که ظاهر می شود، روی ” کلیک کنید از لیست حذف کن».

پس از این، می توانید فایل ".vdi" هارد دیسک را در درایو سیستم (معمولاً مسیر پیش فرض) جستجو کنید. C:\Users\Username\VirtualBox VMs، آن را به یک دیسک غیر سیستمی منتقل کنید و دوباره ماشین مجازی را اضافه کنید.

آیا این مقاله به شما کمک کرد؟

دوباره سلام! این مقاله برای توسعه دهندگانی که از Xamarin استفاده می کنند و همچنین کسانی که برنامه های کاربردی را برای دستگاه های ویندوز و اندروید با استفاده از شبیه سازها و ابزارهای توسعه بومی توسعه می دهند مفید خواهد بود. ما در مورد چگونگی جابجایی آسان و نسبتاً سریع بین Hypervisor VirtualBox و Hyper-V صحبت خواهیم کرد.
یک مقدمه کوتاه هنگام توسعه برنامه‌ها، تقریباً همیشه نیاز به آزمایش آن‌ها بر روی شبیه‌سازها وجود دارد، زیرا برای مثال، دستگاه‌های اندرویدی زیادی با فاکتورهای فرم مختلف وجود دارد و می‌خواهید مطمئن شوید که برنامه در همه دستگاه‌ها قابل قبول به نظر می‌رسد. اما با راه اندازی شبیه سازها، مشکلات مختلفی شروع می شود؛ شبیه ساز برای دستگاه های اندرویدی خارج از جعبه (استاندارد گوگل) بسیار بسیار کند است، بنابراین توصیه می شود از یک شخص ثالث استفاده کنید، به عنوان مثال Genymotion، که من را خوشحال کرد. با سرعت خود و احتمالاً از نظر پاسخگویی کمتر از دستگاه های واقعی نیست. برای استفاده از آن به یک ماشین مجازی (Oracle VirualBox) نیاز دارید که به نوبه خود از Hypervisor خود استفاده می کند. هایپروایزر- این نرم افزار لازم برای اجرای چندین سیستم عامل به طور همزمان بر روی یک کامپیوتر است. برای توسعه برای ویندوزفون، نیازی به شبیه ساز شخص ثالث نیست؛ شبیه ساز استاندارد بسیار سریع است، اما برای کارکرد آن باید از Hyper-V هایپروایزر مایکروسافت استفاده کنید. دو Hypervisor نمی توانند همزمان روی یک کامپیوتر اجرا شوند، از این رو مشکل وجود دارد. در وبلاگ یک توسعه دهنده انگلیسی زبان، راهی برای حل این مشکل پیدا کردم که اکنون خودم از آن استفاده می کنم و تصمیم گرفتم آن را در وبلاگم ترجمه کنم.

بنابراین، اکنون بیایید در مورد نحوه سازماندهی سوئیچینگ بین دو هایپروایزر صحبت کنیم. ابتدا باید یک command prompt را به عنوان مدیر باز کنید و دستور زیر را در آن بنویسید:

C:\>bcdedit /copy (در حال حاضر) /d "No Hyper-V"

ج:\> bcdedit /copy (current) /d "No Hyper-V"

پس از اجرای موفقیت آمیز، پیامی باید حاوی کلید مورد نیاز ما ظاهر شود. بعد با کلیدی که بعد از اجرای دستور اول بدست آوردیم دستور دیگری را وارد می کنیم:

پس از اجرای موفقیت آمیز، پیامی ظاهر می شود که به شما اطلاع می دهد دستور به درستی اجرا شده است. در اینجا همه چیز از نظر بصری به نظر می رسد:

در اصل، همه چیز آماده است، اکنون می توانید بین دو حالت سوئیچ کنید، اما این نیاز به راه اندازی مجدد رایانه دارد، که البته خیلی راحت نیست، یعنی. برای فعال یا غیرفعال کردن Hyper-V باید کامپیوتر خود را مجددا راه اندازی کنید. هنگامی که سیستم بوت می شود، اکنون صفحه ای وجود دارد که در آن باید انتخاب کنید در کدام حالت سیستم راه اندازی شود: با یا بدون هایپروایزر Hyper-V (یعنی می توانید از هایپروایزر VirtualBox استفاده کنید). اگر دو سیستم در رایانه خود دارید، همان صفحه ظاهر می شود:

ممکن است هنگام راه اندازی مجدد رایانه، صفحه انتخاب نمایش داده نشود، می توان آن را پیکربندی کرد یا می توانید به سادگی روی دکمه راه اندازی مجدد در منوی ویندوز کلیک کنید و در حالی که کلید Shift را نگه دارید.
این همه برای من است، فکر می کنم این مقاله به شما کمک کرد، خداحافظ همه!