Хроники Knowledge Base Slackware FAQ Tools Акела Озеро Селигер Путешествия Рецепты Обои Фоторедактор Сертификаты Контакты
Other Soft for Linux

Создано: 26 Марта 2008г.   10:52
Модифицировано: 06 Мая 2010г.   12:59

[ Назад ]

VirtualBox


Установка дополнений гостевой ОС VirtualBox
Установить необходимые модули:
yum install gcc kernel-devel kernel-headers
Подключить диск с дополнениями в VirtualBox и выполнить:
mount /dev/cdrom /mnt/
/mnt/VBoxLinuxAdditions-x86.run
или
sh /mnt/VBoxLinuxAdditions-x86.run

Запуск с простым интерфейсом (только окно)
VBoxSDL -vm
Сохранить (из другой консоли):
VBoxManage.exe controlvm savestate

Для удаленного доступа к виртуальной машине можно использовать RDP
Для включения поддержки USB необходимо выполнить следующие действия:
Добавить в /etc/fstab
none /proc/bus/usb usbfs devgid=501,devmode=664 0 0
или
/proc/bus/usb /proc/bus/usb usbfs devgid=501,devmode=664 0 0
где 501 - id группы которая должна иметь доступ к USB устройствам, это должен быть id группы vboxusers.Получить id можно запустив:
grep vboxusers /etc/group
После этого перемонтировать /proc/bus/usb:
mount -o remount /proc/bus/usb/
Вместо этого можно давать комманду:
mount -t usbfs -o remount,devgid=$(awk -F: '/^vboxusers:/{print $3}' /etc/group),devmode=664 /proc/bus/usb /proc/bus/usb
В USB табе в настройках машины можно отметить какие устройства должны быть доступны или ввести пустой фильтр.
Для подключения к загруженной машине Устройства - Устройства USB и выбрать подключенное устройство

http://en.opensuse.org/VirtualBox_USB_Support
Клонирование диска:
VBoxManage clonevdi disk.vdi new_disk.vdi

Подключение общей папки
Windows:
Правой кнопкой св-св сетевого окружения -> подключить сетевой диск -> \\vboxsvr\sharename
или в строке адреса \\vboxsvr\sharename (просто \\vboxsvr\ работать не будет)
или в сетевом окружении Вся сеть -> VirtualBox shared folders
Linux:
mount -t vboxsf [-o OPTIONS] sharename mountpoint
полный путь по идее //vboxsrv/sharename но такой путь вызывает ошибку "Protocol error"

В случае возникновения следующей проблемы:
Невозможно возобновить работу виртуальной машины после завершения работы с сохранением состояния. Выдается ошибка: "Unable to restore the virtual machine's saved state ..."
Проблема возникает при отключеннном сетевом адаптере в гостевой Windows
как вариант еще:
Проблема возникает при использованиис сетевого адаптера "PCnet-FAST III".
Необходимо заманить его например на "PCnet-PCI II".


В случае возникновения следующей проблемы:
(У меня возникла после установки новой версии 2.0.4 на Fedora 8)
VirtualBox: supR3HardenedMainGetTrustedMain: dlopen("/usr/lib/virtualbox/VirtualBox.so",) failed: /usr/lib/virtualbox/VirtualBox.so: undefined symbol: _ZN7QRegionpLERK5QRect
необходимо обновить библиетеки Qt:
yum update qt4
Также я обновил ядро и перекомпилировал модуль service vboxdrv setup

Уменьшение размера виртуального диска
В гостевой системе дефрагментировать диск а затем записать нулями свободное место при помощи утилиты
SDelete
http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx
sdelete -c c:
или
http://www.feyrer.de/g4u/nullfile-1.02.exe

В Linux это можно сделать так:
dd if=/dev/zero of=/zerofile; rm /zerofile
или еще качественнее так:
Boot using a GParted LiveCD
Downsize existing partition(s) to the strict minimum
Create temporary unformatted partition(s) in the unused disk space
Fill the temporary unformatted partition(s) with zeroes, using 'dd if=/dev/zero of=/dev/...'
(and optionally do the same for the swap partition)
Remove the temporary unformatted partition(s)
Grow the partition(s) previously downsized in 3.b back to their original size
Shutdown GParted


Скачать утилиту vditool (сохранить как)
http://www.virtualbox.org/download/testcase/vditool
http://www.virtualbox.org/download/testcase/vditool.exe
Положить в каталог с имиджами дисков


Для проверки зависимостей:
ldd vditool

