Не так давно я писал статью о том как создать общую папку в Виртуальной машине чтобы можно было юзать общие документы, но потом понадобилось чтобы мою машину видела локалка и так немного покопавшись в нете наткнулся на статью.
И так запустим VirtualBox, так как у меня всего одна система установлена то открываю ее свойства.Пункт "Сеть" далее "Хост-интерфейс" в поле
"Присоединен к". А ниже в поле "Имя интерфейса" пишем "vbox0"
(конечно отпускаем при этом кавычки ) прилагается скрин.
После необходимо поставить пакет bridge-utils:
#sudo apt-get install bridge-utils И добавляем в /etc/network/interfaces: строки можно открыть черзе nano либо через gedit т.е так sudo gedit /etc/network/interfaces
auto eth0 iface eth0 inet manual
auto br0 iface br0 inet dhcp bridge_ports eth0 vbox0 Теперь редактируем /etc/vbox/interfaces:
vbox0 Имяюзверя br0 здесь же Имяюзверя - пользователь, под которым ты работаешь в системе.
Т.ж. нужно настроить права для /dev/net/tun, чтобы VirtualBox не ругался при запуске гостевой ОС:
sudo chown root:vboxusers /dev/net/tun sudo chmod g+rw /dev/net/tun Чтобы не выполнять это каждый раз при запуске Ubuntu открываем файл /etc/udev/rules.d/20-names.rules и ищем строчку (у меня она была в самом низу файла)
KERNEL=="tun", NAME="net/%k" и дописываем в ее конец пару слов и в итоге KERNEL=="tun", NAME="net/%k", GROUP="vboxusers", MODE="0660"
Перезапустим сеть и демон виртуалбокса:
sudo /etc/init.d/networking restart sudo /etc/init.d/virtualbox-ose restart Все готово.
Т.к.
IP мы получаем динамически, то надо в гостевой системе сделать
соответствующие сетевые настройки, чтобы она получала IP от DHCP сервера
из нашей локальной сети. Если же ты не хочешь или не можешь по какой-то причине использовать DHCP сервер, то измени файл /etc/network/interfaces след. образом:
auto eth0 iface eth0 inet manual
auto br0 iface br0 inet static address 192.168.0.100 netmask 255.255.255.0 gateway 192.168.0.1 bridge_ports eth0 vbox0
Теперь
твоя гостевая система будет иметь IP 192.168.0.100. Т.ж. не забудь
соответствующим образом изменить сетевые настройки гостевой системы.
И... никогда не забывай делать резервные копии, перед внесением изменений в какие-либо конфигурационные файлы!!! ;)
Также чтобы не мучаться можно прикрутить скрипт, но некоторые вещи все равно надо будет исправить ручками, данный скипт не мой.#!/bin/sh
# Запускать от root'а ISDHCP=0 # 1 = Использовать DHCP | 0 = Не оспользовать DHCP ADDRESS=192.168.0.100 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 USER=`whoami`
# Устанавливаем пакет bridge-utils apt-get install bridge-utils NODHCP="auto eth0" NODHCP+="iface eth0 inet manual" NODHCP+="" NODHCP+="auto br0" NODHCP+="iface br0 inet dhcp" NODHCP+=" bridge_ports eth0 vbox0"
YESDHCP="auto eth0" YESDHCP+="iface eth0 inet manual" YESDHCP+="" YESDHCP+="auto br0" YESDHCP+="iface br0 inet static" YESDHCP+=" address $ADDRESS" YESDHCP+=" netmask $NETMASK" YESDHCP+=" gateway $GATEWAY" YESDHCP+=" bridge_ports eth0 vbox0"
# Делаем бэкап /etc/network/interfaces cp /etc/network/interfaces /etc/network/interfaces_`date +%Y%m%d`
# Настраиваем /etc/network/interfaces if [ $ISDHCP=0 ] ; then echo "$NODHCP" > /etc/network/interfaces else echo "$YESDHCP" > /etc/network/interfaces fi
# Настраиваем /etc/vbox/interfaces echo "vbox0 $USER br0" >> /etc/vbox/interfaces
# Настраиваем права для /dev/net/tun chown root:vboxusers /dev/net/tun chmod g+rw /dev/net/tun
# Делаем бэкап /etc/udev/rules.d/20-names.rules cp /etc/udev/rules.d/20-names.rules /etc/udev/rules.d/20-names.rules_`date +%Y%m%d`
# Заменяем нужную строчку grep -v 'KERNEL=="tun"' /etc/udev/rules.d/20-names.rules > /etc/udev/rules.d/20-names.rules echo 'KERNEL=="tun", NAME="net/%k", GROUP="vboxusers", MODE="0660"' >> /etc/udev/rules.d/20-names.rules
# Перезапускаем демон виртуалбокса sudo /etc/init.d/virtualbox-ose restart
# Перезапускаем сеть sudo /etc/init.d/networking restart
Источник данной статьи
|