Hallo,
habe mal meine Dreambox 820 komlett neu aufgesetzt, daher habe ich mal einige schritte gleich aufgeschrieben
und will hier mal erklären wie Ihr auf euerer Dreambox mit neuerem DreamboxOS (OE2.2) eine NFS Server aufbauen könnt.
Bitte hier keine Fragen wie man einen NFS-Client einrichtet, dies ist ein anderes Thema!!!!
Und es gibt daszu sogar einen eigenen Thread: DreamboxOS (OE2.2) NFS Verbindung (client) einrichten (autofs)[FAQ]
Diese Art funktioniert "so nur" bei den neueren Boxen mit DreamboxOS als System!
Voraussetzung:
- wissen wie man sich mit seiner Box per Telnet/SSH verbindet
- Box ist im Heimnetzwerk zusammen und für später dann auch für NFS-Client's erreichbar
- Box ist Verbunden mit dem Internet
- Wie man Dateien (text) auf der Dreambox erstellt (Unixformat)
- FesteIP-Adresse der Dreambox (direkt vergeben oder über Feste IP vom Router (DHCP mit Anbindung an MAC-Adresse)
Frage:
- Wie richte ich nun die Dreambox (OE2.2) als NFS_Servert ein?
Antwort:
Zuerst müssen wir die NFS Dienste Installieren und starten, dazu müssen wir uns per Telnet auf die gewünscht Box einloggen
und folgendes über die Konsole installieren und ausführen:
Also nacheinander ab arbeiten:
- opkg update && opkg upgrade
- apt-get update && apt-get -f install
- opkg install nfs-utils
- systemctl enable nfs-server
- apt-get install nano (einfacher Editor für die Konsole)
Info:
der NFS-Server kann hiermit gesteuert werden:
- systemctl restart nfs-server
- systemctl start nfs-server
- systemctl stop nfs-server
- systemctl status nfs-server
Überprüfen ob der Server läuft geht hiermit:
root@dm820:~# systemctl status nfs-server
nfs-server.service - NFS Server
Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled)
Active: inactive (dead)
start condition failed at Thu 1970-01-01 01:00:05 CET; 46 years 5 months ago
Jan 01 01:00:05 dm820 systemd[1]: Started NFS Server.
root@dm820:~#
So wie man nun erkennt, der Server selbst läuft (ist enabled) aber noch inaktiv, da er ja noch nichts machen Kann/muss
So nun müssen wir schauen was wir den als NFS-Server freigeben wollen.
Das einfachste ist den Befehl "blkid" zu verwenden!
Wer diesen nicht haben sollte installiert nochmals folgendes: - opkg install util-linux-blkid
root@dm820:~# blkid
/dev/mmcblk0p1: LABEL="dreambox-rootfs" UUID="da991132-42c8-49ae-ae11-ca7d347d0ef9" TYPE="ext4" PARTLABEL="primary" PARTUUID="60b957d8-96a0-41ab-84b9-df5b3db516fe"
/dev/mmcblk0p2: LABEL="dreambox-data" UUID="5a1134db-37bc-41a5-a9d5-20518fb39597" TYPE="ext4" PARTLABEL="primary" PARTUUID="046080d3-6a65-42bd-9558-0e26a0122a90"
/dev/sda1: LABEL="dreambox-storage" UUID="d1608534-e582-4af6-a68b-8a9a5f9d5879" TYPE="ext4" PARTLABEL="dreambox-storage" PARTUUID="29c326c4-0784-4bd2-8f11-78cc774396f9"
/dev/mmcblk0: PTUUID="858edc9f-3529-4ae5-98b6-1b2391e7ec7c" PTTYPE="gpt"
root@dm820:~#
Erklärung (blkid):
Nun sehen wir was für "Laufwerke" in unsere Dreambox vorhanden sind.
Die "Laufwerke":
- /dev/mmcblk0p1:
- /dev/mmcblk0p2:
-/dev/mmcblk0:
sind Interne Partitionen und davon sollte man immer die Finger lassen!
Festplatten, USB-Sticks, Esata und andere Geräte (Laufwerke, Platten, Partitionen) werden üblicher weise immer angezeigt als:
- /dev/sdx
/dev/sda1 im ober Falls ist das Erste angeschlossene Laufwerk mit der ersten Partition (a), daher die (1).
Wie man erkennt habe ich also nur ein Laufwerk angeschlossen mit nur einer Partition!
Info:
Die Dreambox "mountet" (bindet ein) üblicherweise das erste angeschlosse Laufwerk als /media/hdd, geht also davon aus das es eine Platte ist die
als für Aufzeichningen vorgesehen ist.
Unter dem Verzeichnis /media können wir nachschauen was eingebunden (gemountet) wurde:
Wir sehen hier nun folgende Verzeichnisse:
- dreambox (da sind meine NFS-Verbindungen zu den anderen Dreamboxen drin)
- net wird automatisch erstellt, und bisher könnte mir noch keiner erklären für was das denn nun gut ist? wird also ignoriert...
-nas (da sind meine NFS-Verbindungen zu meinem NAS Qnap-TS119 drin)
- hdd ist also meine "Laufwerk" von /dev/sda1
Den Inhalt des Laufwerks können wir uns auch anzeigen lassen, mittels:
so nun kommt die Entscheidung was will ich denn überhaupt für den NFS-Server "Freigeben"?
Ein einzelne Verzeichnis, oder gleich die ganze Platte?
- der Pfad zur Platte wäre einfach nur /media/hdd
- zum Verzeichnis der TV-Aufnahmen dann /media/hdd/movie
Ich entscheide mich wie wohl die meisten auch für die gesamte Platte.
Wer nicht genau weiß welche IP-Adresse und Subnetz seine Dreambox hat kann dies so auslesen:
root@dm820:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:09:34:2F:2C:2C
inet addr:192.168.1.13 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fdde:254a:92f5:0:209:34ff:fe2f:2c2c/64 Scope:Global
inet6 addr: fe80::209:34ff:fe2f:2c2c/64 Scope:Link
inet6 addr: fdde:254a:92f5::c67/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3269 errors:0 dropped:0 overruns:0 frame:0
TX packets:1710 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:731373 (714.2 KiB) TX bytes:327360 (319.6 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:473 errors:0 dropped:0 overruns:0 frame:0
TX packets:473 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:173034 (168.9 KiB) TX bytes:173034 (168.9 KiB)
root@dm820:~#
Display More
Meine IP-Adresse wäre also 192.168.1.13 und das Subnetzt (Mask) 255.255.255.0
Die Freigabe der Laufwerke erfolgt mittels einer einfacher Textdate (exports) die sich im Verezichnis /etc befinden muss.
diese erstellen wir nun mittels:
Und geben dort dann wie folgt ein:
1. Verzechnis was Freigeben wird und setzten dahhinter ein TAb mit dar Tabtaste ab.
2. Die IP-adresse/Subnetz
3. Wie die NFS-Freigabe sein soll (Parameter) näheres dazu im NFS-Wiki und oder Foren
Das ganze sieht einfach so aus:
/media/hdd 192.168.1.13/255.255.255.0(rw,all_squash,anonuid=0,anongid=0,no_subtree_check,async)
Abgespeichert wird mit >linke Strg> und O (großes Ohh)
Hat man keine Schreibfehler eingbaut sollte man nun ohne Fehlermeldung den NFS-Server neu starten können:
Und sehen uns wieder den Status an:
root@dm820:/# systemctl status nfs-server
nfs-server.service - NFS Server
Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled)
Active: active (exited) since Sun 2016-06-12 13:26:46 CEST; 2s ago
Process: 843 ExecStopPost=/usr/sbin/exportfs -f (code=exited, status=0/SUCCESS)
Process: 840 ExecStop=/usr/sbin/rpc.nfsd 0 (code=exited, status=0/SUCCESS)
Process: 849 ExecStart=/usr/sbin/rpc.nfsd $NFSD_OPTS $NFSD_COUNT (code=exited, status=0/SUCCESS)
Process: 846 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS)
Main PID: 849 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/nfs-server.service
Jun 12 13:26:46 dm820 systemd[1]: Started NFS Server
Display More
miitles showmount können wir auch überpfüfen ob die Freigabe für alle Sichtbar ist:
root@dm820:/# showmount -e 192.168.1.13
Export list for 192.168.1.13:
/media/hdd 192.168.1.13/255.255.255.0
root@dm820:/#
So das war es schon, und da wir das ganze auf der Konsole auf der Dreambox Händisch gemacht haben funktioniert das ganze auch
und wird haben keine Probleme mit irgendwelchen Rechten, Windowsformat usw.
Und sollte bei euch Fehler auftreten, habt Ihr zu 100% einen Tippfehler gemacht, oder die Anleitung nicht richtig befolgt.
Denn ich habe dies so wie es Hier steht Schritt für Schritt an meiner DM820 so ausgeführt und dokumentiert
Wer mehr zu den NFS-Optionen der /etc/exports wissen will, für was die stehen und was da alles machbar ist
hat hier eine gute "deustchsprachige" Quelle:
- https://wiki.ubuntuusers.de/NFS/
Sollte nun also Euer NFS-Server nun laufen könnt Ihr euere ersten NFS-Clients mit diesem Verbinden, wie dies geht
findet Ihr in diesen Threads:
DreamboxOS (OE2.2) NFS Verbindung (client) einrichten (autofs)[FAQ]