Tipps für Fortgeschrittene

Aus RMM-Wiki
Wechseln zu: Navigation, Suche
Kurztipps-Sammlung
Buch3.jpg

Einleitung:

Im Folgendem finden Sie eine Sammlung von Kurztipps rund um die ReelBox. Diese "hidden features" richten sich an den fortgeschrittenen User. Die Beschreibungen sind absichtlich knapp gehalten und bedürfen sicherlich einiger Vorkenntnisse. Die Seite wird in Zukunft laufend um weitere Tipps erweitert.

Die Nutzung erfolgt auf eigene Gefahr!

Ein herzliches Dankeschön an @Behni, der die meisten Tipps beigetragen hat!


Netzwerk

Linksystematik

Je Medientyp werden bestimmte Unterordner gesucht. Das hat den Sinn, dass nur die "richtigen" Medien in den jeweiligen Bereichen auftauchen. Dann muss nicht zwischen den mp3s nach VDR-Aufnahmen gesucht werden. Folge: Die Aufnahmen werden schneller aufgebaut.

Reihenfolge:
1. Unterordnername aus sysconfig: Groß-/Kleinschreibung ist egal.
2. Die Namen der Unterordner stehen in der /etc/default/setup-shares

Code:

 NAS_PICTURES="pictures images bilder fotos"
 NAS_VIDEOS="movies video videos filme"
 NAS_MUSIC="music mp3 mp3s musik audio"
 NAS_RECORDINGS="recordings aufnahmen video"
 NAS_DVDS="dvd dvds video/dvd video"

Die Suchreihenfolge ist von links nach rechts. Groß-/Kleinschreibung ist egal. Wie man bei DVD sieht gehen auch Ordner in tieferen Ebenen (gilt auch für 1.).In der Datei sollte man nicht selbst ergänzen. Könnte Updates nicht überleben. Besser 1. nehmen.
Die Reihenfolge bei RECORDINGS und VIDEO unterstützt auch die Ordnerstukturen der gaaanz alten Lite-Images. Da waren die Aufnahmen in video und die videos in movies.

3. Oberste Ebene der Anbindung.
Im Forum liest man öfter, dass auf dem NAS die Order "music", "recordings", "pictures" und "video" angelegt werden müssen. "Müssen" stimmt nicht, aber es hilft. Aber schöner ist es, wenn man die Ordner: "Musik", "Aufnahmen", "Bilder" und "DVDs" verwendet. Das ist weniger technisch.


Global

Unterschiedliche Partitionen je Mediatyp

 MEDIADEVICE_DVDS="/media/hd"
 MEDIADEVICE_MUSIC="/media/hd0"
 MEDIADEVICE_PICTURES="/media/hd1"
 MEDIADEVICE_RECORDINGS="/media/.mount1"
 MEDIADEVICE_VIDEOS="/media/Displayname"

Dies braucht ein init-Skript: http://reelbox.org/~behni/Forum/ReelMount/setup-mediadirs_0.0.1-root.tar.bz2

Installaton:
Die verlinkte Datei nach /media/reel kopieren und die Befehle als root ausführen:

Code:

 cd /
 tar xvjf /media/reel/setup-mediadirs_0.0.1-root.tar.bz2

Jetzt testen, ob alles so läuft wie es soll:

Code:

 /etc/init.d/setup-mediadirs start 
 ls -l /media/reel/

Wenn alle Links wie gewünscht erstellt wurden. Den automatischen Start einstellen (Kubuntu 8.04):

Code:

 update-rc.d setup-mediadirs defaults 22 80

Neue Medienbereiche ergänzen

/etc/default/setup-shares :

 # NAS_XYZ="xyz"
 # Hier muss NAS2_ statt NAS_ verwendet werden. Mountspezifische Unterordner gehen nicht.
 NAS2_XYZ="xyz"
 XYZDIR=$MEDIADIR/xyz
 LOCAL_MEDIAVAR="PICTURES VIDEOS DVDS MUSIC RECORDINGS XYZ"
 LOCAL_MEDIADIR="$PICTURESDIR $VIDEODIR $DVDDIR $MUSICDIR $RECORDINGSDIR $XYZDIR"
 ADDMEDIA="XYZ"

/etc/default/sysconfig :

 MOUNT?_???_XYZ="yes"

Einstellungen je Anbindung


