دستورات کنسول Virtualbox اجرای ماشین مجازی در VirtualBox بدون رابط کاربری گرافیکی

گاهی اوقات نیاز به اجرای یک ماشین مجازی روی هاست بدون X وجود دارد. من به شما خواهم گفت که چگونه این کار را انجام دهید، فقط از طریق ssh + rdp (پروتکل دسکتاپ از راه دور) به سیستم میزبان دسترسی داشته باشید. من روند OC Ubuntu 9.10 را به عنوان یک میزبان شرح خواهم داد.

بیایید با نصب VirtualBox شروع کنیم.

ابتدا باید بسته dkms (چارچوب پشتیبانی ماژول هسته پویا) را نصب کنید:

Sudo apt-get نصب dkms

این سایت 2 گزینه ارائه می دهد: منبع بسته (deb download.virtualbox.org/virtualbox/debian karmic non-free) را در /etc/apt/sources.list ثبت کنید یا بسته deb را دانلود و نصب کنید. وقتی منبع را ثبت کردم و sudo apt-get virtualbox-3.1 را نصب کردم، یک دسته بسته‌های وابستگی (از جمله برخی برای رابط کاربری گرافیکی) دریافت کردم. بنابراین بهتر است بسته deb را دانلود کنید. دانلود و نصب کنید:

Sudo dpkg -i virtualbox-3.1_3.1.0-55467_Ubuntu_karmic_i386.deb

شاید وابستگی‌ها نیز در اینجا مورد نیاز باشند (برخی از کتابخانه‌ها برای تجزیه xml که پیکربندی‌ها در آن ذخیره می‌شوند، اما تعداد آنها به میزان قابل توجهی کمتر از مورد اول است). اگر نصب به دلیل وابستگی کامل نشد، به سادگی می توانید انجام دهید

Sudo apt-get-f نصب کنید

این وابستگی ها و VirtualBox را نصب می کند

باشه VirtualBox نصب شده است. بیایید شروع به ایجاد ماشین های مهمان کنیم.

بیایید خود ماشین را بسازیم:

VBoxManage createvm --name ubuntu --ostype Ubuntu --register
(نام - نام ماشین، ostype - نوع سیستم. لیست کاملهمه انواع را می توان با استفاده از دستور VBoxManage list ostypes پیدا کرد)

راه اندازی آن

VBoxManage modifyvm ubuntu -- حافظه 512 -- فلاپی غیرفعال -- صدا وجود ندارد --nic1 bridged --bridgeadapter1 eth0 --vram 4 --accelerate3d off --boot1 disk --acpi on --cableconnected1 on --usb off --vrdp در --vrdpport 3390

اینجا همه چیز روشن است. همچنین می توانید NAT را به عنوان نوع شبکه (--nic1 nat) مشخص کنید. همچنین rdp را فعال کنید

ما ایجاد می کنیم دیسک hddبرای ماشین مجازی:

VBoxManage createhd --filename /home/user/vbox/ubuntu.vdi --size 20000 --register

اضافه کردن یک کنترلر IDE به دستگاه ما

VBoxManage storagectl ubuntu --name "IDE Controller" --add ide

hdd که قبلا ایجاد شده بود را به IDE0 وصل می کنیم

VBoxManage storage ضمیمه ubuntu --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/user/vbox/ubuntu.vdi

در IDE1 تصویر نصب را پیوست می کنیم

VBoxManage storage ضمیمه ubuntu --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso

گفتن دستگاه برای بوت شدن از دیسک

VBoxManage modifyvm ubuntu --boot1 dvd

بیایید ماشین را روشن کنیم

برای نصب سیستم پایه، از مشتری rdp استفاده می کنیم (من KDE دارم، KRDC در بسته استاندارد موجود است). به دستگاه میزبان در پورت مشخص شده در تنظیمات (--vrdpport 3390) متصل شوید، سیستم را نصب کنید، sudo apt-get install openssh-server را انجام دهید. اکنون می توانید از طریق ssh به ماشین مجازی دسترسی داشته باشید

توقف ماشین مجازی

VBoxManage controlvm ubuntu acpipowerbutton
از طریق acpi

یا خشن تر

