Den PC ferngesteuert an- und abschalten oder Programme vom Smartphone aus starten, egal wo Sie sich befinden – mit der Android-App Remote Launcher ist das kein Problem.
Die Kombination aus einem Linux-Rechner und einem Android-Smartphone eröffnet viele Möglichkeiten, das gegenseitige Zusammenspiel für eigene Zwecke auszunutzen. Mit der App Gmote [1] zum Beispiel steuern Sie von Ihrem Smartphone aus Mediadateien auf Ihrem PC an. Eine weitere hilfreiche App, die nach demselben Client-Server-Prinzip funktioniert, ist Remote Launcher.
Mit Remote Launcher [2] starten Sie Programme auf einem Linux-PC von Android-Smartphones aus mit einem Klick (Abbildung 1). Die passenden Einstellungen vorausgesetzt, können Sie Ihren PC sogar von unterwegs starten oder herunterfahren. Dabei fungiert die App auf dem Smartphone als Client, der ein kleines Server-Programm auf dem PC ansteuert. Um die komfortable Fernstartfunktion abzurunden, bringt die App entsprechende Widgets mit und unterstützt zudem Shortcuts, um das Starten der PC-Programme nochmals zu beschleunigen.

Abbildung 1: Für den schnellen Zugriff stehen Widgets bereit. Über das linke lassen Sie sich die vorhandenen Launcher des verbundenen PCs anzeigen, das rechte Widget führt die Wake-on-LAN-Funktion aus.
Mit ein wenig Kreativität lassen sich etliche Einsatzszenarien für Remote Launcher denken. So könnten Sie mit Hilfe einer weiteren App, die standortbezogen bestimmte Smartphone-Funktionen ausführt, zum Beispiel festlegen, dass der PC automatisch startet, sobald Sie nach Hause kommen. Außerdem dürfen Sie jede Art von Linux-Anwendung ausführen – sie können auch ein selbstgeschriebenes Skript starten, das zum Beispiel ein Backup auslöst.
App und den Server
Die App erhalten Sie bequem über den Play Store, wie der Android-Market neuerdings heißt. Wie so oft gibt es die Anwendung in zwei Varianten: Einmal als kostenlose Version mit Werbeeinblendung [3] und einmal werbefrei [4] für 77 Cent. Die Remote-Launcher-App setzt mindestens Android 1.6 “Donut” voraus und nimmt lediglich 75 KByte Speicher in Anspruch. Auch in Sachen Berechtigungen verlangt sie nur das Nötigste: Neben einem uneingeschränkten Internetzugriff will die App den Vibrationsalarm steuern und den Netzwerkstatus anzeigen können.
Auf der Linux-Seite setzt Remote Launcher Java voraus, das die gängigen Distributionen schon bei der Installation einrichten. Über den Befehl java -version finden Sie bei Bedarf heraus, welche Java-Version auf dem Rechner läuft. Die Server-Komponenten von Remote Launcher steht auf der Projektseite als Installationsskript zum Herunterladen bereit. Nach dem Download entpacken Sie den Tarball mit dem Kommando
$ tar -xf remotelauncherserver-0.2.11.tar.gz
Anschließend wechseln Sie in das entpackte Verzeichnis und starten mit administrativen Rechten das Skript install.sh. Es richtet den Server unterhalb von /usr/share/ ein und erzeugt einen passenden Symlink für den Aufruf in /usr/bin. Schließlich aktivieren Sie das Tool über den Aufruf remote-launcher-server.
Der Remote-Launcher-Server begrüßt Sie mit dem englischsprachigen Hinweis darauf, dass Sie nun erst einmal ein Passwort setzen müssen. Sobald Sie mit OK bestätigen, öffnet sich ein Dialog dazu. Hier geben Sie ein neues Passwort ein und bestätigen es dann nach bekanntem Muster in einem weiteren Feld. Das (ohnehin ausgegraute) Feld für das alte Passwort lassen Sie frei – Sie hatten ja bislang noch keines vergeben.
Nach dem Start öffnet Remote Launcher sein Programmfenster und platziert ein entsprechendes Icon im Systempanel. Im Programmfenster nimmt das Server log den meisten Platz ein (Abbildung 2). Hier protokolliert Remote Launcher alle Aktivitäten. Frisch gestartet lautet die letzte Meldung Waiting for client to connect on port 4444. Der Server auf dem PC wartet also nur darauf, dass sich der Client auf dem Android-Gerät mit ihm verbindet.

