[Editiert: Dank abgeänderten Punkt 4 jetzt für yaVDR 0.4-0.61 geeignet]
Ich hatte hier schon diverse Beschreibungen zur Installation von WLAN und yaVDR 0.4 und 0.5 gelesen. Es fehlte aber eine Beschreibung, wie man WLAN inkl. GUI gut in yaVDR installiert. Hier mal meine Installation inkl. wpa_gui in der Sidebar und dem VDR Applikationsmenü. Wer unbedingt einen Netzwerk-Manager wie wicd fürs WLAN haben will, der findet unter https://www.vdr-portal.de/index.php?page…threadID=111297 eine ähnliche Installationsanleitung von mir.
Zur Info: Ich habe alles auf einem Zotac ND22 HTPC mit rt2x00 WLAN Treiber ausprobiert, aber die Beschreibung sollte mit vielen anderen WLan Treibern klappen.
- Es sollten keine anderen Network Manager zusätzlich installiert sein, es sei denn, Ihr wisst, was Ihr tut. Desweiteren gehe ich davon aus, daß man in einem Terminal mittels "sudo su" als root user eingeloggt ist.
- WLan und wpagui Software installieren:Code
apt-get update apt-get install wireless-tools apt-get install wpasupplicant apt-get install wpagui
DIe Pakete wpasupplicant und wireless-tools sind bei yaVDR 0.5 meistens schon installiert. Wer unter Linux problematische wlan-Hardware hat, sollte evtl mit "uname -r" nachschauen, welchen Kernel er hat und die passenden backport wlan Treiber installieren. Die verfügbaren backport Module werden nebenbei mit
angezeigt. Mein yaVDR Kernel war 2.6.38-13 und ich habe daher folgende Backport Module installiert (der orig. 2.6.38-13 Treiber lief hier aber auch stundenlang ohne Probleme):
Ich würde es aber zuerst ohne backport Module probieren. Sollte es Probleme geben oder überhaupt kein Treiber für das WLan Modul vorhanden sein, kann man einfach später noch die wlan Module nachinstallieren. - Ihr mußt Euren User Account ("medusa" durch Euren Usernamen ersetzen) der netdev Group zuordnen:
- In /etc/network/interfaces sollten folgende Zeilen für das wlan hinzugefügt werden:Code
Display Moreauto wlan0 iface wlan0 inet manual wpa-driver wext wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp iface spezial inet static address 192.168.10.5# Adresse netmask 255.255.255.0 # Netzwerkmaske hostname blade # Hostname gateway 192.168.10.1# Standard Gateway
Ein Hinweis: Wer wie ich kein WLAN aktivieren will, wenn der Rechner per Netzwerkkabel via eth0 verbunden ist, der kann unter "iface wlan0 ..." eine weitere Zeile mithinzufügen. Dies verhindert ein Aktivieren von wlan0 bei funktierendem eth0. Solange man nach dem Start des Rechners nicht zwischen eth0 und wlan0 wechseln will, reicht dies. Wer hotplugging von eth0/wlan0 haben will, braucht also mehr als nur diese eine Zeile. Leider ist bei ausgeschalteten wlan0 auch wpa_gui funktionsunfähig. Wer also einen WLAN Zugang mittels wpa_gui konfigurieren will, muß dann das Netzwerkkabel beim Booten abgezogen haben.
Achtung: Bei dem von yaVDR 0.6 verwendeten Ubuntu 14.04 gibt es ein Problem, wenn man die interfaces Datei wie oben beschrieben erweitert. Ubuntu braucht über zwei Minuten länger zum Booten und zeigt dabei unter anderem ""Waiting for network configuration" auf dem Bildschirm. Desweiteren kann es passieren, daß das Webconfig nicht mehr erreichbar ist. Das Problem taucht u.a. immer dann auf, wenn ein per iface angegebenes Device nicht sofort funktioniert, was bei dhcp und wlan mit WPA fast immer der Fall ist. Die Lösung ist, anstatt auto allow-hotplug anzugeben. Hier eine Beispiel einer /etc/network/interfaces Datei für yavdr 0.6:
Code
Display More# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug eth0 iface eth0 inet dhcp allow-hotplug p1p1 iface p1p1 inet dhcp allow-hotplug p4p1 iface p4p1 inet dhcp allow-hotplug wlan0 iface wlan0 inet manual wpa-driver wext wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf # pre-up /sbin/ip link | /bin/grep -q 'eth0:.*state.*DOWN' iface default inet dhcp iface spezial inet static address 192.168.10.5 # Adresse netmask 255.255.255.0 # Netzwerkmaske hostname blade # Hostname gateway 192.168.10.1 # Standard Gateway
Wer dennoch warten muss, weil er ein anderes Network Setup hat, kann die Wartezeit z.B. durch das Entfernen/Verringern der sleep Befehle in /etc/init/failsafe.conf erreichen. Wenn das Webconfig nicht erreichbar ist, kann es hilfreich sein, den start von tntnet bis zu einer funktionierenden Netzwerkverbindung zu verzögern. Dies kann man z.B. durch das Erstellen einer Datei /etc/init/wait-for-tntnet.conf mit folgenden Inhalt erreichen:Code
Display Morestart on starting tntnet task script # Wait for internet connection before starting tntnet... a=0 while [ $a -lt 15 ] do a=`expr $a + 1` if ping google.de -c 2 >/dev/null; then break; fi sleep 2 done end script
Das Script verzögert den Start von tntnet eine Weile bzw. bis google.de (durch eigene Routeradresse erestzen) angepingt werden kann. - Erstellt die Datei /etc/wpa_supplicant/wpa_supplicant.conf
mit folgenden zwei Zeilen:
und setzt die Zugriffsrechte: - Rebootet das System. Die ifconfig Ausgabe sollte jetzt wlan0 auflisten, wobei iwconfig anzeigt, dass daß wlan0 noch nicht mit einem AP verbunden ist. Dazu fehlt ja noch das Passwort u.a.m., welches wir später mit wpa_gui erstellen. Sollte kein wlan0 auftauchen, kontrolliert ob Ihr einen funktionierenden wlan Treiber habt. Installiert evtl. die backport Module.
- Jetzt fügen wir wpa_gui der Sidebar von yaVDR hinzu. Um das Updatesicher hinzubekommen, muss ein entsprechendes yaVDR Template erstellt und verarbeitet werden:Code
mkdir -p /etc/yavdr/templates_custom/etc/wmdrawer/web/ echo "(wpa_gui WLAN Konfigurieren) (wpa_gui.xpm) (/usr/share/vdr/menuorg-appswitcher standalone=no app=wpagui)" >/etc/yavdr/templates_custom/etc/wmdrawer/web/12_wpagui chown root:root /etc/yavdr/templates_custom/etc/wmdrawer/web/* chmod 644 /etc/yavdr/templates_custom/etc/wmdrawer/web/* process-template /etc/wmdrawer/web
Der aufgerufene Upstart Service wpagui muss noch erstellt werden. Ich habe dazu die firefox.conf Datei in /etc/init als Vorbild genommen und mit
kopiert und anschliessend /etc/init/wpagui.conf etwas angepasst. Bei mir wird wpa_gui als User medusa ausgeführt. Ihr müßt also medusa in der Zeile mit exec su auf Euren Usernamen ändern:Code
Display More################################################################################# # # # wpagui.conf : Start wpa_gui # # # ################################################################################# description "wpa_gui QT Daemon" author "based on Steffen Barszus firefox script" script export PATH=/usr/local/bin:/usr/bin:/bin export HOME=/var/lib/vdr exec su -c "/usr/sbin/wpa_gui" medusa end script pre-start script if [ ! -z $STANDALONE ] ; then vdr-dbus-send /Remote remote.Disable ||: touch /tmp/.standalone || /bin/true fi end script post-stop script /bin/rm -f /tmp/.standalone if [ ! -z $STANDALONE ] ; then vdr-dbus-send /Remote remote.Enable ||: /sbin/initctl emit --no-wait vdr-frontend-restart fi end script
- Jetzt fügen wir wpa_gui auch noch dem Applikationsmenü in VDR hinzu. Wieder bemühen wir yaVDR Templates um alles sicher für Updates zu machen:
Dann mit
eine Datei mit der folgenden Zeile als Inhalt erstellen:Code<command name=<?cs call:quote(_("wpa_gui WLAN Konfiguration")) ?> execute="/usr/share/vdr/menuorg-appswitcher standalone=no app=wpagui &> /dev/null " />
Die Zugriffsrechte einstellen mitCodechown root:root /etc/yavdr/templates_custom/var/lib/vdr/plugins/menuorg.xml/* chmod 644 /etc/yavdr/templates_custom/var/lib/vdr/plugins/menuorg.xml/*
Und aktivieren: - Das wars. Ihr solltet jetzt wpa_gui in der yaVDR Sidebar oder im VDR Applikationsmenü aufrufen können und nach vorhanden wlan Netzen suchen/konfigurieren können.
Falls alles nicht gefruchtet hat und keine Netze in wpa_gui angezeigt werden, dann hat man vermutlich ein Problem mit dem WLAN Treiber und sollte es erst einmal von Hand entsprechend der Beschreibung auf
https://www.vdr-portal.de/board60-linux/…lan-aktivieren/
Oder der detaillierten Beschreibung auf der Ubuntu wiki Website versuchen:
http://wiki.ubuntuusers.de/wlan
Wer sich mit Netzwerken verbinden kann, aber keine IP Adresse per dhcp bekommt, der hatte evtl. vorher wie ich wicd oder einen anderen Manager installiert und nicht rückstandsfrei entfernt?
Für weitere Verbesserungsvorschläge bin ich immer offen