Virtuelle Betriebssysteme

Simulation kompletter PCs

Es ist möglich, einen kompletten PC mit seiner gesamten Hardware durch ein Programm zu simulieren. Auf einem derartigen virtuellen PC lassen sich Betriebssystem und Programme installieren und betreiben. Die Methode der "Virtualisierung" bietet interessante Möglichkeiten und wird in modern organisierten Betrieben immer häufiger eingesetzt.
Betriebssystem Das Software-Fundament eines PC
Architektur Technische Möglichkeiten zur PC-Simulation
Möglichkeiten Argumente und Einsatz-Gebiete für virtuelle PC
Ausbildung Verwendung von virtuellen PC in einem IT-Lehrsaal
Entwicklung Virtuelle PC als ideale Test-Systeme
Software Übersicht über aktuelle Virtualisierungs-Software
Virtuelle PC auf jedem PC
Virtuelle PC auf jedem PC
Konsequente Virtualisierung
Virtuelle PC nur auf Windows-PC
Verwandte Themen VNC zur Fernsteuerung und Fern-Wartung (Details), XAMPP
Links Ausgewählte Links zum Thema 'Virtuelle PC'

Architektur

Simulation

Die Simulation technischer Geräte ist von Flug-Simulatoren und Auto-Simulatoren allgemein bekannt. Es ist daher vorstellbar, auch einen Computer durch ein Programm zu simulieren.

Zur technischen Realisierung gibt es mehrere unterschiedliche Möglichkeiten.
Die Diagramme dieses Kapitels sind nur mit einem modernen Browser sichtbar, der → SVG-ObjektGrafik beherrscht.

Einfaches Betriebssystem

Bei jedem einfachen PC vermittelt das installierte Betriebssystem zwischen der Hardware und den Programmen.
Die Programme sind an das jeweilige System gebunden, d.h. es können keine Programme eines anderen Systems laufen.
Immerhin kann man mehrere Festplatten verwenden, oder eine Platte in 'Partitionen' teilen: Dann kan man auf jeder (Teil)-Platte ein anderes System installieren. Ein System-Wechsel erfordert jedoch den Neustart des PC.

Virtualisierung

Ein Virtualisierungs-Programm läuft auf dem realen (Host)-System wie jedes andere Programm. Es simuliert die Hardware eines kompletten (Gast)-PC. Auf dieser Grundlage kann man jedes beliebige Betriebssystem und dessen Programme installieren.
In dieser Konfiguration kann man gleichzeitig die Programme beider Betriebssysteme betreiben.

XEN ↓

Ein 'Hypervisor' vermittelt zwischen der Hardware und beliebig vielen Betriebssystemen. Der Hypervisor ist sehr schlank, da er nur Systeme versorgt und weder Programme laufen lassen kann, noch ein User-Interface besitzt.
Die Hardware wird nicht simuliert, sondern jedes System erhält darauf Zugriff.
Damit ist jedes installierte Betriebssystem virtuell, läuft jedoch mit maximaler Geschwindigkeit.

Umgebung

Diese Variante verwendet kein 'echtes' virtuelles Betriebssystem, sondern simuliert lediglich einige Teile der jeweiligen Programm-Umgebung (Environment).
Je nach Version laufen darauf Programme eines anderen Systems mit mehr oder weniger Erfolg.

Möglichkeiten und Vorteile virtueller Computer

Die Simulation eines PC - komplett mit Hardware und Betriebssystem - ist relativ aufwändig. Derartige Programme sind schon lange bekannt, wurden jedoch wegen des hohen Bedarfs an Resourcen nur wenig verwendet. Heutige PC verfügen über so viel Leistung, dass die Simulation eines oder mehrerer virtueller PC mit brauchbarer Geschwindigkeit erfolgt.
Damit bieten sich viele Vorteile, die von modernen Unternehmen zunehmend genutzt werden.
Aktuelle Betriebssysteme sollen sehr viele unterschiedliche Ansprüche erfüllen. Das macht sie groß, schwerfällig und empfindlich.
Eine komplette Installation inklusive Software und Konfiguration ist sehr aufwändig. Dehalb wird ein ungeheurer Aufwand betrieben, um derartige Saurier-Systeme zu schützen und bei Bedarf zu reparieren.
Virtuelle PC werden spezialisiert eingerichtet und können auf die meisten schwerfälligen Komponenten verzichten.
Für mehrere Arbeitsgebiete kann man den jeweils optimal konfigurierten virtuellen PC einrichten und bei Bedarf sogar gleichzeitig betreiben.
Bei Beschädigung wird ein virtueller PC einfach gelöscht und durch eine neue Kopie ersetzt.
(Keine) Daten !
Auf einer virtuellen Festplatte speichert man nur temporäre Daten. Wichtige Daten werden besser auf einem → Fileserver oder in einer Datenbank gespeichert und entsprechend gesichert.
Dazu hat ein virtueller PC Zugriff auf einen 'SharedFolder' auf der reale Festplatte des gastgebenden PC, besser jedoch auf alle im Netzwerk erreichbaren Fileserver - wenn das in der Konfiguration erlaubt wurde.