VBoxManage controlvm ubuntu poweroff

می گوییم از HDD بوت می شود

VBoxManage modifyvm ubuntu --boot1 disk

همچنین می توانید دیسک نصب را از حالت کلیپ خارج کنید

VBoxManage storage ضمیمه ubuntu --storagectl "IDE Controller" --پورت 1 --دستگاه 0 --متوسط ​​هیچکدام

و دوباره شروع می کنیم

Nohup VBoxHeadless --startvm ubuntu &

دستورات مفیدتر:

VBoxManage لیست runvms
مشاهده تمام ماشین های در حال اجرا

VBoxManage showvminfo ubuntu
مشاهده اطلاعات مربوط به یک ماشین مجازی

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

1. یک ماشین مجازی با نام windows_xp ایجاد کنید
VBoxManage createvm --name windows_xp --regist er
ماشین مجازی ایجاد شده است فایل XML، که در فهرست اصلی /root/VirtualBox\ VMs/windows_xp/windows_xp.vbox قرار دارد.
2. بعد باید یک دیسک ماشین مجازی ایجاد کنید
VBoxManage createhd --filename /date/VirtualBox/windows_xp.vdi --size 15000 --variant fix d
به طور پیش فرض، دیسک در ایجاد می شود پوشه خانهکاربر، یک دیسک windows_xp.vdi در فهرست /date/VirtualBox/ با حجم 15 گیگابایت ایجاد کردیم. اندازه ثابت است، یعنی به صورت پویا افزایش نمی یابد.
3. یک کنترلر ایجاد کنید دیسک های مجازی
VBoxManage storagectl windows_xp --نام "IDE Controller" --add ide --controller PIIX4
با استفاده از این دستور، یک کنترلر IDE با نام "IDE Controller" ایجاد می شود که نوع کنترل کننده PIIX4 است.
4. اتصال دیسک مجازیبه ماشین مجازی:
VBoxManage ذخیره سازی ضمیمه windows_xp --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /date/VirtualBox/windows_xp.vdi

5. اتصال تصویر مجازیسیستم عاملی که می خواهیم نصب کنیم
VBoxManage ذخیره سازی ضمیمه windows_xp --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /date/public/winxp_pro_eng_sp3.iso

6. اندازه را تنظیم کنید RAMبرای ماشین مجازی 512 مگابایت
vboxmanage modifyvm windows_xp --memory 512

7. نوع سیستم را تنظیم کنید VBoxManage modifyvm windows_xp --ostype WindowsX P
همه ostypes های ممکن را ببینید: VBoxManage لیست ostypes

8. اجازه اتصال به کنسول از طریق پروتکل RDP را بدهید
vboxmanage modifyvm windows_xp --vrde روشن است
برای راحت‌تر کردن مدیریت ماشین‌های مجازی، به مجموعه‌ای از افزونه‌ها نیاز دارید که شامل USB 2.0 و یک سرور RDP داخلی باشد. افزونه ها را دانلود و نصب کنید: wget http://dlc.sun.com.edgesuite.net/virtualbox/4.2.12/Oracle_VM_VirtualBox_Extension_Pack-4.2.12-84980.vbox-extpack

VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-4.2.12-84980.vbox-extpack

9. ماشین مجازی را راه اندازی کنید
vboxheadless -s windows_xp یا در پس زمینه:
VBoxManage startvm windows_xp --type headless
برای اجرای یک سیستم عامل مهمان بر روی کامپیوتر میزبانی که با آن از طریق ssh کار می کنید، باید از کلید –type=headless استفاده کنید:

10. از طریق RDP ip_servera وصل شوید و win_xp را طبق معمول نصب کنید

11. می توانید دستگاه را به این شکل خاموش کنید: VBoxManage controlvm windows_xp poweroff

12. دیسک VboxGuestAdditions را سوار کنید
VBoxManage ذخیره سازی ضمیمه windows_xp --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /usr/share/virtualbox/VBoxGuestAdditions.iso

ما دستگاه را راه اندازی می کنیم و VboxGuestAdditions را نصب می کنیم
13. اطلاعات دقیقاطلاعات مربوط به یک سیستم عامل مجازی خاص را می توان با استفاده از دستور VBoxManage showvminfo windows_xp به دست آورد.