Для установки стандартной библиотеки С++, совместимой с GCC 3.3.4 (/usr/lib/libstdc++.so.5)
sudo yum install "compat-libstdc++-33"

Для запуска с указанием пути к библиотекам:
LD_LIBRARY_PATH=/usr/lib/virtualbox/ ./vditool
Для оптимизации размера имиджа:
LD_LIBRARY_PATH=/usr/lib/virtualbox/ ./vditool SHRINK filename.vdi
или вместо этого:
VBoxManage modifyvdi filename.vdi compact

Монтирование VDI диска
Монтирование возможно только для дисков фиксированного размера
Чтобы узнать тип:
LD_LIBRARY_PATH=/usr/lib/virtualbox/ ./vditool DUMP WinXP-Sample.vdi | grep Type
Фиксированный имеет Type=2
Для того чтобы узнать размер смещения данных:
LD_LIBRARY_PATH=/usr/lib/virtualbox/ ./vditool DUMP WinXP-Sample.vdi | grep offData
К этому хначению нужно прибавить 32256
Также смещение можно узнать открыв .vdi файл и найдя начало раздела (по строке NTFS или FAT)
Далее смонтировать:
mount -t ntfs-3g -o rw,loop,offset=73728 filename.vdi /mnt/vdi

Конвертация машины .vmdk (VmWare) в .vdi

http://thedarkmaster.wordpress.com/2007/03/12/vmware-virtual-machine-to-virtual-box-conversion-how-to/

Перенос виртуальных машин на другой локальный диск
В Linux достаточно перенести папки ~/.VirtualBox/Machines и ~/.VirtualBox/VDI в любое место и сделать симлинки

В Windows
Перенос виртуальных машин из Linux в Windows
Перед переносом желательно отмонтировать общие папки, CD и FDD
Скопировать:
Настройки виртуальных машин из ~/.VirtualBox/Machines в %USERPROFILE%/.VirtualBox/Machines
Диски из ~/.VirtualBox/VDI в %USERPROFILE%/.VirtualBox/VDI
Из файла ~/.VirtualBox/VirtualBox.xml скопировать в %USERPROFILE%/.VirtualBox/VirtualBox.xml
строки:
MachineEntry (ссылка на настройки машины) и HardDisk (Ссылка на хард. Может быть добавлен через меню)
Отредакторовать пути

В файлах %USERPROFILE%/.VirtualBox/Machines/name/*.xml
Заменить version="1.x-linux" на version="1.x-windows" не меняя номер версии
(если версия младше, файл будет преобразован к новой)

Отключение синхронизации времени между гостевой и хостовой машиной
Ввести команду:
VBoxManage setextradata vm_name "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" "1"
В конфигурационный XML файл будет добавлена информация в раздел ExtraData
Перезапустить виртуальную машину

В случае ошибки /bin/sh: bad interpreter: Permission denied
вводить команду:
bash VBoxLinuxAdditions-x86.run

Установка Web интерфейса
http://code.google.com/p/vboxweb/

1) Установить Pithon 2.6
http://python.org/download/


2) Установить Python Win32 Extensions для Pithon 2.6
http://python.net/crew/mhammond/win32/Downloads.html

3) Установить SVN
http://subversion.tigris.org/
Скачать CollabNet Subversion Command-Line Client for Windows
http://www.collab.net/downloads/subversion/

4) Загрузить VboxWeb командой
svn checkout http://vboxweb.googlecode.com/svn/trunk/ vboxweb-read-only
Из папки C:\Program Files (x86)\CollabNet\Subversion Client
Появится папка vboxweb-read-only. Её можно скопировать в любое нужное место.

5) (Пере)установить VirtualBox с поддержкой Pithon
http://www.virtualbox.org/
либо перейти в папку:
C:\Program Files\Sun\xVM VirtualBox\sdk\install
и дать комманду:
c:\python26\python vboxapisetup.py install
При этом в папке C:\Python26\Lib\site-packages\ появится папка vboxapi

6) Создать пользователя:
C:\Python26\python.exe VBoxWebSrv.py adduser user password
(В случае ошибки
ImportError: No module named pythoncom
Установить Python Win32 Extensions!)

7) Запустить сервер:
C:\Python26\python VBoxWebSrv.py
Для завершения:
CTRL+C

8) Войти в Web консоль:
http://localhost:8080/
Для смены порта:
Отредактировать в файле:
VBoxWeb.conf
строку:
"server.socket_port = 8080"

[ Назад ]







Powered by Parser & MyCMS Дмитрий Ульянов, 2001-2025 (с)