Netzwerk und Internet

Ein virtueller PC hat Zugang zu allen Resourcen des gastgebenden PC und des lokalen Netzwerks - wenn das in der Konfiguration erlaubt wurde. Dazu gehören alle erreichbaren Festplatten, CD- und DVD-Laufwerke, USB-Speicher, Drucker, alle erreichbaren Server und natürlich auch das Internet.

Verfügbarkeit

Virtuelle PC können heute auf jedem gängigen Linux- Apple- oder Windows-PC laufen. Dabei lassen sich virtuelle Systeme jeder Familie gemischt verwenden, z.B. virtuelle Linux-PC auf realen Linux- oder Windows-PC und umgekehrt.

Einzige Bedingung ist die PC-Leistung: Wenn man virtuelle PC routinemäßig einsetzen will, dann sind die besten verfügbaren PC-Boxen gerade gut genug. Nur mit reichlich Hauptspeicher (>2 GB), mindestens einem schnellen Prozessor und einer großen Festplatte laufen virtuelle PC etwa so schnell wie reale PC auf durchschnittlicher Hardware.

Durch Spezialisierung lassen sich virtuelle PC besonders schlank und schnell einrichten. Bei geschickter Konfiguration sind diese virtuellen Systeme sogar deutlich schneller als ihre realen Gastgeber (Hosts).

Beschleunigung

Virtuelle PC können auf alle überflüssigen Komponenten verzichten. Durch Verzicht auf den Overhead werden sie überraschend schnell.

Anti-Viren Software, persönlicher Firewall, Phishing-Filter und viele andere Komponenten fressen heute den größten Teil der PC-Leistung. Wenn man diese Aufgaben auslagert, dann wird der Arbeits-PC schlagartig beschleunigt.

Die Auslagerung erfolgt z.B. an einen Server, an den Router (Verbindung mit dem Internet), und zwar am besten an speziell dafür eingerichtete virtuelle PC.

Damit dem Arbeits-PC nicht passiert, wenn doch einmal ein Virus hinein findet, wird auch er virtuell angelegt. Ein beschädigter virtueller Arbeits-PC wird einfach gelöscht und durch eine saubere Kopie ersetzt.

Installation ohne Risiko

Vor allem auf Windows ist eine verlässliche und vollständige Entfernung von installierten Programmen, Versionen oder Updates kaum möglich.

Zwar gibt es Programme, die jede Änderung überwachen, protokollieren, und (meistens) rückgängig machen können, diese sind jedoch teuer, unhandlich und fressen einen beachtlichen Teil der PC-Leistung.

Die Verwendung von virtuellen PC ist einfacher, billiger und vor allem viel schneller: Da ein virtueller PC praktisch nur aus einer großen Datei besteht, lässt sich davon jederzeit eine Sicherungs-Kopie erzeugen.
Wenn eine Installation nicht zufriedenstellend verlaufen ist, dann löscht man den virtuellen PC und ersetzt ihn durch eine neue - garantiert saubere - Kopie.

Rationalisierung

Schlaue AdministratorInnen verfügen über Sicherungs-Kopien von mehreren virtuellen PC in jedem wichtigen Zustand, z.B.

Roh-PC:   Enthält nur das nach Formatierung neu installierte Betriebssystem und allenfalls einige Werkzeug-Programme.
Büro-PC:   Enthält zusätzlich ein Office-Paket (z.B. LibreOffice), Browser, etwas Grafik und einige oft verwendete Dienstprogramme.
Standard-PC:   Ist für das jeweilige Unternehmen perfekt eingerichtet, alle installierten Programme sind gebrauchsfertig konfiguriert.
Dieser PC ist im lokalen Netzwerk jederzeit (readonly) verfügbar: Jede(r) kann ihren/seinen virtuellen PC löschen und sich eine neue Kopie besorgen.

Das bewirkt eine erhebliche Entlastung der IT-Abteilung: Installation, Konfiguration und Reparatur der Arbeits-PC fallen fast vollständig weg.
Neue Versionen sind viel rascher verfügbar, weil sie von der IT-Abteilung nur an einem einzigen (virtuellen) PC installiert und konfiguriert werden.

