Po pravideľných problémoch s localhostom a jeho opakovanou inštaláciou po každej reinštalácii systému som si povedal, že si do budúcnosti ušetrím čas a zbavím sa komplikácií so zálohami a ich obnovou do systémových priečinkov. Naviac mi nemusí celý localhost bežať stále, ale len keď potrebujem. Dalo by sa povedať, že najideálnejším spôsobom ako si zriadiť pohodlný localhost je formou XAMPP/LAMPP serveru. Do istej miery pravdivé, ale ak si uvedomíme obmedzenosť takéhoto localhostu, zistíme, že nejde o to najelegantnejšie riešenie.

Vhodným riešením ostáva správne rozdelenie partícii priradením na /usr a /var, čo však problém nemusí vôbec riešiť, ale ešte viac komplikovať pri ďalšej reinštalácii. Dajmte teda šancu virtuálnem počítaču, tzv. virtualhost, čo je štandart aj pre virtuálne hostingy.

Virtualbox vs QEMU (KVM)

Nakoľko nemám skúsenosti s QEMU a KVM a naviac nemajú žiadne user-friendly GUI, voľba bola jasná – VirtualBox.

CentOS, Ubuntu Server alebo Debian


Sám som sa nevedel rozhodnúť, ktorá distribúcia bude najideálnejšia. Dokumentáciu však najlepšiu ponúka Ubuntu. V prípade, že chcem aj nejaké grafické rozhranie, tak odporúčam Debian alebo Damn Small Linux. CentOS (free Red Hat) ponechávam profesionálom, naviac vyžaduje nadštandartné množstvo resource k svojmu behu.

Koľko hardware resource?

Na server vám postačí 256MB RAM a 8GB na HDD. Verím, že Ubuntu Server sa dokáže zmestiť aj na partíciu o veľkosti 1GB s minimálnym SWAP priestorom a pamäťou 128MB RAM. Fakticky sa už jedná o vyžadované minimu pre akýkoľvek VirtualHost na princípe KVM, ale pre Ubuntu Server rozhodne nebude stačiť. Čiže pod 256MB RAM nemá zmysel uvažovať o virtualhoste.

NAT alebo Bridge?

NAT je dobrý pokiaľ chceme pripojenie z virtuálneho (guest) počítača na náš počítač. Neviem či je vôbec možné pripojiť sa z hlavného počítača na guest počítač, mne sa to po pár pokusoch nepodarilo. Preto použite Bridge alebo Host-only Adapter. Môžte to urobiť dvomi spôsobmi.

  • Použite NAT a zmeňte v XML súbore VirtualMachine HostPort a GuestPort
  • Uspokojíte sa s bridge riešením namiesto NAT
  • Pridáte ďalší sieťový adaptér či už bridge alebo host-only adapter. 
Logika však hovorí, že je vhodnejšie použiť druhú možnosť aby nedošlo k zbytočnému konfliktu medzi NAT a Bridge.

Keď nechceme DHCP, ale statickú IP

Pri každom reštartovaní vášho virtuálneho počítača môže byť priradená automaticky nová IP adresa. Čo znamená, že budete musieť vždy zistiť akú IP adresu dostal. Takto by sme museli vždy meniť hosts súbor. Máme dve možnosti:

  • Priradiť k MAC adrese IP na našom routri (jednoduchšie a ideálnejšie)
  • Ručne zadať IP adresu do konfigurácie systému (komplikovanejšie, ale nezávisle na MAC adrese, možný konflikt)
Nezávisle od MAC adresy

Upravte súbor:

1
sudo nano /etc/network/interfaces

Najdite adaptér, ktorý má hodnotu.

1
2
auto eth0
iface eth0 inet dhcp

Zmeňte jeho hodnoty a zadajte statické, napr.:

1
2
3
4
5
6
7
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

V návode na internete sa píše o ešte ďalších úpravách /etc/resolv.conf pre NS (Name Server – predpokladám prekladač DNS, čiže IP adresy na názov – obdoba hosts). Tejto časti nerozumiem a preto sa jej nebudem venovať. Ak niekto vie o čo ide a ako správne túto časť nakonfigurovať, budem veľmi potešený vysvetleniu a možnosti konfigurácie pre virtuálny hosting.

FAQ
1
sudo ifconfig eth0 //zistite svoju IP adresu pre lokálny počítač

Pokiaľ je sieťová karta z akéhokoľvek dôvodu vypnutá:

1
2
sudo ifconfig eth0 up //alebo sudo ifup eth0
sudo dhclient eth0

1
sudo lshw -class network //Výpis hardware trieda sieť, čiže vypíše sieťové zariadenia

1
ifconfig -a | grep eth //Vypíše aktívne sieťové zariadenia začínajúce ako eth. Zistíte tak číslo vášho adaptéru, ak ich máte viacej

Ako na SSH

V prvom rade potrebujeme na virtuálnom počítači nainštalovaný a bežiači SSH server. To môžete urobiť cez “tasksel” alebo nasledujúcim príkazom:

1
<code>sudo apt-get install openssh-server</code>

Teraz sa môžeme úspešne prihlásiť na náš virtuálny počítač cez SSH napr. príkazom:

1
<code>ssh uzivatel@XXX.XXX.X.XXX</code>

XXX.XXX.X.XXX nahraďte vašou IP adresou vášej sieťovej karty na virtuálnom počítači.

Nazvyme IP adresu localhost

Pamätať si IP adresu nie je až tak komplikované, ak s ňou pracujeme často, avšak krajšie a praktickejšie je priradiť číselnej adrese názov, tzv. host name. To dosiahneme úpravou súboru hosts.

1
<code>sudo nano /etc/hosts</code>

Doplníme alebo nahradíme záznam localhost:

1
<code>XXX.XX.X.XXX localhost</code>

Pokiaľ by sme chceli užívať iný názov, napíšeme namiesto localhost nami preferovaný názov (napr. virtualhost01).

V mnohých prípadoch sa hosts aktualizuje automaticky po zmene alebo po reštartovaní počítača. Pomôcť si však môžeme nasledujúcim príkazom:

1
sudo /etc/init.d/networking restart

Dúfam, že tento návod niekomu pomohol. Pre doplnenie, opravu alebo vaše názory použite komentáre.