14. این دستور یک رابط شبکه NIC پل شده ایجاد می کند
VBoxManage modifyvm windows_xp --nic1 bridged --bridgeadapter1 eth0

15. اگر دیسک ماشین مجازی نیاز به شبیه سازی داشته باشد، این کار با استفاده از ابزار VBoxManage انجام می شود:
VBoxManage clonehd /path/from/copying/image1.vdi /path/where/copying/image2.vdi
پس از این، همه چیز به طرز شگفت انگیزی به ماشین مجازی جدید متصل می شود.

16. یک پوشه مشترک با سرور ایجاد کنید
vboxmanage sharedfolder اضافه کردن "windows_xp" --name share-name --hostpath /mnt
پوشه مشترک را از windows_xp execute وصل کنید
\\vboxsvr\share-name


ارسال شده توسط Ken Hess
تاریخ انتشار: 18 ژانویه 2010
ترجمه: N. Romodanov
تاریخ ترجمه: فوریه 2010

کاربران معمولی VirtualBox ممکن است از قدرت عظیمی که در رابط خط فرمان نهفته است آگاه نباشند.

مردم معمولاً می پرسند: "چرا وقتی رابط کاربری گرافیکی خوبی دارید، روی خط فرمان کار کنید؟" پاسخ، قدرت عظیم خط فرمان است. از سال 1995 یک نسل کامل وجود داشته است کاربران کامپیوترکسانی که معتقدند کامپیوتر مجموعه ای از ویندوز و گرافیک است، اما در واقعیت این بسیار دور از واقعیت است. چرا، 1995، شما بپرسید؟ با ظهور ویندوزدر سال 95 در سال 1995، عصر رایانه جدیدی افتتاح شد - عصر رابط های گرافیکی. اندکی پس از آن آگوست سرنوشت ساز، FVWM95 منتشر شد که پاسخ لینوکس به آن بود رابط ویندوز 95 کاوشگر. به نظر من در آن روزهای خوب قدیمی خط فرمان برای همیشه ناپدید شد. هیچ کس دیگر نمی خواست از DOS استفاده کند و دیگر از لینوکس نمی ترسید. اما خط فرمان هنوز در محیط لینوکس زنده و زنده است. هنوز در ویندوز کاملاً زنده است. و اکنون که مک ها مبتنی بر یونیکس هستند، چیزهای زیادی نیز دارند که نیازی به رابط کاربری گرافیکی ندارند.

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

قدرت خط فرمان

مستطیل سیاهی که در مورد آن صحبت کردم، پنجره ترمینال است. خط فرمانبه شما این امکان را می دهد که از تمام قدرت اجرای دستورات خودکار استفاده کنید. تنها روش اتوماسیونی که من در سیستم های *nix می شناسم، استفاده از اسکریپت های نوشته شده در پرل، اسکریپت های پوسته یا اسکریپت هایی به زبان های دیگر است. و سیستم زمانبندی دیمون (cron) به شما کمک می کند تا اسکریپت را در زمان مناسب اجرا کنید. این قدرت خط فرمان است، که به لطف قابلیت اجرای خودکار، که به مدیران سیستم نیز نیاز دارد تا بتوانند اسکریپت بنویسند، مجموعه مهارت آنهاست. در هر جای خالی که نیاز است مدیر سیستم، نشان داده می شود که متقاضی باید بتواند حداقل به یکی از زبان های ترجمه شده مندرج در جای خالی اسکریپت بنویسد.

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

بیایید به ساده و ظریف نگاه کنیم عملکردخط فرمان در VirtualBox

نصب و اجزای اصلی

از پیوند VirtualBox Linux Downloads برای دانلود توزیع باینری طراحی شده برای سیستم خود استفاده کنید. در صورت تمایل می توانید دانلود کنید کد منبع. برای گزینه ای که انتخاب کردم (برای RHEL5/CentOS5 در فرمت rpm)، دایرکتوری های زیر ایجاد شد:

  • برای ماژول های باینری - /usr/lib/virtualbox با پیوندهایی از /usr/bin
  • برای کتابخانه ها - /usr/lib/virtualbox
  • برای کدهای منبع - /usr/share/virtualbox
  • برای اجزای مهمان (ISO) - /usr/share/virtualbox