Sicherheit

Ist heute ein wichtiges Argument. Virtuelle PC sind allein deshalb schon sehr sicher, weil man sie bei Bedarf rasch und problemlos austauschen kann.
Ein Beispiel ist die Auslagerung kritischer Software (z.B. Firewall, IP-Cop) auf virtuelle PC. Auf diese Weise kann man jeden beliebigen PC mit einen eigenen virtuellen 'Wächter-PC' sichern.
Der virtuelle Wächter-PC wird zwischen das lokale Netzwerk und den realen PC gesetzt. An dieser Stelle kann er den gesamten Daten-Verkehr überwachen.

Selbst wenn es einem Angreifer gelingt, den Firewall zu überwinden, dann ist er immer noch im virtuellen PC (einer Datei !) gefangen und hat keinen Zugriff auf den realen PC.
Darüber hinaus kann man den virtuellen PC bei jedem erkannten Angriff oder noch besser bei jedem PC-Neustart durch eine neue saubere Kopie ersetzen.
Eine andere Variante besteht darin, den virtuellen PC auf einer read-only-Datei oder auf einer CD zu speichern und damit unangreifbar zu machen.

Optimales System für jede Konfiguration

Bei konsequenter Verwendung stellt man für mehrere Konfigurationen den jeweils optimalen PC samt System zusammen. Diese spezialisierten virtuellen PC werden bei Bedarf gestartet, oder können gleichzeitig laufen.

Beispiel LAMP-Server:
Ein eigener virtueller PC arbeitet als Standard → LAMP-Server (Linux Betriebssystem - Apache Webserver, MySQL Datenbank, PHP und Perl). Der Server kann auf den gesamten Desktop mit seinem hohen Grafik-Aufwand verzichten und deshalb sehr schnell arbeiten.

Beispiel Firewall:
Ein eigener virtueller PC (z.B. IPCop) arbeitet als Firewall. Sein Linux-System kann extrem abgemagert werden. Sicherheit und Geschwindigkeit sind optimal, da dieser PC keine anderen Aufgaben hat.

Beispiel Windows:
Ein eigener virtueller PC arbeitet mit Windows. Hier installiert man die wenigen besonderen Programme, die es auf Linux nicht gibt. Das System arbeitet schnell, da man auf alle anderen Programme mit ihren unzähligen Hemmschuhen verzichten kann.

Stromverbrauch

Bei den Betriebskosten eines PC spielt der Stromverbrauch eine immer wichtigere Rolle. In der Praxis laufen die meisten PC nur mit einem kleinen Teil ihrer möglichen Leistung.
Das ist ein starkes Argument, solche PC auf virtuelle PC zu verlagern. Bei kluger Anwendung lässt sich der Stromverbrauch oft erheblich verringern.

Auf einem realen PC können gleichzeitig mehrere virtuelle PC laufen. Sie teilen sich die Leistung des realen PC.
Bei durchschnittlich ausgelasteten (virtuellen) PC nimmt die nutzbare Prozessor-Leistung kaum ab. Allerdings sollte der Hauptspeicher groß genug sein, um alle laufenden virtuellen PC zu versorgen.

Virtuelle Computer in der Software-Entwicklung

Nach jedem wichtigen Meilenstein der Entwicklung muss das Produkt sorgfältig getestet werden. Insbesondere muss das Verhalten beobachtet werden:
Auf unterschiedlicher Hardware, hauptsächlich mit verschieden großem Hauptspeicher.
Auf allen gängigen Betriebssystemen und ihren wichtigsten Varianten.
In unterschiedlicher Umgebung, insbesondere bei Installation gängiger Software (z.B. Office-Pakete)
Wenn man alle sinnvollen Tests durchführen will, dann benötigt man dazu eine große Anzahl realer PC-Boxen, die für den jeweiligen Zweck unterschiedlich ausgerüstet und konfiguriert sind.
Das kostet viel Geld und Platz und bindet organisatorische Resourcen.
Deshalb wurden zum Software-Test schon frühzeitig virtuelle Computer eingesetzt: Man kann sie in großer Zahl mit jeweils genau festgelegter Konfiguration herstellen, auf Datenträgern speichern, einfach transportieren und problemlos verwenden.

Software-Test

Heute ist insbesondere die Zahl der verfügbaren Betriebssysteme rasch gewachsen:
Kommerzielle Windows-Software sollte mindestens mit Windows-2000, Windows-XP und Windows-7 getestet werden, private Software darüber hinaus auch mit Windows-98.
Linux-Software sollte auf allen gängigen Distributionen laufen, das sind derzeit je nach Anspruch 5-10 verschiedene Systeme.