Suchbegriff(e) für Unterordnernamen (Groß-/Kleinschreibung egal):

 MOUNT?_???_NAS_DVDDIR="Unterordnername"
 MOUNT?_???_NAS_RECORDINGDIR="Unterordnername"
 MOUNT?_???_NAS_MUSICDIR="Unterordnername"
 MOUNT?_???_NAS_VIDEODIR="Unterordnername"
 MOUNT?_???_NAS_PICTUREDIR="Unterordnername"

Kein Link im Medienbereich DVD:

 MOUNT?_???_DVDS="no"

Und so ist es möglich einen Share für DVDs und einen anderen bei Videos zu verwenden.

 ?:   Nummer der Anbindung (siehe Details)
 ???: je nach Typ: SMB, NFS oder AFP

Samba

SMB statt CIFS bei Billig-NAS:

 MOUNT?_SMB_SMBVERSION="smbfs"
 ?:   Nummer der Anbindung (siehe Details)

NFS

auch NFS-Version 2 ist zulässig:

   MOUNT?_NFS_NFSVERSION="2"

Für ganz alte NAS, sollte eigentlich nicht mehr gebraucht werden.

auch andere Blockgrößen möglich:

   MOUNT?_NFS_BLOCKSIZE="???"
   Wertebereich: 4096 - 1048576

...noch etwas: Bei NFS kann man auch tiefere Ebenen mounten. Bei CIFS geht das nicht. Also: Gefundene Freigabe: /raid0/disk1

User möchte für die Boxen getrennte getrennte Bereiche (warum auch immer)

/raid0/disk1/Mediendaten/AVG/$MEDIENORDNER
/raid0/disk1/Mediendaten/Lite/$MEDIENORDNER

In der "/etc/default/sysconfig":

 MOUNT?_NFS_SHARENAME="/raid0/disk1"

änden in:

 MOUNT?_NFS_SHARENAME="/raid0/disk1/Mediendaten/AVG"

Problemanalysen

Protokollierung der Verlinkungen (/etc/default/link-shares):

 LOGGING=yes 

Das log landet in /media/reel/recordings. Dadurch landen alle MultiRoom-Logs in einem Ordner und können später über die Zeit-IDs ein eine goße Log-Datei zusammen gefügt werden, um Abhängigkeiten zu erkennen.


Suche

Anzeige "geschlossener" Freigaben (/etc/default/showshares):

 SHOWCLOSED=yes

z.B. NFS-Freigaben der Fritzbox mit Freetz-Image


Sonstiges

Erweiterte Kindersicherung - einzelne Plugins mit PIN sperren

Es ist möglich, einzelne Plugins mit einer Kindersicherungs-PIN zu sperren. Die kann man erreichen, in dem man in der Datei /etc/vdr/plugins/pin/pluginlocks.conf (Aufruf zum Beispiel über den RCC (Reelbox Control Center)) den entsprechenden Plugin-Eintrag auswählt und entsprechend abändert.
Die Datei pluginlocks.conf sieht etwa so aus:

Pluginlocks.png


Beispiel (Sperrung des Suchtimer-Plugins):

 epgsearchonly:no:0000:2359

Erklärung der Parameter: "epgsearchonly" = Name des plugins, "0000:2359" = Zeit für die Sperrung, hier 00:00 Uhr bis 23:59 Uhr
Durch abändern des Parameters "no" in "yes" wir das Plugin mit dem eingestellten PIN gesperrt:

 epgsearchonly:yes:0000:2359

Die Änderung der Datei sollte im Wartungsmodus (neuere Firmwareversionen) bzw. Standby erfolgen.

Preview-Bilder für Aufnahmen nachträglich erzeugen

@Behni hat ein Script geschrieben, welches es ermöglicht, auch für ältere Aufnahmen Vorschaubilder (Ansicht im recordings-Verzeichnis des OSD) zu generieren: generate_all_preview.sh
In einer Konsole dann folgendes eingeben:

 ./generate_all_preview.sh ORDNERNAME

Es werden für alle Aufnahmen unterhalb von "ORDNERNAME" Previews erstellt, wenn noch keine vorhanden sind.


Telnet-Befehle für Tastenfunktionen (SVDRP)

Über einfache Telnetbefehle ist es möglich, Tastenfunktionen der Fernbedienung auszulösen. Dabei geht es darum, eine Einstellung in der Tiefe des Setups per Befehl umzustellen. Der Anwendungsbereich ist vielfältig: So kann man zum Beispiel durch die Kombination der nachfolgenden Befehle über Telnet oder ein Script schwierig zu erreichende Setup und Menüeinstellungen schnell und einfach durchführen. Ein Anwendungsbeispiel sehen Sie im Abschnitt "Script zur Ausführung von Fernbedienungsbefehlen"

