Ubuntu VM installieren und konfigurieren
Tach zusammen.
Ich bin vor kurzem schweren Herzens von Ubuntu auf Mac OS X umgestiegen, da ich natürlich auch mit dem Mac a bissl programmieren wollte musste ein Entwicklungssystem her. Unter Ubuntu war das kein Problem, da konnte ich mir alles mal fix installieren und benutzen, diesen Luxus wollte ich mir natürlich nicht entgehen lassen und habe deshalb XAMPP und MAMP ausgeschlossen. Auch der Mac interne Apache samt PHP sagte mir nicht zu weil
a) es ungewohnt war
b) nicht immer die aktuellen Pakete verfügbar sind
c) wollte ich die Entwicklungsumgebung gerne unabhängig vom Betriebssystem haben
Also entschloss ich mich eine Ubuntu 11.04 Server VM als Entwicklungsumgebung herzunehmen. Wie ich bei der Einrichtung des Systems vorgegangen bin, möchte ich euch im folgenden Beitrag ein bisschen erläutern.
Zunächst meine Anforderungen an das Entwicklungssystem:
- Ubuntu 11.04 Server
- Internet- und dadurch Updatefähig
- Steuerung/Verwaltung über das Host System per ssh
- mein /var/www auf dem Entwicklungssystem sollte ein Ordner auf dem Hostsystem sein um ohne lästiges rsyncen den aktuellen code auf dem Entwicklungssystem zu haben
- Entwickeln sollte auch ohne Internet möglich sein
Nachdem die Anforderungen klar waren ging es dann auch gleich los:
- VirtualBox installieren
- Ubuntu 11.04 Server Iso ziehen
- Ubuntu mit sämtlichen benötigten Paketen installieren
- Netzwerk Einstellungen an der VirtualBox vornehmen
- Damit die VM Zugang zum Internet hat, muss zunächst ein NAT Adapter eingerichtet werden. Dieser ist in der Regel bereits per Default aktiv.
- Um jetzt die Kommunikation mit dem Host System zu ermöglichen muss ein weiterer Host-Only Adapter eingerichtet werden. Dazu muss zunächst ein Host-Only Network angelegt werden. Die Option findet ihr unter VirtualBox -> Preferences ->Network
Jetzt müsst ihr dem Adapter nur noch eine IP Adresse geben und den DHCP Server deaktivieren.
- Netzwerkeinstellungen in der VM vornehmmen
- Wechselt nun wieder in eure VM und legt ein Neues Network Interface an. Dazu bearbeitet ihr einfach die /etc/network/interfaces. Beachtet dabei, dass die IP Adresse die ihr vergebt im gleichen Subnetz wie der vorher angelegte Host Only Adapter sein muss.
So könnte die Datei aussehen:
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.100.101 netmask 255.255.255.0
- Startet den server mit shutdown -r now neu
- Überprüft nach dem Neustart per ifconfig ob das neue interface auch korrekt angelegt wurde.
- Wenn alles geklappt hat könnt ihr euch nun per ssh auf die VM schalten.
- Wechselt nun wieder in eure VM und legt ein Neues Network Interface an. Dazu bearbeitet ihr einfach die /etc/network/interfaces. Beachtet dabei, dass die IP Adresse die ihr vergebt im gleichen Subnetz wie der vorher angelegte Host Only Adapter sein muss.
- Die /var/www Freigabe einrichten
- Nachdem ich mich vergeblich mit AFP und SMB herumgeschlagen habe, bin ich bei NFS hängen geblieben. Das Erstellen von NFS Freigaben gestaltet sich unter Mac OS X ziemlich einfach:
- Öffnet als Admin die Datei /etc/exports mit einem Editor eurer Wahl.
sudo vi /etc/exports
- Fügt nun eine Zeile mit folgendem Schema in Datei ein und speichert sie anschließend:
Users/pew/Development -mapall=pew -network 192.168.100.0 -mask 255.255.255.0
Users/pew/Development ist das Verzeichnis welches freigegeben werden soll, mapall mappt alle nfs Benutzer auf den lokalen Benutzer pew, 192.168.100.0 ist das Host-Only Netzwerk mit der entsprechenden Subnetzmaske.
- Um zu überprüfen ob alles korrekt funktioniert gebt auf der Konsole
showmount -e
ein. Es sollte eine ähnliche Ausgabe erscheinen:
pew-mbp:~ pew$ showmount -e Exports list on localhost: /Users/pew/Development 192.168.100.0
Falls nicht, kann man die Einträge manuell mit
sudo nfsd update
einlesen.
Falls immer noch nichts geht kann man per
sudo nfsd checkexports
schauen ob alles mit Einträgen korrekt ist.
Manchmal läuft der NFS Deamon auch noch nicht, dass kann per
sudo nfsd status
überprüft und ggf. mit
sudo nfsd enable
eingeschaltet werden
- Die NFS Freigabe in der VM mounten
- Gleich ist es geschafft, wir müssen nun nur noch die NFS Freigabe mounten. Zunächst installiert ihr das NFS Paket
sudo apt-get install nfs-common
Jetzt kann die Freigabe per
mount -t nfs 192.168.100.100:Users/pew/Development /var/www
gemounted und munter drauf los entwickelt werden
(Wenn man nicht jedes Mal per Hand mounten will, empfehle ich noch den Eintrag die /etc/fstab)
- Gleich ist es geschafft, wir müssen nun nur noch die NFS Freigabe mounten. Zunächst installiert ihr das NFS Paket
So einfach war das, ich hoffe ich konnte mit diesem Beitrag dem ein oder anderen helfen.