Abbildung 2: Das Programmfenster für den Linux-PC zeigt die letzten Aktionen des Remote Launchers an.
Nun müssen Sie die App so konfigurieren, dass sie sich mit dem Server auf dem Linux-PC verbinden kann. Vergewissern Sie sich, dass das Android-Gerät per WLAN mit dem Heimnetzwerk verbunden ist, und starten Sie die Remote-Launcher-App. Dort klicken Sie auf Add, um den Dialog Add Server (Abbildung 3) zu öffnen. Die erste erforderliche Eingabe ist die IP-Adresse des PCs. Falls Sie diese nicht auswendig wissen, geben Sie in eine Konsole auf dem Rechner den Befehl ifconfig ein. In der Ausgabe unter zum Beispiel eth0 finden Sie Informationen zur Netzwerkschnittstelle, darunter auch die IP-Adresse (inet Adresse). Diese geben Sie auf dem Android-Gerät als Server address ein.

Abbildung 3: Ihren PC beziehungsweise den darauf installierten Server fügen Sie über diesen Dialog hinzu.
Der Server-Port bleibt auf dem voreingestellten Wert 4444 – es sei denn, Sie haben auf dem Server Ihres PCs bereits etwas anderes eingestellt. Nun müssen Sie noch das Passwort angeben, das Sie zu Beginn am Server eingetragen haben. Die weiteren Eingabefelder können Sie fürs Erste ignorieren. Klicken Sie nun abschließend auf Save.
Für einen ersten Test wählen Sie nun den eingetragenen Server an. Durch einen Klick auf Connect verbindet sich die App mit dem PC und meldet im Erfolgsfall den Verbindungsaufbau (Abbildung 4). Da aber noch keine sogenannten Launcher auf dem Rechner konfiguriert sind, können Sie auch noch nichts auswählen. Auf dem PC quittiert der Server den Verbindungsaufbau im Log durch die Ausgabe Client connected from /192.168.2.117 mit der Angabe der entsprechenden IP-Adresse des verbundenen Android-Geräts.

WOL ausführen.” width=”200″ height=”300″ />
Abbildung 4: Die App ist übersichtlich gehalten. Die Wake-on-LAN-Funktion lässt sich über den ButtonWOL ausführen.TIPP
Sofern der angesteuerte PC seine IP-Adresse per dynamischer Adressvergabe (DHCP) vom Router bezieht, kann er beim nächsten Hochfahren eine andere IP-Adresse vom Router zugewiesen bekommen. Dann klappt die Verbindungsaufnahme über die Remote-Launcher-App nicht mehr. Daher empfiehlt es sich, dem Rechner eine feste IP-Adresse zu geben.
Launcher konfigurieren
Damit Sie Anwendungen auf Ihrem PC von der App aus starten können, müssen Sie auf dem PC so genannte Launcher konfigurieren. Klicken Sie dazu im Programmfenster des Remote-Launcher-Servers auf Edit | Configure Launchers oder verwenden Sie das Tastenkürzel [Alt]+[L]. In dem sich öffnenden Dialog Configure launchers klicken Sie auf Add launcher.
Im nun erscheinenden Dialog geben Sie in das Feld Name einen geeigneten Namen für den Launcher ein. Das nächste Feld versehen Sie mit einer näherer Beschreibung (Description) zur angesteuerten Funktion. Über Path legen Sie den Pfad zur auszuführenden Datei fest. Meist genügt es aber, nur den Namen der gewünschten Programmdatei anzugeben, etwa amarok für die Anwendung Amarok. Abschließend speichern Sie die Angaben über den Schalter Add.
Haben Sie die Dialoge zum Erstellen von Launchern (Abbildung 5) geschlossen und alle Einstellungen gespeichert, können Sie auf dem Android-Gerät die entsprechenden Launcher auswählen. Die App fragt noch einmal nach, ob Sie den Launcher wirklich ausführen wollen. Nach einer Bestätigung startet dann die entsprechende Anwendung auf dem Linux-Rechner.
Wundern Sie sich nicht, dass die App nach einem Standby des Android-Gerätes zunächst wieder versucht, sich mit dem Server zu verbinden. Je nach Konfiguration der Energiesparoptionen wird die WLAN-Funktion während des Stand-by automatisch deaktiviert. Sie sollten diese Option so belassen, um den Akku nicht unnötig zu belasten.
Anspruchsvolleres
Sie können Remote Launcher unter anderem auch dazu benutzen, einen Rechner aus der Ferne herunterzufahren oder auf demselben Wege einen Reboot auszulösen. Dazu konfigurieren Sie spezielle Launcher mithilfe vorgefertigter Vorlagen.
Rufen Sie dazu erneut den entsprechenden Dialog über Edit | Configure Launchers auf und klicken Sie wie gehabt auf Add launcher. Hier finden Sie unter unter Template geeignete Voreinstellungen, zum Beispiel Shutdown für das Herunterfahren (Abbildung 6) oder Reboot für das Neustarten. Nach Auswahl einer dieser Vorgaben müssen Sie den Dialog nur noch mit OK bestätigen.

