Befehl als anderer Benutzer ausführen

Hin und wieder möchte man einen Befehl als anderer Benutzer als sich selbst oder dem Root ausführen. In diesem Falle hilft die folgende Zeile weiter.

$ sudo -u BENUTZER BEFEHL

Hat man kein sudo zur Verfügung geht auch die folgende Zeile.

$ su BENUTZER -c BEFEHL

Dieser Eintrag ist für alle die es genauso oft vergessen wie ich!

Linux Kernel Header installieren

In manchen Fällen benötigt man die Linux Kernel Header. Mittels dem Befehl uname -r kann man die aktuelle Kernelversion auslesen.

$ sudo apt-get install linux-headers-$(uname -r)

Die Kombination von apt und uname installiert dann den Header für den installierten Kernel.

Gemeinsame Ordner unter Ubuntu Server 10.04 in VirtualBox einrichten

Wie ich bereits im vorherigen Artikel dieser Serie berichtet habe, bieten die Gasterweiterungen für VirtualBox Gemeinsame Ordner an. Diese können dann vom Gast einfach eingebunden werden und z.B. wie eine Netzwerkfreigabe verwendet werden.

Um die Gemeinsamen Ordner zu aktivieren, muss in den Einstellungen des Gastsystems – im Bereich Gemeinsame Ordner – ein Ordner hinzugefügt werden. Dieser kann diverse Optionen haben. (nur lesbar, automatisch einbinden, permanent. Siehe Screenshot.)Virtualbox Gemeinsame Ordner

Die Einbindung bei Windowssystemen klappt bei Auswahl des Häkchen „automatisch Einbinden“ ohne Zutun. Um diesen Ordner nun auf einem Linux Gast z.B. Ubuntu 10.04 Server einzubinden, muss ein Mountpunkt definiert werden. Dann kann eingebunden werden.

$ mkdir /home/sven/share
$ sudo mount -t vboxsf SharedFolder /home/sven/share

Wenn man nicht den Root User verwendet, sondern der aktuelle Benutzer die Rechte am eingebundenen Ordner haben soll, kann man einfach die Benutzer- und Gruppen ID (uid,gid) in die Mount Optionen einfügen.

$ sudo mount -t vboxsf -o rw,uid=1000,gid=1000 SharedFolder /home/sven/share

Alternativ kann man auch eine Permanente Einbindung machen. Hierzu muss die Datei rc.local bearbeitet werden.

$ sudo nano /etc/rc.local

Sollte darin zuvor keine Änderung gemacht worden sein, sollte sie jetzt so aussehen.

!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
mount -t vboxsf -o rw,uid=1000,gid=1000 SharedFolder /home/sven/share
exit 0

Wichtig! Die Raute in der ersten Zeile muss entfernt werden, so dass nur !/bin/sh -e da steht. Ausserdem muss die uid und gid auf den entsprechenden Benutzer angepasst sein. Der Befehl id zeigt die benötigte Information an.

Beim nächsten Neustart steht dann der Ordner dauerhaft bereit.

VirtualBox Gasterweiterungen auf Ubuntu Server 10.04 installieren

Zum Testen setze ich in meiner Entwicklungsumgebung unter anderem auch auf Linux-Server als Virtuelle Maschinen. Da ich hier keine grafische Oberfläche wie Gnome oder KDE installiert habe, sind die Gasterweiterungen von VirtualBox eigentlich nicht nötig. Die Gasterweiterungen stellen aber die Funktion „Gemeinsame Ordner …“ bereit, die beim Testen einiges vereinfacht.

Einige Bedingungen sollten zunächst erfüllt sein, bevor man mit der Installation beginnen kann.

$ sudo apt-get install dkms build-essential

Im Anschluss sollte das System neu gestartet werden.

Nach dem Neustart muss das ISO Image mit den Gasterweiterungen von VirtualBox geladen werden. Über das Menü „Geräte -> Gasterweiterungen installieren … “ oder der Tastenkombination [HOST] + D ist das schnell erledigt.
Virtualbox Gasterweiterung für Ubuntu 10.04

Auf dem Ubuntu Server kann nun das Medium eingebunden werden.

$ sudo mkdir /media/cdrom
$ sudo mount /dev/cdrom /media/cdrom

Abhängig von der Systemarchitektur (32bit oder 64bit) startet die Installation mit dem Skript:

$ sudo /media/cdrom/VBoxLinuxAdditions.run

Am Ende der Installation erscheint der Fehler „Could not find X.Org or XFree.86 Window System“ der auf das Fehlen der grafischen Oberfläche verweist.