اگر توزیع شما ندارد آخرین نسخه VirtualBox (نسخه 3.1.2 در زمان نوشتن این مقاله)، سپس از یکی از بسته های قابل دانلود استفاده کنید یا کد منبع را دانلود کنید.

ایجاد و پیکربندی ماشین مجازی

سخت ترین چیز در مورد استفاده از خط فرمان این است که بدانید از کجا شروع کنید. در رابط گرافیکی باید از دکمه New استفاده کنید. خط فرمان اسرار خود را کمی پیچیده تر نشان می دهد. برای ایجاد و پیکربندی یک ماشین مجازی جدید، باید یک پنجره ترمینال را باز کنید یا از یک جلسه ssh برای دسترسی به سیستم لینوکس که VirtualBox روی آن نصب شده است استفاده کنید و دستور زیر را اجرا کنید:

$ /usr/bin/VBoxManage createvm --name Debian5 –register

این دستور یک ماشین مجازی جدید به نام Debian5 ایجاد می کند و آن را با VirtualBox ثبت می کند. ماشین مجازی ایجاد شده یک فایل XML است که در فهرست اصلی قرار دارد ~/.VirtualBox/Machines/Debian5/Debian5.xml.

یک دیسک مجازی برای ماشین مجازی خود بسازید:

$ /usr/bin/VBoxManage createhd --نام فایل Debian5.vdi --size 4000 --variant ثابت شد

شما یک دیسک مجازی به نام Debian5.vdi با حجم 4 گیگابایت (4000 مگابایت) ایجاد کرده اید. اندازه ثابت است، یعنی به صورت پویا افزایش نمی یابد.

دیسک مجازی به صورت فایل ایجاد می شود ~/.VirtualBox/HardDisks/Debian.vdi

یک کنترلر دستگاه دیسک ایجاد کنید که دیسک مجازی و دستگاه مجازی CD/DVD را به آن وصل کنید

$ /usr/bin/VBoxManage storagectl Debian5 --نام "IDE Controller" --add ide --controller PIIX4

این دستور یک کنترلر IDE به نام "IDE Controller" ایجاد می کند که نوع کنترلر PIIX4 است.

حالا بیایید دیسک مجازی را به ماشین مجازی خود وصل کنیم:

$ /usr/bin/VBoxManage storageattach Debian5 --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Debian5.vdi

اتصال تصویر ISOسیستم عاملی که می خواهید نصب کنید:

$ /usr/bin/VBoxManage storageattach Debian5 --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /ISO/debian-40r3-i386-netinst.iso

راه اندازی شبکه:

$ /usr/bin/VBoxManage modifyvm Debian5 --nic1 bridged --cableconnected1 در --bridgeadapter1 eth0

با استفاده از این دستور، یک رابط شبکه Bridge NIC ایجاد می شود: کابل هنگام راه اندازی متصل می شود سیستم های لینوکس، آداپتور - eth0.

بیایید ماشین مجازی را راه اندازی کنیم:

$ /usr/bin/VBoxManage startvm Debian5

اگر همه چیز طبق برنامه پیش برود، پیام زیر را مشاهده خواهید کرد و سپس پنجره ماشین مجازی را برای نصب آماده خواهید دید:

در انتظار باز شدن جلسه راه دور... جلسه راه دور با موفقیت باز شد.

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

اگر مقاله را دوست داشتید، آن را با دوستان خود به اشتراک بگذارید:

گاهی اوقات نیاز به اجرای یک ماشین مجازی روی هاست بدون X وجود دارد. من به شما خواهم گفت که چگونه این کار را انجام دهید، فقط از طریق ssh + rdp (پروتکل دسکتاپ از راه دور) به سیستم میزبان دسترسی داشته باشید. من روند OC Ubuntu 9.10 را به عنوان یک میزبان شرح خواهم داد.

بیایید با نصب VirtualBox شروع کنیم.

ابتدا باید بسته dkms (چارچوب پشتیبانی ماژول هسته پویا) را نصب کنید:

Sudo apt-get نصب dkms