Abbildung 6: Remote Launcher erleichtert mithilfe von Templates die Eingabe spezieller Funktionen wie etwa des Herunterfahrens.
Remote Launcher nutzt für beide Funktionen das Kommando shutdown, das Root-Rechte erfordert. Dementsprechend müssen Sie am PC die Datei /etc/sudoers anpassen, um beide Funktionen mit der App zu nutzen. Erledigen Sie dies auf keinen Fall über einen gewöhnlichen Editor, da Sie ansonsten Syntaxfehler produzieren könnten, die dazu führen, dass Sie Sudo später nicht mehr ausführen können. Auf Linux-Systemen, bei denen der User root kein Passwort erhält, würden Sie sich so aussperren und könnten keine administrativen Aufgaben mehr ausführen.
Für das Anpassen der Sudo-Konfigurationsdatei führen Sie über eine Konsole das Kommando sudo visudo aus. Dieser Befehl öffnet diese Datei in einem Editor, der sicherstellt, dass gewisse Syntaxregeln eingehalten werden. Navigieren Sie zum Ende der Datei und ergänzen Sie dort die Zeile:
%Benutzer ALL = NOPASSWD: /sbin/shutdown
Dabei tragen Sie für Benutzer Ihren Benutzernamen ein. Speichern Sie die Datei ab und beenden Sie den Editor. Nun kann Benutzer den Shutdown-Befehl anwenden, ohne bei Sudo ein Passwort eingeben zu müssen. Das bedeutet für die App, dass Sie diesen Befehl über Ihr Android-Gerät ausführen können.
Aufgewacht!
Verfügt Ihr PC über eine Netzwerkschnittstelle, die Wake-on-LAN unterstützt, können Sie Ihren PC über die App auch aus dem Ruhezustand wieder aufwecken. Dazu sendet die Remote-Launcher-App ein sogenanntes Magic Packet, also ein “magisches” Datenpaket, das diese Funktion direkt aktiviert. Dazu müssen Sie im BIOS des PCs Wake-on-LAN explizit aktivieren, eventuell sind auch auf Linux-Seite weitere Konfigurationsschritte erforderlich.
Um Wake-on-LAN mit der Remote-Launcher-App zu nutzen, müssen Sie auf dem Android-Gerät die gewünschte Verbindung auswählen und auf Edit klicken. Im Feld Mac address geben Sie die MAC-Adresse der Netzwerkschnittstelle des PCs an. Mit dieser eindeutigen Hardware-Adresse lässt sich die Netzwerkkarte auch ohne IP-Adresse ansprechen. Sie bringen die MAC-Adresse gegebenenfalls in Erfahrung bringen, indem Sie auf einer Konsole den Befehl ifconfig angeben. In der Ausgabe finden Sie die MAC-Adresse unter Hardware Adresse.
Unterwegs
Ihr Heimnetzwerk stellt aber für die Remote Launcher nicht die Grenze ihres Wirkens dar. Sie können die App auch von unterwegs nutzen, um zum Beispiel Ihren PC schon zu starten, bevor Sie wieder zu Hause eintreffen. So brauchen Sie ihn nicht mehr manuell einzuschalten.
Hierzu müssen Sie auf dem heimischen Router eine Port-Weiterleitung einrichten. Die Handhabung fällt von Router zu Router etwas unterschiedlich aus, aber im Kern ist die Vorgehensweise überall dieselbe: Rufen Sie über einen Browser die Konfigurationsoberfläche des Routers auf, indem Sie die entsprechende IP-Adresse eingeben. Nachdem Sie sich am Gerät angemeldet haben, suchen Sie unter den Netzwerkeinstellungen nach den Einstellungen für Port-Regeln. Die Online-Hilfe oder das Handbuch können hier auch weiterhelfen.
Definieren Sie nun eine neue Regel für die IP-Adresse des zu steuernden PCs mit dem Protokoll TCP und einer Portnummer, zum Beispiel 7778. An diesen Port wird die Remote-Launcher-App die Kommandos senden. Der Router nimmt die Anfrage entgegen und leitet Sie an den Remote-Launcher-Port des PCs (4444) weiter, den Sie auch angeben müssen. Hinter diesem Port wartet der Remote-Launcher-Server auf die gesendeten Kommandos. Ihr Router dient damit als Weiterleitungsknoten.
Auf dem Android-Gerät legen Sie nun ein neues Profil an, da Sie über das Mobilfunknetz die IP-Adresse des PCs nicht direkt ansprechen können, wohl aber die WAN-IP-Adresse des Routers. Mit der Angabe des Ports (in unserem Beispiel 7778) weiß der Router, dass er das Eingangssignal der App an den PC weiterleiten muss. Die WAN-IP-Adresse des Routers erfahren Sie über dessen Konfigurationsoberfläche. Bei Speedport-Routern der Telekom etwa ist es der Menüeintrag Übersicht, der hier weiterhilft: Unter Öffentliche WAN-IP finden Sie die öffentliche IP-Adresse.
Mit diesen Informationen im Hinterkopf klicken Sie auf der App wieder auf Add. Unter Server address geben Sie WAN-IP-Adresse Ihres Routers ein. Unter Server port tragen Sie die Portnummer ein, die Sie in den Portregeln des Routers definiert haben, im Beispiel die 7778. Das Passwort unter Password ist dasselbe wie gehabt. In das Feld Mac address kopieren Sie die MAC-Adresse des aufzuweckenden PCs. Klicken Sie abschließend auf Add.
Nun müssen Sie für einen ersten Test nur noch auf dem Android-Gerät die WLAN-Verbindung deaktivieren und das mobile Internet aktivieren. Wählen Sie aus der Auswahlliste der Remote-Launcher-App den Eintrag für den Router aus und klicken Sie auf Connect. Nun erscheinen die konfigurierten Launcher-Einträge des Remote-Launcher-Servers und Sie können den PC aufwecken und wie gewohnt Programme starten.
Fazit
Remote Launcher eröffnet vielfältige Möglichkeiten, einen Linux-PC über ein Smartphone oder Tablet unter Android fernzusteuern. Insbesondere das Ausreizen der Wake-on-LAN-Funktion oder das Herunterfahren erspart so manchen Gang zum Schreibtisch, wenn man wieder einmal vergessen hat, vor dem Verlassen des Hauses den PC herunterzufahren.
Infos
[1] Gmote: Vincze-Aaron Szabo, “Gut bedient”, LU 03/2011, S. 58, https://www.linux-community.de/22709
[2] Remote Launcher: http://owtroid.com/remotelauncher/mediawiki
[3] Remote Launcher Free: https://play.google.com/store/apps/details?id=com.owtroid.remotelauncherfree
[4] Remote Laucher: https://play.google.com/store/apps/details?id=com.owtroid.remotelauncher






