* Virtuelle Maschinen
Wir stellen [[https://lea.hochschule-bonn-rhein-sieg.de/ilias.php?ref_id=725052&cmd=view&cmdClass=ilrepositorygui&cmdNode=t3&baseClass=ilrepositorygui][Images]] für virtuelle Maschinen für [[https://www.virtualbox.org/][VirtualBox]] bzw. [[https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/7_0][VMware
Player]] bereit. Diese können Sie nutzen, um die Lösungen zu den
Übungsaufgaben in einer Linux-Umgebung zu entwickeln und Programme mit
root-Rechten zu testen, ohne Ihr lokal installiertes System zu
beeinträchtigen.

** Installation
Voraussetzung ist eine funktionierende VirtualBox- bzw. VMware
Player-Installation. Machen Sie sich bitte mit den grundlegenden
Funktionen dieser Produkte vertraut.

Laden Sie sich wahlweise die [[https://lea.hochschule-bonn-rhein-sieg.de/goto.php?target=file_725053_download][32-bit-]] oder bevorzugt die [[https://lea.hochschule-bonn-rhein-sieg.de/goto.php?target=file_725054_download][64-bit-Variante]] der Images
herunter. Die Images sind mit den Virtualbox Guest Additions 6.0.18 ausgestattet.


*** VirtualBox

1. Starten Sie das Verwaltungs-GUI ~VirtualBox~.
2. Klicken Sie auf ~File~, dann ~Import Appliance~.

  [[file:/uploads/-/system/personal_snippet/54/d1edff9f492503592c3c0827edbe0dd0/vbox0.png]]
  
  
3. Im Dialog wählen Sie das gerade heruntergeladene Image aus, also
   entweder [[https://lea.hochschule-bonn-rhein-sieg.de/goto.php?target=file_645927_download&client_id=db_040811][bsueb.ova]] oder [[https://lea.hochschule-bonn-rhein-sieg.de/goto.php?target=file_645928_download&client_id=db_040811][bsueb64.ova]]. Dann klicken Sie auf ~Next~.

  [[file:/uploads/-/system/personal_snippet/54/47eea1acf912cd7ef798cb47ac93c6fa/vbox1.png]]
  
  
4. Im Dialog ~Appliance Settings~ haben Sie die Möglichkeit, die VM
   detaillierter zu parametrisieren. Im Idealfall klicken Sie nur auf
   ~Import~. 

  [[file:/uploads/-/system/personal_snippet/54/dd5e4319781c955226eff0ddabab26bc/vbox2.png]]

Nun erscheint ein Fortschrittsbalken und nach wenigen Minuten sollte
die virtuelle Maschine ~bsueb~ bzw. ~bsueb64~ im Inventar von
VirtualBox betriebsbereit bereit stehen.


** Anmelden in der VM

In der virtuellen Maschine ist ein Account eingerichtet:

Nutzer: uebung
Passwort: bs-konzepte

root-Passwort: bs-konzepte


* Austausch von Dateien mit dem Hostsystem

Eine Möglichkeit, Dateien mit dem Hostsystem auszutauschen, besteht im
Einsatz von shared folders. Dabei werden Verzeichnisse des Hostsystems
in der VM verfügbar gemacht.

Stellen Sie zunächst das Verzeichnis in VirtualBox bereit:

1. Starten Sie die virtuelle Maschine.
2. In der Menuleiste der VM klicken Sie auf ~Devices~, dann 
   ~Shared Folders~ und ~Shared Folders Settings~.
3. Wählen Sie nun den Eintrag ~Machine Folders~ aus und klicken Sie
   rechts auf das Pluszeichen.
4. Füllen Sie nun den Dialog ~Add Share~ aus. ~Folder Path~ bezeichnet
   das Verzeichnis auf dem Hostsystem, das Sie in der virtuellen
   Maschine verfügbar machen wollen. Das Verzeichnis auf dem
   Hostsystem muss existieren. ~Folder Name~ wird automatisch
   ausgefüllt. ~Mount point~ bezeichnet den Einhängepunkt _in_ der
   virtuellen Maschine. Der Pfad ~/home/uebung/~ ist vorgegeben, den
   Pfadanteil ~loesungen~ können Sie nach Bedarf anpassen. Markieren Sie
   noch die Einstellungen ~Auto-mount~ und ~Make Permanent~ und bestätigen
   Sie mit ~OK~.

   [[file:/uploads/-/system/personal_snippet/54/8c9c756ba835d681eced9f1f2bfaae39/vbox10.png]]
   
   Nun können Sie das Verzeichnis in der virtuellen Maschine verwenden:

5. Melden Sie sich in der virtuellen Maschine mit dem uebung-Account an und
   öffnen Sie ein Terminal. Der Inhalt des shared folder sollte nun im Verzeichnis 
   ~/home/uebung/loesungen~ verfügbar sein.
   
Falls Sie eine ältere Version von Virtual Box einsetzen, müssen Sie ggfs.
den shared folder manuell in die virtuelle Maschine einhängen. Legen Sie 
dazu ein Arbeitsverzeichnis ~/home/uebung/loesungen~ an, dort wird das Verzeichnis
vom Hostsystem verfügbar sein. Hängen Sie anschliessend das Verzeichnis in der
virtuellen Maschine ein.

#+begin_src shell
mkdir /home/uebung/loesungen
sudo mount -t vboxsf -ouid=uebung <folder name> /home/uebung/loesungen
#+end_src

Ersetzen Sie den Platzhalter <folder name> mit dem in Schritt 4
ermittelten Wert von ~Folder Name~. Wenn Sie das Kommando absenden,
werden Sie nach dem Passwort für den Account ~uebung~ gefragt. 

[[file:/uploads/-/system/personal_snippet/54/f62116861a467dc4e5a88e0137b0f0fc/vbox12.png]]

Der shared folder sollte nun auch für ältere Versionen von Virtual Box verfügbar sein. Dieser
Schritt ist nicht persistent und muss nach dem Starten der virtuellen Maschine erneut
eingegeben werden. Alternativ können Sie einen Eintrag in der Datei ~/etc/fstab~ anlegen.

* Schriftgröße in der VM
Abhängig von der Konfiguration Ihres Rechners kann es sein, daß die Schrift in der virtuellen
Maschine sehr klein ist. Ein Lösungsansatz ist es, in der VM nach ~/etc/lightdm~ zu navigieren
und in der Datei ~lightdm.conf~ im Abschnitt ~[SeatDefaults]~ die Einstellung

#+begin_src verbatim
xserver-command=X -dpi 200
#+end_src

einzufügen. In der Datei ~lightdm-gtk-greeter.conf~ wird im Abschnitt ~[greeter]~ die Einstellung

#+begin_src verbatim
xft-dpi=200
#+end_src

eingefügt bzw. aktiviert. Danach reboot. Der numerische Wert (200 im Beispiel) ist jeweils
verhandelbar, je größer (in Grenzen) der Wert, desto größer die Schrift.

Falls Sie ohne graphische Arbeitsoberfläche in der VM arbeiten, können Sie den Font mit

#+begin_src verbatim
dpkg-reconfigure console-setup
#+end_src

neu einstellen. Beide Varianten müssen mit root-Rechten ausgeführt werden.