Internet-Seiten und -Programme sollten auf allen gängigen Browsern laufen. Dazu gibt es bereits (kostenlos) fertig konfigurierte virtuelle Browser-Test Systeme (Appliances).

Riskante Tests

Ein virtueller PC besteht lediglich aus einigen kleinen und einer einzigen größeren Datei (der virtuellen Festplatte). Normalerweise wird die komplette Konfiguration (Appliance) im Original gespeichert (auch auf CD), und zur Anwendung nur eine Kopie eingesetzt.
Wenn bei einem problematischen Test das Betriebssystem beschädigt wird, dann löscht man einfach die Festplatten-Datei dieses virtuellen PC und verwendet für den nächsten Test eine neue saubere Kopie.

Diese Technik eines "Wegwerf-Betriebssystems" hat einige IT-Bereiche revolutioniert.
Ein neues Betriebssystem oder neue Software wird z.B. auf einem virtuellen PC installiert. So kann man es in aller Ruhe testen und jederzeit per Mausklick zwischen altem und neuem System wechseln.

Informatik-Ausbildung

Traditioneller PC-Lehrsaal

Ein traditioneller PC-Lehrsaal ist schwierig zu konfigurieren und zu verwalten:

Man muss die Rechte der StudentInnen stark einschränken, da die PC sonst nach wenigen Tagen unbrauchbar werden.

Die installierte Software soll sehr unterschiedliche Anforderungen erfüllen, z.B. der IT-Grundausbildung, Standard Büro-Software, Grafik, CAD und meist auch einer zumindest bescheidenen Entwicklung. Daher wird das System mit zu vielen Programmen überfrachtet und kann trotzdem nicht die Wünsche aller TrainerInnen und AnwenderInnen erfüllen.

Derartige Systeme sind langsam, schwerfällig und erfordern zur laufenden Pflege einen relativ hohen Aufwand.

Deshalb sind sie nur selten aktuell und bieten keine oder zu wenige Alternativen. Ein Kennenlernen oder gar die Installation verschiedener Betriebssysteme ist kaum möglich, wird aber in letzter Zeit immer öfter nachgefragt.

Lehrsaal mit virtuellen PC

An den realen Host-PC eines Lehrsaals laufen lediglich Minimal-Betriebssysteme, die es erlauben, darauf virtuelle PC zu starten.

Als Host-Betriebssystem ist derzeit nur Linux sinnvoll, weil man damit kostenfrei eine schlanke, leistungsfähige und sichere Basis einrichten kann. Alle gängigen Linux-Systeme sind dazu geeignet, und bieten auf Wunsch auch die Möglichkeit der Fernsteuerung.

Ideal geeignet ist ein Linux-System mit X-Windows (X11), jedoch ohne Desktop - aber davor schrecken viele IT-AdministratorInnen noch zurück. Ein gut brauchbarer Kompromiss sind die für Linux verfügbaren Minimal-Desktop-Programme.

Am realen Host-PC läuft lediglich ein winziges Programm, mit dem man einen oder mehrere virtuelle PC zur Verwendung auswählen kann.

Ein gewünschter virtueller PC wird (als Datei) von einem zentralen Download-Server auf die lokale Festplatte kopiert und gestartet. Häufig nachgefragte virtuelle PC kann man auch auf der lokalen Festplatte speichern, man verwendet jedoch auch in diesem Fall nur eine Kopie.
Die Auswahl der virtuellen PC kann man auch zentral durch die/den TrainerIn treffen und in der Pause vor einer LehrEinheit an allen Arbeitsplätze den genau passenden virtuellen PC laden. Diese Arbeit ließe sich sogar automatisch zeit-gesteuert ausführen.

Nach Gebrauch werden alle virtuellen PC gelöscht bzw. durch neue Kopien ersetzt. Die StudentInnen müssen private Daten auf USB-Stick oder über das Internet sichern, genauso wie in den meisten traditionellen Lehrsälen.

Möglichkeiten von virtuellen PC

Ein IT-Lehrsall mit virtuellen PC bietet für die Ausbildung fast ideale Bedingungen:

Man verwendet für jeden gewünschten Kurs den genau passenden (virtuellen) PC: Einen einfachen Minimal-PC für die IT-Grundausbildung, einen Audio-, Grafik- oder MultiMedia-PC für Kunst- oder Medien-Ausbildung, naturwissenschaftlich, mathematisch oder technisch spezialisierte PC, und natürlich Entwicklungs-PC für die fortgeschrittene IT-Ausbildung.