این سایت 2 گزینه ارائه می دهد: منبع بسته (deb download.virtualbox.org/virtualbox/debian karmic non-free) را در /etc/apt/sources.list ثبت کنید یا بسته deb را دانلود و نصب کنید. وقتی منبع را ثبت کردم و sudo apt-get virtualbox-3.1 را نصب کردم، یک دسته بسته‌های وابستگی (از جمله برخی برای رابط کاربری گرافیکی) دریافت کردم. بنابراین بهتر است بسته deb را دانلود کنید. دانلود و نصب کنید:

Sudo dpkg -i virtualbox-3.1_3.1.0-55467_Ubuntu_karmic_i386.deb

شاید وابستگی‌ها نیز در اینجا مورد نیاز باشند (برخی از کتابخانه‌ها برای تجزیه xml که پیکربندی‌ها در آن ذخیره می‌شوند، اما تعداد آنها به میزان قابل توجهی کمتر از مورد اول است). اگر نصب به دلیل وابستگی کامل نشد، به سادگی می توانید انجام دهید

Sudo apt-get-f نصب کنید

این وابستگی ها و VirtualBox را نصب می کند

باشه VirtualBox نصب شده است. بیایید شروع به ایجاد ماشین های مهمان کنیم.

بیایید خود ماشین را بسازیم:

VBoxManage createvm --name ubuntu --ostype Ubuntu --register
(نام - نام ماشین، ostype - نوع سیستم. لیست کاملی از همه انواع را می توان با دستور VBoxManage list ostypes پیدا کرد)

راه اندازی آن

VBoxManage modifyvm ubuntu -- حافظه 512 -- فلاپی غیرفعال -- صدا وجود ندارد --nic1 bridged --bridgeadapter1 eth0 --vram 4 --accelerate3d off --boot1 disk --acpi on --cableconnected1 on --usb off --vrdp در --vrdpport 3390

اینجا همه چیز روشن است. همچنین می توانید NAT را به عنوان نوع شبکه (--nic1 nat) مشخص کنید. همچنین rdp را فعال کنید

ایجاد یک دیسک hdd برای یک ماشین مجازی:

VBoxManage createhd --filename /home/user/vbox/ubuntu.vdi --size 20000 --register

اضافه کردن یک کنترلر IDE به دستگاه ما

VBoxManage storagectl ubuntu --name "IDE Controller" --add ide

hdd که قبلا ایجاد شده بود را به IDE0 وصل می کنیم

VBoxManage storage ضمیمه ubuntu --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/user/vbox/ubuntu.vdi

در IDE1 تصویر نصب را پیوست می کنیم

VBoxManage storage ضمیمه ubuntu --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /home/user/vbox/iso/ubuntu-9.10-alternate-i386.iso

گفتن دستگاه برای بوت شدن از دیسک

VBoxManage modifyvm ubuntu --boot1 dvd

بیایید ماشین را روشن کنیم

برای نصب سیستم پایه، از مشتری rdp استفاده می کنیم (من KDE دارم، KRDC در بسته استاندارد موجود است). به دستگاه میزبان در پورت مشخص شده در تنظیمات (--vrdpport 3390) متصل شوید، سیستم را نصب کنید، sudo apt-get install openssh-server را انجام دهید. اکنون می توانید از طریق ssh به ماشین مجازی دسترسی داشته باشید

توقف ماشین مجازی

VBoxManage controlvm ubuntu acpipowerbutton
از طریق acpi

یا خشن تر

VBoxManage controlvm ubuntu poweroff

می گوییم از HDD بوت می شود

VBoxManage modifyvm ubuntu --boot1 disk

همچنین می توانید دیسک نصب را از حالت کلیپ خارج کنید

VBoxManage storage ضمیمه ubuntu --storagectl "IDE Controller" --پورت 1 --دستگاه 0 --متوسط ​​هیچکدام

و دوباره شروع می کنیم

Nohup VBoxHeadless --startvm ubuntu &

دستورات مفیدتر:

VBoxManage لیست runvms
مشاهده تمام ماشین های در حال اجرا

VBoxManage showvminfo ubuntu
مشاهده اطلاعات مربوط به یک ماشین مجازی

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