"HITK" bedeutet das Drücken einer Taste.
Beispiel: So kommt man in die Experteneinstellungen für die Bild-/Video-Einstellungen:

 svdrpsend.sh HITK menu
 svdrpsend.sh HITK setup
 svdrpsend.sh HITK 2
 svdrpsend.sh HITK 1
 svdrpsend.sh HITK blue

Das Problem ist, dass es auf diese Art langsam geht und z.B. die Fernbedienung während der Ausführung der Befehlskette benutzt werden könnte. Dann läuft die Sequenz nicht mehr fehlerfrei.

Wenn man mehrere Tastendrücke in einer Zeile übergeben will, muss nach jeder Taste "Enter" gedrückt werden. Der Code für Enter ist "\n". Da der Backslash "\" in der Shell verwendet wird, Sonderzeichen zu maskieren kommt ein einzelner "\" nicht bei der Ausführung an. Es muss also das Sonderzeichen "\" mit einem weiteren "\" maskiert werden. Daraus ergibt sich dann diese Sequenz:

 svdrpsend.sh HITK menu\\n setup\\n HITK 2\\n HITK 1\\n HITK blue



Script zur Ausführung von Fernbedienungsbefehlen

Hier nun ein Skript mit Kommentaren zum Thema "Tastenbefehle". Es wurden einige Erklärungen hinzugesetzt, die alle durch eine "#" auskommentiert wurden.

 #!/bin/bash
 # Temporärer Name für das Skript. 
 # $$ ist die Prozeß-ID. $0 ist der Name dieses Skriptes.
 # Dadurch gibt es immer wieder einen anderen Dateinamen - sicher ist sicher.
 # Ist auch dafür wichtig, wenn dieses Skript zweimal gleichzeitig laufen sollte.
 TMPSCRIPT=/tmp/$$-$( basename $0 )
 # Schreiben des Skriptes.
 # Alle Zeilen zwischen der cat-Zeile und EOF sind das Skript:
 cat <<EOF > $TMPSCRIPT
 #!/bin/bash
   /bin/echo -e "HITK menu
 HITK setup
 HITK 2
 HITK 1
 HITK blue
 QUIT" | /bin/nc -q 1 127.0.0.1 2001
 rm $TMPSCRIPT
 EOF
 # Zur Sicherheit warten wir mal kurz nach dem Schreiben.
 # Kann vielleicht auch wieder raus:
 sleep 0.5
 # Skript ausführbar machen:
 chmod +x $TMPSCRIPT
 # Skript im Hintergrund ausführen und vom Hauptprozeß lösen:
 nohup $TMPSCRIPT > /dev/null 2>&1 &

Den Skriptnamen für dieses Script kann man frei wählen, je nach dem was man im Setup-Menü steuern will. Deshalb wurde der "basename $0" im Script verwendet. Der Befehl sorgt dafür, dass der Scriptname automatisch ermittelt wird.
Richtig interessant wird die Anwendung des Scriptes erst, wenn man es über die Fernbedienung oder das OnScreenDisplay der ReelBox aufrufen kann. Im Folgendem ist beides beschrieben.

Einbau des Scripts als Fernbedienungsbefehl

Wie kann man nun das Script über den Tastendruck der Fernbedienung auslösen?
Dazu muss man die Konfigurationsdatei der Fernbedienung bearbeiten. Die Datei heißt "keymacros.conf" und befindet sich im Verzeichnis "/etc/vdr/" In der Datei kann man dann den Scriptnamen mit vorgestelltem "!" für die gewünschte Tastenfunktion eingeben. In dem Beispiel unten wurde der Name für das Scrip oben auf "Tastenmakro.sh" gesetzt und unter "User 1" eingefügt.
Weiterführende Informationen zur Bearbeitung der Fernbedienungstasten finden Sie hier: Fernbedienung: Tasten umbelegen und anpassen

  # Remote control key macros for VDR     
  #
  # Format:
  #
  # macrokey  key1 key2 key3...
  # macrokey  @plugin key1 key2 key3...
  #
  # See man vdr(5)
  Red       @extrecmenu 
  Green     @epgsearch
  #Yellow   @prefermenu
  Blue      @arghdirector
  TT        @osdteletext
  PiP       @mediaplayer
  Timers    @epgtimers
  #DVB
  DVD       @mediad
  PVR       Menu 2
  #Reel
  Eject     Commands 1
  # User1:  shift+DVB
  User1     !Tastenmakro.sh
  # User2:  shift+DVD
  #User2
  # User3:  shift+PVR
  User3     @reelblog
  # User4:  shift+Reel
  User4     @filebrowser
  # User5:  shift+Teletext
  User5     @reelepg
  # User6:  shift+PiP
  User6     Aspect