Die StudentInnen erhalten normalerweise alle Zugangs-Rechte. Sie können daher an ihren virtuellen PC auch administrative Arbeiten ausführen, Programme installieren und konfigurieren und sogar formatieren und Betriebssysteme installieren.

Es ist beispielsweise möglich, allen StudentInnen komplett ausgerüstete (virtuelle) Server zur Verfügung zu stellen und damit die Methoden der modernen Informatik zu trainieren.

Wegen der uneingeschränkten Zugangs-Rechte können die verwendeten virtuellen PC natürlich durch die AnwenderInnen beschädigt werden. In diesem Fall löscht man den virtuellen PC und ladet eine neue Version vom Server. Diese Arbeit dauert je nach Größe der Datei und Leistung des Netzwerks einige Sekunden bis Minuten.

Verwaltung

Wenn ein IT-Lehrsaal einmal für virtuelle PC eingerichtet ist, dann ist die laufende Verwaltung trotz des wesentlich größeren Angebots viel einfacher:

Am zentralen Server hält man einige oft nachgefragte virtuelle PC zum Download bereit. Diese Dateien sind nur lesbar (ReadOnly) und daher nicht zerstörbar.

Man kann einigen oder allen TrainerInnen das Recht erteilen, eigene virtuelle PC am Server zu lagern und für die Ausbildung zu verwenden. In diesem Fall sorgen die TrainerInnen selbst für die passende Konfiguration. Die Arbeit der PC-Konfiguration wird damit nicht nur verteilt sondern an die jeweiligen SpezialistInnen delegiert.

Jeder (virtuelle) PC wird nur einmal zentral konfiguriert, und nicht an jedem einzelnen (realen) PC. Das erleichtert die laufende Aktualisierung und ermöglicht es, unmittelbar auf aktuelle Anforderungen zu reagieren.

Virtuelle PC sind portabel: Man kann auch solche Lösungen verwenden, die von KollegInnen anderer Organisationen eingerichtet wurden. Auf diese Weise kann man auch spezielle Kenntnisse nutzen, über die man selbst nicht verfügt.

StudentInnen

Man kann jeden virtuellen PC auch an interessierte StudentInnen weitergeben, wenn das in den Lizenzen der installierten Software erlaubt ist.

Zum Transport der typisch 2...4GB großen Dateien eignet sich jeder USB-Stick.

Es ist nach Erfahrung kein Problem, die Virtualisierungs-Software zu Hause am eigenen PC zu installieren und damit beliebige virtuelle PC zu betreiben. Auf diese Weise können auch wenig erfahrene StudentInnen relativ komplexe Systeme (z.B. Entwicklungs-Umgebungen oder komplette → LAMP-Server) verwenden, zu deren Konfiguration sie selbst nicht in der Lage sind.

AdministratorIn

Die IT-Kenntnisse der Lehrsaal-AdministratorInnen reichen derzeit leider nur selten zum Betrieb eines IT-Lehrsaals mit virtuellen PC.
Es ist notwendig, sowohl die wichtigsten Windows- als auch Linux-Betriebssysteme einigermaßen zu kennen und verwalten zu können.
Fortgeschrittene Kenntnisse der Netzwerk- und Server-Technik sind unentbehrlich, da nicht einige wenige statische PC sondern viele ständig wechselnde PC zu verwalten sind. Beispielsweise müssen die → MAC-Adressen und die Namen aller laufenden realen und virtuellen PC eindeutig sein. Die/der AdministratorIn muss über Werkzeuge und Kenntnisse verfügen, um allfällige Netzwerk-Probleme - möglichst auch mittels Fern-Wartung - zu erkennen und zu beheben.

Beispiele

Als Betriebssystem der realen Host-PC eignet sich z.B. Debian oder OpenSuSE. Der Desktop entfällt, oder man verwendet einen Minimal-Desktop wie XFCE oder IceWM.

Als Virtualisierungs-Software kommt praktisch nur VirtualBox in Frage, das wiederum erfordert die Installation des Java-JRE.

Für die zur Verwaltung und Verteilung benötigten Minimal-Programme gibt es noch keine fertigen Lösungen: Man muss sie von befreundeten KollegInnen kopieren oder selbst herstellen. Kenntnisse von Java und der Linux-Shell sind dazu nützlich.

