Die Flexibilität von Linux ist einer der vielen Vorteile. Ein Aspekt dieser Flexibilität ist insbesondere, dass der Benutzer seine Computerumgebung vollständig anpassen kann. Angenommen, Sie sind ein talentierter Linux-Fan (Sie sind es natürlich), aber Sie teilen einen Computer mit jemandem, der ein anderes Betriebssystem bevorzugt. Sie könnten Dual-Boot, aber was passiert dann mit all den wichtigen Hintergrund-Prozessen, die Sie ausgeführt haben? Lassen Sie uns Ihr System so einrichten, dass sich der Benutzer bei der Anmeldung direkt an eine virtuelle Maschine mit dem von ihm bevorzugten Betriebssystem wendet.

Voraussetzungen

Wir werden VirtualBox für diesen Artikel verwenden, aber Sie sollten in der Lage sein, das Konzept anzupassen, wenn Sie eine andere VM-Anwendung verwenden (es muss nur die Möglichkeit haben, eine VM über die Befehlszeile zu starten). Die ersten Schritte, die Sie ergreifen müssen, sind:

  1. Installieren Sie VirtualBox.
  2. Erstellen Sie eine virtuelle Maschine mit Ihrem bevorzugten Betriebssystem (MTE hat die Installation von Windows und Mac OS X bereits abgedeckt).
  3. Starten Sie Ihre neue virtuelle Maschine und konfigurieren Sie sie nach Geschmack.

Der Linux-Anmeldeprozess

Es ist nützlich, ein wenig darüber zu verstehen, wie der Anmeldevorgang in Linux-GUI funktioniert. Wenn das System startet, wird automatisch ein Displaymanager ausgeführt ... deshalb werden Sie heutzutage mit einer netten grafischen Anmeldung und nicht mit einer einfachen alten Eingabeaufforderung beim Start begrüßt. Sobald Sie sich angemeldet haben, startet der Displaymanager eine Anwendung oder ein Skript, das wiederum eine Reihe anderer Programme, Skripts und Prozesse startet. In einer KDE-Umgebung kümmert sich beispielsweise der Anzeigemanager nicht um alle Hintergrundprozesse - er muss nur das Skript " startkde " ausführen . Das Start-Skript wird so lange ausgeführt, wie Sie den Desktop verwenden. Sobald Sie Ihren Desktop verlassen (indem Sie eine Option wie "Abmelden" oder "Neu starten" verwenden), werden alle Prozesse des Desktops beendet und wenn sie fertig sind, weiß das Start-Skript, dass es beendet werden kann. Der Displaymanager wartet im Hintergrund, und wenn das Start-Skript beendet wird, übernimmt der Displaymanager die Kontrolle und zeigt Ihren Anmeldebildschirm erneut an.

Einrichten eines benutzerdefinierten Start-up-Skripts

Um es einem Benutzer zu ermöglichen, sich direkt in eine VM einzuloggen, müssen wir lediglich ein Start-Skript erstellen, das diese VM automatisch für sie ausführt. Der erste Schritt besteht darin, dieses Skript zu erstellen, das in Linux einfach ist. Erstellen Sie eine neue Textdatei (nennen wir es winxp-session ), und fügen Sie Folgendes ein:

 #! / bin / bash VirtualBox --startvm [Name der von Ihnen erstellten VM 

Sie können versuchen, den Virtual Box-Befehl vom Terminal auszuführen, um sicherzustellen, dass er korrekt funktioniert ... wenn nicht, haben Sie wahrscheinlich den Namen der VM falsch geschrieben (denken Sie daran, wenn der Name Ihrer VM Leerzeichen hat, müssen Sie sie einzeln einschließen) Zitate). Führen Sie als nächstes den folgenden Befehl aus, um das Skript ausführbar zu machen:

 chmod 755 winxp-session 

Dann müssen Sie diese Datei an einen Ort kopieren, an dem sie ausgeführt werden kann. Das Verzeichnis "/ usr / bin" ist hier ebenso möglich wie "/ usr / local / bin". Für diese beiden Standorte müssen Sie root sein. Verwenden Sie den folgenden Befehl, um es in "/ usr / bin" zu platzieren:

 sudo cp winxp-session / usr / bin 

Der letzte Schritt besteht darin, eine Verknüpfung an dem Ort zu erstellen, an dem der Anzeigemanager nach verfügbaren Start-Skripts sucht. In Ubuntu befindet sich dies im Verzeichnis "/ usr / share / xsessions /". Erstellen Sie mit einem Texteditor eine neue Datei (z. B. "/usr/share/xsessions/winxp-session.desktop"):

 [Desktopeintrag] Name = Windows XP Exec = / usr / bin / winxp-session 

Wenn Sie sich auf dem Desktop befinden, melden Sie sich ab. Ihr neuer VM-basierter Desktop wird für Sie bereitstehen, wenn der Displaymanager erneut gestartet wird. Beachten Sie jedoch, dass diese Sitzung nur für den Benutzer verfügbar ist, der die VM erstellt hat (da sie nur im Verzeichnis "~ / VirtualBox VMs /" dieses Benutzers vorhanden ist).

Lassen Sie uns wissen, ob dies für Sie hilfreich ist oder ob Sie Fragen haben.