Bitte die Bearbeitung der keymacros.conf im "Wartungsmodus" bzw. "Standby" durchführen und anschließend die ReelBox neu starten.


Flashen des Frontpanels

Wenn das FP ( Frontpanel ) nicht mehr gefunden wird, ganz auschalten, die linke Taste ("rot") unterm Display gedrückt halten und einschalten. Da muss die rote LED leuchten, danach sollte das FP-Update sauber durchlaufen.

Für Stable (Rubuntu 8.04)

/etc/init.d/reelvdr stop
/etc/init.d/reelbox-control stop
avr_flasher -w /usr/share/reel/frontpanel/main.flash-<versionsnummer die da rumliegt> 

Ab Beta-Testing (Rubuntu 10.04)

service reelvdr stop
service reelbox-control stop
avr_flasher -w /usr/share/reel/frontpanel/main.flash-<versionsnummer die da rumliegt>


zurücksetzen (Reset) des Frontpanels

Es kann in seltenen Fällen vorkommen, dass das Frontpanel (FP) keinerlei Ausgabe mehr anzeigt, in diesem Fall ist davon auszugehen, dass die im FP vorhandene Firmware nicht mehr funktionsfähig ist und zurück gesetzt werden muss.

Hierzu gehen Sie dann bitte wie folgt vor:

1.) ReelBox Avantgarde I/II vollständig ausschalten (Schalter hinten am Gerät reicht, "Kabelziehen und eine Stunde warten" ist alles Mythos ... )

2.) 10 Sek warten, damit sich die Kondensatoren im Gerät so entladen, dass keine Standby Teile mehr versorgt werden

3.) Den linken der vier DISPLAY-Buttons gedrückt halten, während man die ReelBox Avantgarde I/II mit dem Wippschalter (hinten) einschaltet. Nicht verwechseln mit dem PowerButton !

4.) Die rote LED "Record" sollte jetzt aufleuchten.

5.) 10 Minuten warten - bzw. so lange, bis das Display aufleuchtet. Es gibt keinen Hinweis darauf, dass das Panel geflasht wird, ausser, dass es nach einiger Zeit funktioniert.


ggf. Frontpanel neu bespielen

6.) Die Flash-Prozedur unter http://wiki.reelbox.org/index.php?title=Tipps_f%C3%BCr_Fortgeschrittene&printable=yes .


Ausgabebefehle in eine Datei umleiten

Beispielsweise soll folgender Befehl ausgeführt werden:

 ls -l /media/hd/recordings/

Wenn man den so eingibt erscheint die Ausgabe im Fenster.

Mit dem > kann man die Ausgabe an ein anderes Ziel umleiten. Soll das in einer Datei landen, gibt man einfach einen Dateinamen an.
Die Datei wird dann erstellt oder überschrieben:

 ls -l /media/hd/recordings/ > /tmp/log.txt

Will man etwas an eine Datei anhängen nimmt man zweimal >>. Wenn es die Datei noch nicht gibt, wird die erstellt:

 ls -la /media/ >> /tmp/log.txt

Beide Befehle geben dann nichts mehr im Fenster aus.
Will man sehen, was in die Datei geschrieben wird, nimmt man den Befehl tee:
Die Datei wird dann erstellt oder überschrieben:

 ls -l /media/hd/recordings/ | tee /tmp/log.txt

Auch hier gibt es eine Variante, die anhängen (append) kann:

 ls -al /media/ | tee -a /tmp/log.txt

Systemverzeichnisse der ReelBox

Eine Sammlung der wichtigsten Systemverzeichnisse und Systemdateien finden Sie hier:
Weiterführender Link: Systemverzeichnisse, Systemdateien - Reel-Wiki

Linux-Befehle

Eine Sammlung der wichtigsten Linux-Befehle finden Sie hier:
Weiterführender Link: Linux-Befehle - Reel-Wiki