Ein zentraler Server-PC zum Download der virtuellen PC ist unentbehrlich - normalerweise ein Linux-Server mit mehreren alternativen Download-Möglichkeiten, z.B. mit Samba-FileServer, FTP-Server und Apache-Webserver. Wer das technische Wissen dazu hat, organisiert den Download besonders elegant mit Broadcast oder als Torrent.
Ein DHCP-Server ist notwendig, um allen PC ihre Adressen und weitere Netzwerk-Informationen mitzuteilen. Ein NTP Zeitserver ist notwendig, um die Systemzeit aller PC zu synchronisieren. Ein SSH-Server (OpenSSH) ist zur Fernsteuerung des Servers unentbehrlich, da man diesen aus gutem Grund nicht in einem Lehrsaal aufstellt.
Ein Datenbank-Server (MySQL oder PostgreSQL) sowie ein LDAP-Server ist nicht notwendig, aber praktisch.

Als Betriebssystem der virtuellen PC ist Linux wegen der kostenlosen Lizenzen vorzuziehen. Als Desktop-System ist Ubuntu mit Gnome-Desktop derzeit weit überlegen. Man kann problemlos auch virtuelle Windows-PC herstellen, muss sich bei deren Verwendung jedoch an die Lizenzen von Microsoft halten.

Für die installierte Software gibt es so viel und so gute OpenSource Lösungen, dass man auf kommerzielle Produkte leicht verzichten kann. LibreOffice ist dafür das beste Beispiel.

Einige kommerzielle Programme sind gegen unerlaubtes Kopieren besonders geschützt. Sie lassen sich zwar meist auch auf einem virtuellen PC installieren, laufen jedoch nicht, wenn dieser auf mehrere Arbeitsplätze kopiert wird. Man muss in der Praxis ausprobieren, ob man derartige Software in einem Lehrsaal mit virtuellen PC verwenden kann.

Software

Virtualisierung

Wenn man darunter ein Programm zur Simulation der PC-Hardware versteht, dann sind derzeit folgende Produkte besonders interessant:
Virtual BoxVon Innotek entwickelt, 2008 von Sun aufgekauft, zusammen mit Sun 2009-2010 von Oracle aufgekauft. Benötigt → Java. Java und VirtualBox sind kostenfrei für alle gängigen Betriebssysteme verfügbar. Ausgezeichnete Software, weit verbreitet, jedoch etwas umständlich anzuwenden.
VMwareMarktführer am kommerziellen Markt, bietet eine ganze Palette professioneller Virtualisierungs-Software. Die 'Abspiel'-Software VMWare-Player ist für alle gängigen Systeme kostenfrei. Beste Leistung und einfache Handhabung, aber wegen der Unternehmens-Politik problematisch.
Virtual PCvon Microsoft. Läuft nur auf Windows.

XEN ↓

Derzeit noch wenig eingesetzt, hat vermutlich das größte Potential für die Zukunft.
Auf XEN aufgesetzte virtuelle Systeme laufen genauso schnell wie reale Systeme.
Um XEN voll auszunutzen, muss ein System speziell dafür ausgelegt sein. Viele neuere Linux-Distributionen verwenden bereits XEN oder bieten es als Option.
Für andere Systeme (insbesondere Windows) muss die Hardware simuliert werden. In diesem Fall verwendet man einfacher die gut eingeführten Virtualisierungs-Programme (links).

Emulation

Man kann mit einem Emulator-Programm die Umgebung (Environment) eines anderen Systems nachbauen. Brauchbar, jedoch weit unter den Möglichkeiten echter Virtualisierung.
Wine - Windows-Umgebung auf Linux
andLinux - Linux-Umgebung auf Windows

Fernsteuerung

ist ein anderes Thema, wird jedoch oft mit Virtualisierung verwechselt und vermischt. Man kann damit im Prinzip jeden PC (real oder virtuell) aus der Ferne, d.h. über das Netzwerk oder Internet steuern.
VNCKostenfreie Fernsteuerung für alle gängigen Betriebssysteme.
XmingKostenfreie Fernsteuerung eines Linux-PC von einem Windows-PC
TeamViewer Kostenfreie Fernsteuerung für alle gängigen Betriebssysteme.

Portable Software

Dieses Thema hat nichts mit Virtualisierung zu tun. Man kann damit zwar nur Programme für das installierte Betriebssystem verwenden, muss diese jedoch nicht installieren.

Damit lässt sich z.B. die wichtigste Windows-Software auf einem USB-Stick installieren und portabel auf jedem Windows-PC anwenden - auch ohne Administrator-Rechte.

Der führende Anbieter PortableApps ist einen Besuch wert.

Beispiele:
LibreOffice (Text, Kalkulation, Grafik, Präsentation), kostenfrei und kompatibel mit dem Office-Paket von Microsoft.
Firefox Browser - schneller, technisch überlegen und sicherer.
Grafik (Gimp, IrfanView, LibreOffice) für jeden Bedarf
Datenbank (SQLite) usw. usw.
Tipp: Suchen sie nach 'portabel' oder 'portable', kombiniert mit dem Namen oder Typ eines Programms.

