Olove
Super Dreamer +


Dabei seit: 01.04.2003
Beiträge: 1.596
 |
|
| Howto: NFS-Server auf der Dreambox |
 |
Auch wenn der NFS-Server kein echtes Plugin ist, kommt das vorerst mal hier rein.
Howto zum Einsatz des NFS-Servers auf der Dreambox
Inhalt:
1. Ziel
2. Voraussetzungen
3. Vorgehensweise
4. Schluss
1. Ziel:
Ziel ist es, einen NFS-Server auf der Dreambox zum laufen zu bringen, über den dann andere PCs, Dream- oder DBoxen auf die interne Festplatte der Dreambox zugreifen können.
So ist es zum Beispiel möglich, von einer Dbox2 mit Neutrino/Enigma auf der Dreambox-Festplatte aufzunehmen oder Daten, die dort liegen abzuspielen.
2. Voraussetzungen:
Benötigt wird:
- das aktuelle Beta-Image 1.08.2-1 (ältere sollten auch funktionieren, sind aber nicht von mir getestet)
- der NFS-User-Server (HIER DOWNLOADEN)
- ein FTP-Client
- ein Telnet-Client (z.b. in der DOS-Konsole)
- eine Festplatte in der Dreambox
- etwas grundlegendes Verständnis, was "Telnet" überhaupt ist, um es bedienen zu können
3. Vorgehensweise
Es wird angenommen, dass sich das aktuelle Image in einem lauffähigen Zustand auf der Box befindet und die Festplatte eingebaut ist und funktioniert.
3.1. Download des NFS-Servers
Den NFS-Server lädt man sich hier runter.
3.2. Kopieren des Installationsarchivs "nfs-user-server.tar" auf die Dreambox
Die runtergeladene Datei wird mit einem beliebigen FTP-Client auf die Box transferiert und im Verzeichnis
abgelegt.
3.3 Öffnen einer Telnet-Verbindung zur Box
Man öffnet eine Telnet-Verbindung zur Box und begibt sich ins Verzeichnis "/hdd"
| code: |
1:
|
cd /hdd --> RETURN |
|
3.4 Entpacken des Installationsarchivs
Die Datei "nfs-user-server.tar" wird nun entpackt.
| code: |
1:
|
tar xf nfs-user-server.tar --> RETURN |
|
Man findet nun ein Verzeichnis "nfs" auf der Festplatte.
3.5 Setzen der Gruppe und des Besitzers des Verzeichnisses
Sicherheitshalber sollte man den Besitzer und die Gruppe des Verzeichnisses noch manuell auf "root" setzen.
| code: |
1:
|
chown -R root:root /hdd/nfs -->RETURN |
|
3.6 Anpassen ans lokale Netz
Damit der NFS-Server im eigenen Netz funktioniert, muss eingestellt werden, wer überhaupt alles auf ihn zugreifen darf und welche Verzeichnisse freigegeben werden.
Beides geschieht in der Datei exports im Verzeichnis "/hdd/nfs/etc/"
Diese Datei müssen wir nun also nach unseren Bedürfnissen anpassen.
[I)Anmerkung: Die Konfigurationsdateien unter Linux sind normale Textdateien, man muss aber sichergehen, dass auch das Unix-Textformat eingehalten wird. Also möglichst nicht Wordpad oder Notepad benutzen, die machen die Zeilenumbrüche kaputt, sondern beispielsweise Ultraedit (mit der entsprechenden Option) oder einen Linux-Editor.[/I]
| code: |
1:
|
/hdd 192.168.0.0/255.255.0.0(rw,no_root_squash,sync) |
|
So sieht die Datei bei mir z.B. aus.
Erklärung:
"/hdd" --> Dieses Verzeichnis wird freigegeben
" 192.168.0.0/255.255.0.0" --> Hier wird definiert, wer auf die Freigabe zugreifen darf. Dieser Eintrag muss eurem lokalen Netz entsprechen.
Also bei einem Netz mit 10.1.x.x muss das entsprechend geändert werden, bei 192.1.0.0. muss auch die Netzmaske (255.0.0.0) angepasst werden.
Da es sich hier um Netzwerkwissen handelt, welches hier nicht komplett vermittelt werden kann, empfehle ich den Kauf eines Buches zu diesem Thema oder einführend den Besuch einer Webseite zu dem Thema, z.b.
- Hier (KLICK) oder da (KLICK) oder dort (KLICK).
"rw" --> Lese/Schreibzugriff (rw oder ro)
"no_root_squash" --> Wird benötigt, um auf dem Client-Rechner, die Freigabe als root mounten zu dürfen. Da es auf der Dreambox quasi nur root als User gibt, eine wichtige Option
"sync" --> Stellt sicher, dass gecachte Daten nach jeder Schreiboperation automatisch auf die Platte geschrieben werden. Einfach so lassen!
Durch die Angabe mehrerer Freigaben kann man natürlich auch verschiedene Verzeichnisse freigeben, z.B.
| code: |
1:
2:
3:
|
/hdd/movie 192.168.0.0/255.255.0.0(rw,no_root_squash,sync)
/hdd/bilder 192.168.0.0/255.255.0.0(rw,no_root_squash,sync)
/hdd/mp3 192.168.0.0/255.255.0.0(rw,no_root_squash,sync) |
|
Dies könnte interessant sein, wenn verschiedene Clients auf unterschiedliche Verzeichnisse zugreifen können sollen.
3.7 Start des NFS-Servers
Nun wird der NFS-Server schon gestartet:
| code: |
1:
2:
|
cd nfs --> RETURN
./nfs.sh start --> RETURN |
|
Läuft alles glatt, bekommt man keine Fehlermeldung und der Cursor blinkt wieder.
Man kann nun noch überprüfen, ob der Server wirklich läuft:
| code: |
1:
|
ps | grep rpc --> RETURN |
|
Nun sollte man drei Prozesse angezeigt bekommen, die in etwa so aussehen:
| code: |
1:
2:
3:
|
268 root 704 S rpc.mountd -f /hdd/nfs/etc/exports
270 root 720 S rpc.nfsd 2 -f /hdd/nfs/etc/exports
271 root 720 S rpc.nfsd 2 -f /hdd/nfs/etc/exports |
|
Sollte das der Fall sein, kann man sich freuen und der Server läuft bereits, außerdem besteht eine Freigabe auf das Verzeichnis "/hdd".
3.8 Mounten
Um nun noch von einem Client auf die Box zugreifen zu können, muss man lediglich die freigegebene Festplatte mounten.
Testweise machen wir das hier mal direkt von der Dreambox, auf der der Server läuft: Später (auf dem Client) wird woanders hingemountet.
| code: |
1:
|
mount -t nfs -o rw,nolock boxpip:/hdd /mnt/nfs -->RETURN |
|
Erklärung:
"mount -t nfs" --> wir mounten, und zwar ein NFS-Filesystem
"-o rw" --> wir wollen Lese- und Schreibrechte haben
"nolock" --> nolock Wird unter Umständen für die Verbindung zu einem alten NFS-Server benötigt.
"boxip:/hdd" --> Die Freigabe befindet sich auf folgender IP und heißt "hdd"
"/mnt/nfs" -->[/b] Im Verzeichnis "/mnt/nfs" auf unserer Box soll der Inhalt der Freigabe erscheinen.
Jetzt testen wir, ob das geklappt hat:
| code: |
1:
2:
|
cd /mnt/nfs -->RETURN
ls --> RETURN |
|
Hoffentlich bekommen wir jetzt den Inhalt unserer Festplatte angezeigt und sind glücklich.
Ab hier spare ich mir detaillierte Anweisungen für jede Eingabe und erkläre nur noch die jeweiligen Schritte, wer soweit gekommen ist, sollte den Rest auch noch schaffen
3.9 Automatischer Start des NFS-Servers beim Booten der Box
Um den NFS-Server automatisch bei jedem Booten der Dreambox zu starten, ist lediglich ein kleiner Eintrag nötig.
Benötigt wird die Datei "init" im Verzeichnis "/var/etc/" und hier folgender Eintrag:
Danach mit einem beliebigen Editor füllen:
| code: |
1:
|
sh /hdd/nfs/nfs.sh start |
|
Am einfachsten für diesen Zweck:
| code: |
1:
|
echo sh /hdd/nfs/nfs.sh start >>/var/etc/init |
|
3.10 Anpassung
Wer den freigegebenen Pfad ändern möchte, kann dies in der Datei /hdd/nfs/etc/exports" tun.
Sinnvoll wäre z.B. aud dem vorgegebenen /hdd ein /hdd/movie zu machen und sich für andere Verzeichnisse extra Freigaben anzulegen. (Einfach die Zeile kopieren und nach Gutdünken verändern).
So könnte man z.B. eine Freigabe auf /hdd/movie machen, eine auf /hdd/urlaubsbilder oder auf /hdd/mp3s, ganz wie es beliebt.
3.11 Benutzung mit anderen Dreamboxen/Dboxen (Clients)
Hier nur kurz beschrieben, wie man von einer DBox2 mit Yadi-Image die Festplatte der Dreambox mountet, um vollen Zugriff auf die Festplatte der Dreambox zu erhalten. (geht mit Neutrino und mit Enigma)
Wer zwei Dreamboxen verknüppeln möchte, schaut direkt unten bei Enigma
Wichtig: Gemountet wird nur auf dem Client, NICHT auf der Box, wo der Server installiert ist. Also alles folgende wird auf dem CLIENT gemacht!
Neutrino:
Einstellungen - Netzwerk - NFS/CIFS mounten
Hier die Daten eingeben, bei "Verzeichnis-Freigabe" den "/" am Anfang nicht vergessen.
Wichtig, hier steht der Freigabenahme, der in der exports-Datei auf dem Server angegeben wurde (siehe 3.9)
Weiterhin beim ersten Punkt "Mount-Optionen" alles bis auf "rw" löschen, beim zweiten Punkt "Mount-Optionen" (nolock, ...) alles lassen, wie es ist.
Abpsielen kann man dann unter "Movieplayer" - "TS-Abpsielen", das sollte selbsterklärend sein.
Enigma:
Einstellungen - Experten - Netzwerk - Freigaben
Auch hier die Freigaben eingeben, mounten und dann über den Dateimodus abspielen, fertig.
Hier bei "Options" drauf achten, "rw" bzw. "ro" zu setzen. (für Lese+Schreibrechte oder Nur-Lesen)
Wieder: die Server-Freigabe entspricht dem Pfad in der exports auf dem Server:
z.B.
| code: |
1:
2:
|
exports:
/hdd/ 192.168.0.0/255.255.0.0(rw,no_root_squash,sync) |
|
Enigma-Menü:
Dir: hdd/ (OHNE führendem "/" )
LocalDir: /hdd/ (MIT führendem "/")
Options: rw
Options: nolock,rsize=8192,wsize=8192
(Anmerkung: Bei mir funktioniert im Moment das Streaming aus unerklärlichen Gründen nur unter Neutrino, Enigma stürzt beim Abspielen sofort ab, sobald das behoben ist, kommt hier die Erläuterung rein)
4. Schluss
Dieses Howto stellt keinen Anspruch auf Unfehlbarkeit. Anregungen, Kommentare, Erweiterungen und Screenshots sind erwünscht und willkommen.
Ich bitte darum, das Howto nicht an anderer Stelle zu posten, sondern zu verlinken, damit nur eine Version des Dokuments existiert und nicht zig alte Varianten kursieren.
Also bitte einfach auf dieses Posting hier verlinken
Olove, 21.09.2004
Fragen, Änderungswünsche und Fehlermeldungen bitte im Dream-Multimedia-Forum stellen.
__________________ All we need to do ... is keep talking (Stephen Hawking)
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Olove: 25.11.2004 14:21.
|
|