Windows 8.1 i maszyna wirtualna

Starając się ostatnio znaleźć jak najlepszą metodę postawienia wirtualnej maszyny systemu CentOS 6.3 natknąłem się na kilka rozwiązań, mniej lub bardziej skutecznych.

Podstawowym rozwiązaniem który jako pierwszy przychodzi do głowy jest VirtualBox od Oracle. Jest to dobry pomysł, i z początku uważałem że słuszny. Napotkałem jednak kilka problemów. Pierwszym jest fakt że licencja umożliwia używanie VirtualBox’a tylko do celów testowych – niekomercyjnych. W użytku komercyjnym należy nabyć odpowiednie uprawnienia. Kolejnym problemem okazała się stabilność samego rozwiązania pod systemem Windows 8.1. Oracle gryzło się sprzętowo z systemem czego efektem był blue screen CRITICAL_STRUCTURE_CORRUPTION. Szczerze mówiąc poddałem się w momencie którym przeczytałem że producent ma wydać aktualizacje. Liczyłem na stabilne rozwiązanie które będzie śmigać wtedy kiedy tego zachcę – tak się nie stało.

Tutaj z pomocą przyszedł mi Hyper-V Manager, który został wbudowany do systemu Windows 8 PRO i wyższych. Instalacja samego rozwiązania jest banalna. Przechodząc do panelu sterowania -> programy i funkcje -> włącz lub wyłącz funkcję systemu Windows zaznaczamy po prostu ptaszka przy Hyper-V. Reset komputera i gotowe. (tak, z tego poziomu można również całkowicie usunąć Internet Explorer!).

Hyper-V

W celu skonfigurowania maszyny wirtualnej pod CentOSa należy zwrócić szczególną uwagę na generację wirtualizatora który wybieramy podczas tworzenia maszyny. Generacja 2 nie poradzi sobie z instalacją Linuxa ze względu na UEFI. Kolejny i najważniejszym element który należy wziąć pod uwagę to procesor w Twoim komputerze. Musi on znajdować się na liście Intel ® Virtualization Technology. Cały proces instalacji systemu wraz z włączeniem Hyper-V zajmuje ok. 20 minut.

centos

No dobra, teraz trzeba skonfigurować sieć na tym cacku.

Z pomocą przychodzą nam sterowniki od Microsoftu: Linux Integration Services Version 3.4 for Hyper-V. Pobieramy, na uruchomionej maszynie robimy media -> DVD Drive i wsadzamy pobrane ISO do ‚napędu’. Montujemy napęd w systemie komendą:

mount /dev/cdrom /media

Instalujemy skrypt komendą:

/media/RHEL63/install.sh

Restartujemy nasz system:

init 6

Przechodzimy do konfiguracji interfejsu karty sieciowej:

vi /etc/sysconfig/network−scripts/ifcfg−eth0

i dodajemy wpisy:

DEVICE="eth0"
BOOTPROTO=none
ONBOOT="yes"
TYPE="Ethernet"
HWADDR=MAC który nadał Hyper−V (Setting −> Network Adapter −> Advanced Featured)
IPADDR= {adres IP który ma mieć maszyna}
GATEWAY= {brama domyślna do Twojego routera}
DNS1= {główny DNS do Twojego Routera}

ifcfg-eth0

Teraz restartujemy interfejs sieciowy i sprawdzamy czy karta sieciowa ma połączenie.

sudo service network restart
ifconfig

ifcfg-eth0-2

Możesz też uruchomić od razu httpd i wyłączyć na chwilę iptables żeby sprawdzić czy bangla Ci wszystko w przeglądarce.

sudo service httpd start
sudo service iptables stop

 

Żeby nie było. Firewall jest ARCY WAŻNY! Dlatego też należy go skonfigurować. Uruchamiamy iptables i dodajemy do niego wpisy:

sudo service iptables start
vi /etc/sysconfig/iptables

−A INPUT −m state −−state NEW −m tcp −p tcp −−dport 22 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 80 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 443 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 25 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 465 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 110 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 995 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 143 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 993 −j ACCEPT
−A INPUT −p tcp −m tcp −−dport 3306 −j ACCEPT

Następnie restartujemy firewalla żeby wczytał nowe ustawienia:

sudo service iptables restart

 

Do firewalla zostały dodane porty odpowiedzialne za apache na porcie 80 i SSL 443, port SSH – 22, porty odpowiedzialne za FTP, POP3, SMTP i MySQL.

Kasztelan Paweł

Programista samouk, zakochany w ZF i Laravel, szerzący opinię że PHP + JS + HTML + CSS to są języki w których może zostać stworzona aplikacja równie dobra, a nawet lepsza od twardego klienta.