VirtualBox

Mit dem kostenfreien Virtualisierungs-Programm VirtualBox lassen sich virtuelle PC auf allen gängigen Betriebs-Systemen erstellen und betreiben.

VirtualBox wurde 2008 mit dem deutschen Hersteller Innotek von Sun aufgekauft und 2009-2010 zusammen mit Sun von Oracle.
Offene Software scheint bei Oracle nicht besonders beliebt zu sein, daher sollte man besser nicht mit einer kostenfreien Zukunft von VirtualBox rechnen. Das Programm ist jedoch ausgezeichnet und wäre auch einen angemessenen Preis wert.
VirtualBox benötigt Java als Grundlage - genauer den ebenfalls kostenfreien Java Runtime Engine (JRE), den man vorher installieren sollte.

Tipp: Auf Windows werden alte JRE-Versionen nicht automatisch ersetzt. De-installieren sie daher Java vor der Installation einer neuen JRE-Version.
Alle VirtualBox-PC werden von einem zentralen Manager-Programm verwaltet. Zum Transport muss man jeden virtuellen PC zeitraubend exportieren, danach wieder importieren. Das ist lästig, hat aber den Vorteil relativ kleiner Transport-Dateien. Alternativ kann man VirtualBox auch von einer Konsole (Linux-Shell oder Windows Eingabeaufforderung cmd.exe) steuern, diese Möglichkeiten sind jedoch wenig bekannt. Sie sind besonders zur professionellen Verwaltung, Fernsteuerung und Automatisierung geeignet.
Alle gängigen Linux-Systeme bieten volle Unterstützung für VirtualBox. Man kann es mit der Standard Software-Verwaltung jedes Systems mit Mausklick installieren, de-installieren oder erneuern.

Leider ist VirtualBox nach einem Kernel-Update oft nicht mehr verwendbar. Man kann versuchen, das Programm neu zu compilieren:
# /etc/init.d/vboxdrv setup
Wenn das nicht funktioniert, dann ist eine komplizierte Reparatur notwendig. Einfacher ist oft hilft De-Installation und Neu-Installation.
Die Installation auf Windows erfolgt problemlos, man muss sie jedoch wie üblich selbst ausführen.

VMware

VMware bietet zahlreiche kommerzielle Virtualisierungs-Lösungen, nicht gerade billig, aber an der technologischen Spitze. Einige Produkte sind kostenfrei, darunter der hier vorgestellte VMware-Player (Versionen für alle gängigen Betriebssysteme). Man kann damit virtuelle VMware-PC herstellen und verwenden. Es gibt zwar ein VMware-Manager-Programm zur Erstellung neuer und Verwaltung vorhandener virtueller PC, man kann diese jedoch auch einfach mit Mausklick starten.
Zum Transport kopiert man die PC-Dateien ohne Umwege, z.B. zwischen der lokalen Festplatte und einem USB-Stick.
Die besonders 'misstrauische' Politik des Herstellers bedingt leider einen wesentlichen Nachteil: Eine beschädigte Version des VMware-Players lässt sich meist nicht oder nur mit großem Aufwand reparieren oder erneut installieren. Der Installer erkennt keine Defekte (oder ignoriert sie) und verweigert eine erneute Installation.
Aus ähnlichen GrĂ¼nden gibt es offenbar auf Linux-Systemen nur geringe Unterstützung für VMware.
Das Programm läuft zwar sehr stabil, hat aber eine Schwachstelle: Die Funktion 'Shrink' der zu installierenden VMware-Tools ist sehr empfindlich und bringt manchmal das Programm oder sogar das Betriebssystem zum Absturz. Aus den genannten Gründen kann man den VMware-Player nach einer Beschädigung weder verwenden noch reparieren oder neu installieren. Damit sind auf einen Schlag alle vorhandenen virtuellen PC wertlos...

XEN - Virtueller Betriebssystem-Server

