MountRemoteVDR
Fauthd (Diskussion | Beiträge) (→Konfiguration des entfernten VDR) |
Hulk (Diskussion | Beiträge) |
||
(26 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 12: | Zeile 12: | ||
<pre> | <pre> | ||
− | sudo apt-get install wakeonlan | + | sudo apt-get install wakeonlan smbclient smbfs |
</pre> | </pre> | ||
− | |||
===Vorbereitung=== | ===Vorbereitung=== | ||
− | Zum Einhängen (mount) der Samba-Freigabe des entfernten VDR (vdr2) brauchen wir | + | Zum Einhängen (mount) der Samba-Freigabe des entfernten VDR (vdr2) brauchen wir die Login-Informationen und den Freigabenamen. |
− | + | ||
− | + | Die Login-Informationen werden in einer Datei gespeichert damit sie vor neugierigen Blicken etwas sicherer sind. | |
+ | |||
+ | Wir legen ein neues Verzeichnis unterhalb von /etc/vdr an. Dieses brauchen wir später sowieso um die Konfigurationen zu speichern. | ||
<pre> | <pre> | ||
− | + | cd /etc/vdr | |
+ | sudo mkdir MountRemoteVDR | ||
+ | sudo chown vdr:vdr MountRemoteVDR | ||
</pre> | </pre> | ||
− | + | Nun erzeugen wir die Samba Login-Informationen. | |
− | /etc/. | + | /etc/vdr/MountRemoteVDR/.vdr2credentials |
<pre> | <pre> | ||
username=NAME | username=NAME | ||
Zeile 33: | Zeile 35: | ||
</pre> | </pre> | ||
− | Nicht vergessen die | + | Nicht vergessen die Login-Informationen vor neugierigen Blicken zu schützen: |
<pre> | <pre> | ||
− | sudo chmod 600 /etc/. | + | sudo chmod 600 /etc/vdr/MountRemoteVDR/.vdr2credentials |
+ | sudo chown vdr:vdr /etc/vdr/MountRemoteVDR/.vdr2credentials | ||
</pre> | </pre> | ||
− | + | Hinweis: Die ältere Version der Scripte verwendete noch Einträge in der fstab-Datei, aber damit ist der Plegeaufwand höher. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
===Script zum Anmelden=== | ===Script zum Anmelden=== | ||
+ | |||
+ | Er wird vom VDR Menu aufgerufen. | ||
+ | |||
/usr/lib/vdr/mount-remote-vdr.sh | /usr/lib/vdr/mount-remote-vdr.sh | ||
<pre> | <pre> | ||
#!/bin/bash | #!/bin/bash | ||
+ | #set -x | ||
. /etc/vdr/MountRemoteVDR/common.conf | . /etc/vdr/MountRemoteVDR/common.conf | ||
. /etc/vdr/MountRemoteVDR/$1.conf | . /etc/vdr/MountRemoteVDR/$1.conf | ||
Zeile 60: | Zeile 63: | ||
done | done | ||
− | # mount | + | #Autocreate mountpoint |
− | mount $MOUNTPOINT | + | if [ ! -d $MOUNTPOINT ]; then |
+ | mkdir $MOUNTPOINT | ||
+ | fi | ||
+ | |||
+ | # mount with or without fstab | ||
+ | if [ "x$CREDENTIALS" == "x" ]; then | ||
+ | mount $MOUNTPOINT | ||
+ | else | ||
+ | mount -t cifs -o credentials=$CREDENTIALS $SHARE $MOUNTPOINT | ||
+ | fi | ||
+ | |||
touch $VIDEODIR/.update | touch $VIDEODIR/.update | ||
svdrpsend="/usr/lib/vdr/svdrpsend.pl" | svdrpsend="/usr/lib/vdr/svdrpsend.pl" | ||
$svdrpsend MESG $NAME ist nun aktiv | $svdrpsend MESG $NAME ist nun aktiv | ||
+ | |||
</pre> | </pre> | ||
Zeile 71: | Zeile 85: | ||
===Script zum Abmelden=== | ===Script zum Abmelden=== | ||
+ | Er wird vom VDR Menu aufgerufen. | ||
+ | |||
/usr/lib/vdr/umount-remote-vdr.sh | /usr/lib/vdr/umount-remote-vdr.sh | ||
<pre> | <pre> | ||
Zeile 78: | Zeile 94: | ||
umount -f $MOUNTPOINT | umount -f $MOUNTPOINT | ||
− | touch | + | touch $VIDEODIR/.update |
− | + | ||
− | + | ||
</pre> | </pre> | ||
===Konfigurationsdateien=== | ===Konfigurationsdateien=== | ||
− | + | Die Konfigurationsdateien legen wir in unserem bereits erzeugten Verzeichnis /etc/vdr/MountRemoteVDR an. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Alle gemeinsame Konfigurationen wie das Videoverzeichnis und die Broadcastdomain werden hier gespeichert: | |
/etc/vdr/MountRemoteVDR/common.conf | /etc/vdr/MountRemoteVDR/common.conf | ||
Zeile 98: | Zeile 108: | ||
</pre> | </pre> | ||
− | Die Konfiguration enthält unter anderem den Namen und die MAC Adresse des entfernten VDR. | + | Die gerätespezifische Konfiguration enthält unter anderem den Namen und die MAC Adresse des entfernten VDR. |
/etc/vdr/MountRemoteVDR/vdr2.conf | /etc/vdr/MountRemoteVDR/vdr2.conf | ||
Zeile 105: | Zeile 115: | ||
MAC="00:77:88:99:aa:ff" | MAC="00:77:88:99:aa:ff" | ||
MOUNTPOINT="$VIDEODIR/VDR2" | MOUNTPOINT="$VIDEODIR/VDR2" | ||
+ | SHARE=//$NAME/video_readonly | ||
+ | CREDENTIALS=/etc/vdr/MountRemoteVDR/.vdr2credentials | ||
</pre> | </pre> | ||
+ | |||
+ | '''Hinweis 1:''' | ||
+ | Die MAC-Addresse für den entfernten VDR kann dort man mit ifconfig ermitteln: | ||
+ | <pre> | ||
+ | ifconfig | ||
+ | eth0 Link encap:Ethernet HWaddr 00:77:88:99:aa:ff | ||
+ | ........ mehr Details | ||
+ | </pre> | ||
+ | |||
+ | '''Hinweis 2:''' | ||
+ | Die Broadcastdomain begrenzt die WOL Broadcasts auf den angegebenen IP Bereich. Ohne dies Angabe schickt wakonlan den WOL Broadcast an die ganze Welt (255.255.255.255), was wiederum einige Firewalls nicht mögen und damit das WOL Paket blockieren. | ||
===Menubefehle=== | ===Menubefehle=== | ||
Zeile 118: | Zeile 141: | ||
===Weitere VDRs=== | ===Weitere VDRs=== | ||
Hat man noch mehr VDRs, kann man die leicht hinzufügen. | Hat man noch mehr VDRs, kann man die leicht hinzufügen. | ||
− | Einfach | + | Einfach noch eine Konfigurationsdatei erstellen, sowie die Menubefehle hinzufügen. |
− | + | /etc/vdr/MountRemoteVDR/vdr3.conf | |
<pre> | <pre> | ||
− | + | NAME="vdr3" | |
+ | MAC="00:77:88:99:aa:03" | ||
+ | MOUNTPOINT="$VIDEODIR/VDR3" | ||
+ | SHARE=//$NAME/video_readonly | ||
+ | CREDENTIALS=/etc/vdr/MountRemoteVDR/.vdr3credentials | ||
</pre> | </pre> | ||
+ | Samba Login-Informationen: | ||
+ | |||
+ | /etc/vdr/MountRemoteVDR/.vdr3credentials | ||
<pre> | <pre> | ||
− | + | username=NAME | |
− | + | password=PASSWORT | |
</pre> | </pre> | ||
− | + | Nicht vergessen die Login-Informationen vor neugierigen Blicken zu schützen: | |
− | + | ||
<pre> | <pre> | ||
− | + | sudo chmod 600 /etc/vdr/MountRemoteVDR/.vdr3credentials | |
− | + | sudo chown vdr:vdr /etc/vdr/MountRemoteVDR/.vdr3credentials | |
− | + | ||
</pre> | </pre> | ||
Zeile 146: | Zeile 174: | ||
==Konfiguration des entfernten VDR== | ==Konfiguration des entfernten VDR== | ||
− | Samba Installieren | + | ===Samba Installieren=== |
<pre> | <pre> | ||
sudo apt-get install samba | sudo apt-get install samba | ||
Zeile 152: | Zeile 180: | ||
Wir erzeugen eine Samba Freigabe in /etc/samba/smb.conf sowie den erforderlichen Samba-User. | Wir erzeugen eine Samba Freigabe in /etc/samba/smb.conf sowie den erforderlichen Samba-User. | ||
− | Wir | + | Wir sperren das Schreiben damit der andere VDR nicht versehentlich unsere Filme aufräumt. |
<pre> | <pre> | ||
[video_readonly] | [video_readonly] | ||
Zeile 167: | Zeile 195: | ||
sudo smbpasswd NAME PASSWORT | sudo smbpasswd NAME PASSWORT | ||
</pre> | </pre> | ||
+ | |||
+ | ==Links== | ||
+ | * [[c't-VDR]]-Distribution | ||
+ | * [[Samba#Konfigurationsdatei|Samba einrichten]] | ||
+ | * [[NFS|NFS-Freigabe]] | ||
+ | |||
+ | [[Kategorie:Skripte]] |
Aktuelle Version vom 29. August 2013, 18:17 Uhr
Inhaltsverzeichnis |
[Bearbeiten] Beschreibung
Diese Skripte ermöglichen das Starten eines weiteren VDR per WOL (Wake On Lan). Danach wird das entfernte Aufnahmeverzeichnis automatisch im lokalen Aufnahmeverzeichnis eingehängt.
Die Bedienung erfolgt über neue Befehle im VDR-Menu.
[Bearbeiten] Lokale Konfigurationen
[Bearbeiten] Voraussetzungen
Diese Beschreibung ist für Debian (Lenny) und Ubuntu (Intrepid, Karmic). Hier müssen wir ein paar Werkzeuge Installieren.
sudo apt-get install wakeonlan smbclient smbfs
[Bearbeiten] Vorbereitung
Zum Einhängen (mount) der Samba-Freigabe des entfernten VDR (vdr2) brauchen wir die Login-Informationen und den Freigabenamen.
Die Login-Informationen werden in einer Datei gespeichert damit sie vor neugierigen Blicken etwas sicherer sind.
Wir legen ein neues Verzeichnis unterhalb von /etc/vdr an. Dieses brauchen wir später sowieso um die Konfigurationen zu speichern.
cd /etc/vdr sudo mkdir MountRemoteVDR sudo chown vdr:vdr MountRemoteVDR
Nun erzeugen wir die Samba Login-Informationen.
/etc/vdr/MountRemoteVDR/.vdr2credentials
username=NAME password=PASSWORT
Nicht vergessen die Login-Informationen vor neugierigen Blicken zu schützen:
sudo chmod 600 /etc/vdr/MountRemoteVDR/.vdr2credentials sudo chown vdr:vdr /etc/vdr/MountRemoteVDR/.vdr2credentials
Hinweis: Die ältere Version der Scripte verwendete noch Einträge in der fstab-Datei, aber damit ist der Plegeaufwand höher.
[Bearbeiten] Script zum Anmelden
Er wird vom VDR Menu aufgerufen.
/usr/lib/vdr/mount-remote-vdr.sh
#!/bin/bash #set -x . /etc/vdr/MountRemoteVDR/common.conf . /etc/vdr/MountRemoteVDR/$1.conf #wake wakeonlan -i $BROADCAST_DOMAIN $MAC # wait until it is up ping $NAME -c1 while [ "$?" != "0" ] do sleep 2 ping $NAME -c1 done #Autocreate mountpoint if [ ! -d $MOUNTPOINT ]; then mkdir $MOUNTPOINT fi # mount with or without fstab if [ "x$CREDENTIALS" == "x" ]; then mount $MOUNTPOINT else mount -t cifs -o credentials=$CREDENTIALS $SHARE $MOUNTPOINT fi touch $VIDEODIR/.update svdrpsend="/usr/lib/vdr/svdrpsend.pl" $svdrpsend MESG $NAME ist nun aktiv
Eventuell kann man den Script verbessern indem man mit smbclient prüft ob die Samba-Freigabe wirklich schon aktiv ist.
[Bearbeiten] Script zum Abmelden
Er wird vom VDR Menu aufgerufen.
/usr/lib/vdr/umount-remote-vdr.sh
#!/bin/bash . /etc/vdr/MountRemoteVDR/common.conf . /etc/vdr/MountRemoteVDR/$1.conf umount -f $MOUNTPOINT touch $VIDEODIR/.update
[Bearbeiten] Konfigurationsdateien
Die Konfigurationsdateien legen wir in unserem bereits erzeugten Verzeichnis /etc/vdr/MountRemoteVDR an.
Alle gemeinsame Konfigurationen wie das Videoverzeichnis und die Broadcastdomain werden hier gespeichert:
/etc/vdr/MountRemoteVDR/common.conf
BROADCAST_DOMAIN="192.168.1.255" VIDEODIR=/var/lib/video.00
Die gerätespezifische Konfiguration enthält unter anderem den Namen und die MAC Adresse des entfernten VDR.
/etc/vdr/MountRemoteVDR/vdr2.conf
NAME="vdr2" MAC="00:77:88:99:aa:ff" MOUNTPOINT="$VIDEODIR/VDR2" SHARE=//$NAME/video_readonly CREDENTIALS=/etc/vdr/MountRemoteVDR/.vdr2credentials
Hinweis 1: Die MAC-Addresse für den entfernten VDR kann dort man mit ifconfig ermitteln:
ifconfig eth0 Link encap:Ethernet HWaddr 00:77:88:99:aa:ff ........ mehr Details
Hinweis 2: Die Broadcastdomain begrenzt die WOL Broadcasts auf den angegebenen IP Bereich. Ohne dies Angabe schickt wakonlan den WOL Broadcast an die ganze Welt (255.255.255.255), was wiederum einige Firewalls nicht mögen und damit das WOL Paket blockieren.
[Bearbeiten] Menubefehle
Es fehlen noch die Befehle für das VDR-Menu:
/usr/share/vdr/command-hooks/commands.MountRemoteVDR.conf
VDR2 anmelden : echo "/usr/lib/vdr/mount-remote-vdr.sh vdr2" | at now VDR2 abmelden : echo "/usr/lib/vdr/umount-remote-vdr.sh vdr2" | at now
[Bearbeiten] Weitere VDRs
Hat man noch mehr VDRs, kann man die leicht hinzufügen. Einfach noch eine Konfigurationsdatei erstellen, sowie die Menubefehle hinzufügen.
/etc/vdr/MountRemoteVDR/vdr3.conf
NAME="vdr3" MAC="00:77:88:99:aa:03" MOUNTPOINT="$VIDEODIR/VDR3" SHARE=//$NAME/video_readonly CREDENTIALS=/etc/vdr/MountRemoteVDR/.vdr3credentials
Samba Login-Informationen:
/etc/vdr/MountRemoteVDR/.vdr3credentials
username=NAME password=PASSWORT
Nicht vergessen die Login-Informationen vor neugierigen Blicken zu schützen:
sudo chmod 600 /etc/vdr/MountRemoteVDR/.vdr3credentials sudo chown vdr:vdr /etc/vdr/MountRemoteVDR/.vdr3credentials
/usr/share/vdr/command-hooks/commands.MountRemoteVDR3.conf
VDR3 anmelden : echo "/usr/lib/vdr/mount-remote-vdr.sh vdr3" | at now VDR3 abmelden : echo "/usr/lib/vdr/umount-remote-vdr.sh vdr3" | at now
[Bearbeiten] Konfiguration des entfernten VDR
[Bearbeiten] Samba Installieren
sudo apt-get install samba
Wir erzeugen eine Samba Freigabe in /etc/samba/smb.conf sowie den erforderlichen Samba-User. Wir sperren das Schreiben damit der andere VDR nicht versehentlich unsere Filme aufräumt.
[video_readonly] comment = video browseable = yes writable = no path = /video public = yes create mask = 0655
sudo smbpasswd NAME PASSWORT
[Bearbeiten] Links
- c't-VDR-Distribution
- Samba einrichten
- NFS-Freigabe