XEN XEN bietet eine wirklich konsequente Virtualisierung. XEN ist ein "Hypervisor", der alle Treiber enthält und zwischen Hardware und (beliebig vielen) virtuellen Betriebssystemen vermittelt. Die Hardware der virtuellen PC wird nicht simuliert, sondern die besonders eingerichteten 'Para-Virtualisierten' Systeme greifen (besonders schnell, ohne eigene Treiber) über den Hypervisor auf die Hardware zu. Alle neueren Linux-Distributionen bieten XEN an, bzw. werden ohne weitere Maßnahmen bereits auf XEN installiert. In diesem Fall läuft auch das regulär installierte System bereits virtuell !
Ein virtueller XEN-PC wird als 'Domain' oder VM bezeichnet.
Man benutzt das erste virtuelle System (Dom0, VM-Server) zur Steuerung von XEN. Dieses System wird meist extram sparsam ausgelegt und führt dann keine andere Aufgabe aus. Als Dom0-System ist derzeit nur ein Linux-System sinnvoll. Die Fernsteuerung des Dom0-Systems und damit auch die Steuerung von XEN erfolgt mit SSH-(Konsole), oder über eine grafische Oberfläche mit VNC.
Auf der Grundlage des (mit Dom0 steuerbaren) XEN Hypervisors werden weitere virtuelle PC (DomU für 'unprivileged' oder VMs) eingerichtet.
Para-Virtualisierte Systeme sind (Linux)-Systeme, die speziell für XEN leicht modifiziert wurden und besonders rasch laufen.
Mit Windows ist das derzeit nicht möglich. Solche Systeme müssen mit eigenen Treibern 'voll virtualisiert' werden und laufen etwas langsamer.
Das Dateisystem einer VM kann auf realer Hardware (Festplatte oder Partition) laufen, auf einem Logischen Volume (LVM) oder auf einer als Volume-Image dienenden Datei. Derzeit unterstützt XEN keine auswechselbare Volumes wie CDs oder DVDs. Die Installation der VMs muss daher über das Netzwerk oder mit *.iso-Dateien erfolgten.
Die virtuellen Netzwerk-Interface werden mit speziellen → MAC-Adressen ausgestattet, damit Konflikte mit realen Interface verhindert werden. Da als VMs meist Server und keine Desktop (AnwenderInnen)-PC eingesetzt werden, werden auch die → IP-Adressen meist fix zugewiesen und nicht dynamisch per → DHCP.
Die Steuerung von XEN erfolgt mit Hilfe des Virt-Managers xm (Shell Konsolen-Programm).  

Virtual PC - nur auf Windows-Host-PC

Microsoft bietet ein eigenes Virtualisierungs-Produkt an. Virtual PC (VPC) läuft nur auf Windows-PC, d.h. der reale Host-PC muss mit einem (neueren) Windows-System laufen.
Die erzeugten VPC sind nur auf andere Windows-Host-PC portabel. Diese Lösung hat daher gegenüber ↑ VirtualBox oder ↑ VMware entscheidende Nachteile, sie ist in einem typischen gemischten Umfeld nicht verwendbar.
Offiziell werden nur die professionellen Versionen der Windows-Systeme unterstützt. In der Praxis läuft VPC jedoch auf allen neueren Windows Systemen. Allerdings brechen manche Installer ab, wenn man versucht, VPC auf einer Home-Version zu installieren. Technisch sind diese Systeme natürlich gleichwertig, aber der Hersteller will offenbar auf seine Art Werbung für die teuren Profi-Versionen machen ...

Fernsteuerung mit VNC   (→ Details)

VNC VNC   (Virtual Network Computing) ist eine Software von RealVNC zur Fernsteuerung beliebiger PC.

VNC ist in professioneller Qualität für alle gängigen Betriebssysteme (Linux, Windows) kostenfrei erhältlich.
Details zu VNC

VNC ist kein virtuelles Betriebssystem, sondern eine grafische Fernsteuerung für reale PC. Für PC-AnwenderInnen stellt sich ein mit VNC gesteuerter PC genauso dar wie ein virtueller PC: Als Fenster am eigenen PC.
Die Fernsteuerung erfolgt wahlweise mit einem eigenen Programm, oder - wesentlich intelligenter - mit dem Browser. Einzige Bedingung ist die Installation von → Java.

Wer genug Speicher und Rechenleistung spendiert, kann auch virtuelle PC problemlos mit VNC betreiben, d.h. nicht an jenem PC oder Server, welcher den virtuellen PC (als Programme) betreibt, sondern an jedem anderen PC im lokalen Netzwerk oder sogar im Internet.

Ausgewählte Alternativen

Webserver als Alternative: Ein Webserver (ohnehin auf fast allen Servern installiert) liefert Daten (z.B. Logs, Warnungen, Mails, ...) und kann auch mit Hilfe dynamischer Webseiten (Perl, PHP, ...) gesteuert werden. Das ist für vorhersehbare periodische Arbeiten meist besser als VNC.

SSH-Konsole als Alternative: Programm wie z.B. PuTTY verbinden mit einer Konsole. Das eignet sich nur für erfahrene AdministratorInnen mit guten → Shell-Kenntnissen, ist aber genau in diesem Fall meist besser als VNC.


XHTML CSS