OSCam Server mit S02 und HD02 in Smargo an Synology Diskstation mit Intel Atom Prozessor
Diese Anleitung funktioniert bei folgenden Geräten:
DS713+ DS2413+ DS1512+ DS1812+ RS812+/RS812RP+ RS2212+/RS2212RP+
DS411+ DS411+II DS1511+ DS2411+ RS2211+/RS2211RP+ DS710+ DS1010+ RS810+/RS810RP+
Bitte lest euch die Anleitung einmal komplett durch und schaut ob ihr alles verstanden habt, oder ob etwas unklar ist, bevor ihr startet.
Soooo, nach langer Recherche im Internet und zahllosen Nächten habe ich es geschafft OSCam auf meiner Diskstation 1812+ zum laufen zu bekommen.
Das möchte ich nun mit euch teilen. Die Informationen im Netz beziehen sich meist nur auf kleinere Geräte mit ARM Prozessor oder laufen völlig am Thema vorüber.
Nachfolgend also ein Tutorial um auf seiner Intel Atom Based Diskstation einen OSCam Server mit S02 und HD02 support ans laufen zu bringen.
Das ist mein erstes Tutorial, bitte seht es mir nach wenn es nicht perfekt ist.
Als erstes mal zu meinem Grundsystem:
Ich verwende eine Synology Diskstation 1812+ mit 4 x WD Red 3TB Platten. Als DSM habe ich die aktuelle 4.1 installiert.
Ziel war es einen OSCam Server mit S02 und HD02 über Smargo Reader im lokalen Netzwerk zu verteilen.
Läuft mittlerweile seit 3 Monaten ohne einen Ausfall.
Dann legen wir mal los:
Als erstes muss auf der Diskstation Telnet oder SSH freigegeben werden. Falls die Diskstation nicht hinter einer Firewall, oder sonst irgendwie zugänglich ist, rate ich euch von Telnet ab.
Falls ihr doch Telnet nutzen wollt, sollte die Firewall diesen Port auf jeden Fall von außen blocken. Also Port 23/TCP. Als nächstes verbinden wir uns über Telnet oder SSH mit der Diskstation.
Dort melden wir uns mit dem Benutzer root und dem Adminkennwort auf der Konsole an. Jetzt kopieren wir die USB-Module in den Ordner /lib/modules
Die Module sind für die Atom Cedarview CPU kompiliert und laufen bisher ohne Probleme. Im Paket sind die Treiber für ftdi_sio, pl2303 und usbseriell enthalten.
Den pl2303 benötigen wir für unser Vorhaben eigentlich nicht, man kann aber nie wissen was noch kommt…
Die Dateien müssen wir mit chmod auf 644 flaggen. Wer nicht weiß wie es funktioniert:
chmod 644 ftdi_sio.ko pl2303.ko usbseriell.ko im Ordner /lib/modules ausführen.
Als nächstes erstellen wir und im Ordner /usr/syno/etc/rc.d/ ein Script. Analog zur Namenskonvention der Diskstation habe ich mein Script S99USBModules.sh genannt.
Um das Script zu erstellen nutzen wir einfach vi. Im Ordner einfach nur vi S99USBModules.sh eingeben und das Fenster mit folgendem Inhalt füllen.
Um den Editiermodus zu starten einfach auf i wie Insert drücken.
Im die Datei abzuspeichern nutzen wird folgende Methode. CTRL + C, ESC, Doppelpunkt, wq!, Enter
CTRL + C, ESC für Editiermodus verlassen
Doppelpunkt für „Menü“ öffnen
wq!, Enter für write - quit
EDIT – Ich habe mittlerweile festgestellt, dass das Mapping in OSCam über ttyUSB nicht das wahre ist.
Wer diese trotzdem nutzen möchte, kann im Script einfach das # bei den mknods entfernen.
Das gerade erstellte Script flaggen wir nun mit 755. Anschließend kann das Script über
./usr/syno/etc/rc.d/S99USBModules.sh start gestartet werden. Soweit, so gut…
Der positive Nebeneffekt an dieser Stelle ist, dass alle Scripts aus dem Ordner /r.cd/ automatisch mit der Diskstation gestartet wird.
Hier ist also keine Anpassung mehr nötig. Nach dem manuellen Start des Scripts führen wir nur den Befehl dmesg aus.
Mit diesem Befehl (Driver Message) sollte nun folgendes im Output erkennbar sein.
Jetzt wird es Zeit die Smargos einzustecken. Sollte jetzt im Script die ttyUSB Veriante angewendet worden sein, sollte der Output von dmesg nur folgendermaßen aussehen.
Als nächstes erstellen wir uns einen Public Ordner.
mkdir /volume1/public
und wechseln per cd /volume1/public in den Ordner
Hier holen wir uns jetzt per wget das Bootstrap für unsere Synology.
Mittlerweile funktioniert das auf über das Paketzentrum mit der entsprechenden Repository.
Ich habe es bei mir nicht ausprobiert, hatte mir das Paket bereits vorher manuell installiert.
Falls Ihr diesen Weg gehen wollt, gibt es genügend Informationen dazu im Web.
Manuelle Installation:
wget
chmod +x syno-i686-bootstrap_1.2-7_i686.xsh
sh syno-i686-bootstrap_1.2-7_i686.xsh
Das Bootstrap wird nun installiert.
Per vi öffnen wir unter /etc die Datei profile Hier fügen wir beim Pfad folgendes ein.
/opt/bin:/opt/sbin:
Der Doppelpunkt dient als Trennzeichen. Die Datei wird wieder ESC : wq! Enter gespeichert.
In der Datei /root/.profile kommentieren wir per vi die Zeilen PATH und export Path mit einem # aus.
Wir speichern auch diese Datei wieder ab. In der Datei /etc/rc.local kommentieren wir per vi die Zeile [ -x /etc/rc.optware ] && /etc/rc.optware start mit einem # aus.
Datei wieder speichern.
Jetzt müssen wir unsere neue Optware noch mit dem System verknüpfen. Dazu müssen wir das alte Mount erst einmal lösen.
Das tun wir mit umount /opt Des weiteren entfernen wir den vorhandenen /opt Ordner mit rmdir /opt
Nun verlinken wir die neue Optware mit dem Linux System ln -s /volume1/@optware /opt
Damit die Optware auch automatisch gestartet wird, bauen wir das Startscript im System ein. Hierzu laden wir uns das optware Script aus dem Internet
wget
Erstellen des Startordners mkdir –p /usr/local/etc/rc.d/
Verschieben des Scripts mv optware.sh /usr/local/etc/rc.d/
Flaggen der Berechtigung chmod +x /usr/local/etc/rc.d/optware.sh
Anschließend sollte die Diskstation neu gestartet werden. Nach dem Reboot melden wir uns wieder auf der Konsole der Diskstation an.
Im nächsten Schritt richten wir uns eine chroot Umgebung ein. Wir können uns diese wieder per wget aus dem Internet.
wget
Auf der Diskstation entpacken wir jetzt die runtergeladene Datei und bringen die chroot Umgebung zum laufen.
Für “Faule” gibt es hier noch ein Script für den Start der chroot Umgebung. Es sorgt dafür, dass /dev und /proc zur Verfügung stehen, und Tools wir „df“ funktionieren.
Vielen Dank an satware.com für die Entwicklung des Scripts und die Anleitung für die chroot Umgebung. Das Script bekommen wir per
wget
Wir ändern die Berechtigung über chmod +x ~/debian-chroot.sh
Jetzt kann die chroot Umgebung einfach mit ~/debian-chroot.sh gestartet werden.
Mit exit oder CTRL+D kann die Umgebung wieder verlassen werden.
Im nächsten Schritt werden wir uns OSCam für die Diskstation neu kompilieren. Es gibt zwar mittlerweile Downloads für die Diskstation im Internet, aber leider nicht für die Intel Atom CPUs mit Cedarview.
Für das Cross compiling benötigen wir nun das DSM Tool Chain. Das Paket kann auf
Hier laden wir uns den aktuellen Tool Chain (momentan DSM 4.1) herunter. Als CPU Architektur nehmen wir Intel x86 Linux 3.2.11 (Cedarview). Es gibt eines für x86 und eines für x64.
Ich habe beide heruntergeladen. Desweiteren benötigen wir einen Linux PC. Hierfür habe ich mir das aktuelle Debian Paket als VM unter Parallels installiert.
Ubuntu oder sonstige Linux Derivate funktionieren natürlich auch. Wir installieren uns ein Minimal System. Danach installieren wir die notwendigen Pakete sofern noch nicht vorhanden.
sudo apt-get install build-essential g++ libssl-dev libusb-1.0-0-dev libpcsclite-dev
Nach der Installation erstellen wir uns die notwendigen Verzeichnisse um OSCam per SVN zu laden.
sudo mkdir /home/oscam-svn/
sudo mkdir /home/toolchain/
sudo chmod 777 /home/oscam-svn/ /home/toolchain/
Die heruntergeladenen Toolchain Dateien kopieren wir nun auf den Linux PC in den Ordner /home/toolchain und entpacken diese anschließend
tar –xvzf gcc420_glibc236_x64_cedarview-GPL.tar und
tar –xvzf gcc421_glibc236_x86_cedarview-GPL.tar
Nun wechseln wir in den Ordner /home/oscam-svn/ und führen diesen Befehl aus um das Paket zu laden.
svn co
svn up CMakeLists.txt
mkdir build
Wir erstellen uns ein neues toolchain im Ordner /home/oscam-svn/toolchains
Einfach in den Ordner wechseln und vi toolchain-i686-Diskstation.cmake eingeben.
In diese Datei tragen wir dann folgenden Inhalt ein.
Zusätzlich benötigen wir noch den Quellcode von libusb. Den gibt es hier
Wir kopieren die Datei nach /home/oscam-svn/
Wir wechseln in den Ordner cd /home/oscam-svn/
und entpacken den Inhalt mit tar –xvjf libusb-1.0.9.tar.bz2
Das Paket müssen wir jetzt noch für unsere Diskstation cross compilen.
cd /home/oscam-svn/libusb-1.0.9
CC=/home/toolchain/i686-linux-gnu/bin/i686-linux-gnu-gcc ./configure --host=i686-linux --target=i686-linux --prefix=/home/toolchain/i686-linux-gnu/ --exec-prefix=/home/toolchain/i686-linux-gnu/
make
make install
Nun sind alle Vorbereitungen abgeschlossen und es kann endlich mit dem kompilieren von OSCam losgehen.
cd /home/oscam-svn/build/
cmake -DWEBIF=1 -DLIBUSBDIR=/home/toolchain/i686-linux-gnu -DCMAKE_TOOLCHAIN_FILE=../toolchains/toolchain-i686-Diskstation.cmake DHAVE_LIBUSB=1 ..
make
Das Ergebnis in Form der oscam Datei kopieren wir auf unsere Diskstation. Ich habe mir in der Root einfach den Ordner oscam erstellt.
Die Datei wird über
chmod +x oscam noch geflagged und ist nun lauffähig.
EDIT – Falls euch das zu umständlich ist, findet ihr in der Database den fertig kompilierten OSCam Server. Ich werde auch von Zeit zu Zeit dort eine neue Version einstellen.
Nun führen wir auf der Diskstation ein Update der IPKG durch
ipkg update
ipkg list
Wir benötigen nun noch die Pakete gcc, libgcrypt und libusb
ipkg install gcc
ipkg install libgcrypt
ipkg install libusb
Der Output in der Konsole sollte dann folgendermaßen aussehen.
Als nächstes müssen die OSCam Konfigurationsdateien auf den Server kopiert werden.
Die oscam.conf Datei könnte z.B. so aussehen
oscam.server (Bei device = kann entwerder /dev/ttyUSB0 und /dev/ttyUSB1 eingetragen werden, oder die Device ID aus der Diskstation.
Diese kann mit dem folgenden Befehl aus der Diskstation ausgelesen werden)
cat /proc/bus/usb/devices | grep -E "^([TSPD]:.*|)$"
oscam.user
oscam.provid, oscam.services und oscam.srvid sollten direct aus dem Internet geladen warden.
Damit ist der OSCam Server fertig konfiguriert. Damit wir uns jetzt um den Systemstart keine Gedanken mehr machen müssen, erstellen wir uns nun noch ein Script für den automatischen Start.
Wir erstellen wieder mi vi im Ordner /usr/syno/etc/rc.d/ eine Datei S99OSCam.sh Der Inhalt der Datei sollte folgendermaßen aussehen.
Speichern über CTRL + C, ESC, wq!, Enter. Über chmod 755 S99OSCam.sh flaggen wir wieder die Berechtigung. Falls wir nun die Diskstation neu starten, wird automatisch der OSCam Server gestartet.
Falls der Ort für den OSCam nicht /oscam ist, müssen natürlich die Scripts und Configdateien angepasst werden.
Um das System jetzt noch perfekt zu machen, erstellen wir zum Schluss noch eine Script, welches regelmäßig über Crontab unseren OSCam Server überprüft.
Es sollte nicht nur schauen ob der Service gestartet ist, sondern auch Warnings und Panics aus der Log auswerten. Somit ist sichergestellt, dass unser Dienst nicht nur gestartet ist, sondern auch funktioniert.
Dazu erstellen wir uns im Ordner /oscam per vi das Script srvcheck.sh Der Inhalt der Datei sollte so aussehen.
Die Datei flaggen wir wieder per chmod auf 755. Um das Script jetzt noch automatisch ablaufen zu lassen öffnen wir mit vi die Datei /etc/crontab und tragen den Service ein.
Falls der Check z.B. alle Zehn Minuten gestartet werden soll, tragen wir vorne 10 und beim Rest einen Stern ein. Das Script liegt dann unter /oscam/srvcheck.sh
Jetzt wird unser Dienst alle Zehn Minuten überprüft und bei Bedarf abgebrochen, neu gestartet und in eine separate Logdatei mit dem Namen oscamlog.failed kopiert.
Das war es erstmal. Wer alles richtig gemacht hat kann sich über einen OSCam Server auf seiner Linkstation freuen.
EDIT – Lib Modules, Scripte und OSCam Server lege ich in der Database ab.
Diese Anleitung funktioniert bei folgenden Geräten:
DS713+ DS2413+ DS1512+ DS1812+ RS812+/RS812RP+ RS2212+/RS2212RP+
DS411+ DS411+II DS1511+ DS2411+ RS2211+/RS2211RP+ DS710+ DS1010+ RS810+/RS810RP+
Bitte lest euch die Anleitung einmal komplett durch und schaut ob ihr alles verstanden habt, oder ob etwas unklar ist, bevor ihr startet.
Soooo, nach langer Recherche im Internet und zahllosen Nächten habe ich es geschafft OSCam auf meiner Diskstation 1812+ zum laufen zu bekommen.
Das möchte ich nun mit euch teilen. Die Informationen im Netz beziehen sich meist nur auf kleinere Geräte mit ARM Prozessor oder laufen völlig am Thema vorüber.
Nachfolgend also ein Tutorial um auf seiner Intel Atom Based Diskstation einen OSCam Server mit S02 und HD02 support ans laufen zu bringen.
Das ist mein erstes Tutorial, bitte seht es mir nach wenn es nicht perfekt ist.
Als erstes mal zu meinem Grundsystem:
Ich verwende eine Synology Diskstation 1812+ mit 4 x WD Red 3TB Platten. Als DSM habe ich die aktuelle 4.1 installiert.
Ziel war es einen OSCam Server mit S02 und HD02 über Smargo Reader im lokalen Netzwerk zu verteilen.
Läuft mittlerweile seit 3 Monaten ohne einen Ausfall.
Dann legen wir mal los:
Als erstes muss auf der Diskstation Telnet oder SSH freigegeben werden. Falls die Diskstation nicht hinter einer Firewall, oder sonst irgendwie zugänglich ist, rate ich euch von Telnet ab.
Falls ihr doch Telnet nutzen wollt, sollte die Firewall diesen Port auf jeden Fall von außen blocken. Also Port 23/TCP. Als nächstes verbinden wir uns über Telnet oder SSH mit der Diskstation.
Dort melden wir uns mit dem Benutzer root und dem Adminkennwort auf der Konsole an. Jetzt kopieren wir die USB-Module in den Ordner /lib/modules
Die Module sind für die Atom Cedarview CPU kompiliert und laufen bisher ohne Probleme. Im Paket sind die Treiber für ftdi_sio, pl2303 und usbseriell enthalten.
Den pl2303 benötigen wir für unser Vorhaben eigentlich nicht, man kann aber nie wissen was noch kommt…
Die Dateien müssen wir mit chmod auf 644 flaggen. Wer nicht weiß wie es funktioniert:
chmod 644 ftdi_sio.ko pl2303.ko usbseriell.ko im Ordner /lib/modules ausführen.
Als nächstes erstellen wir und im Ordner /usr/syno/etc/rc.d/ ein Script. Analog zur Namenskonvention der Diskstation habe ich mein Script S99USBModules.sh genannt.
Um das Script zu erstellen nutzen wir einfach vi. Im Ordner einfach nur vi S99USBModules.sh eingeben und das Fenster mit folgendem Inhalt füllen.
Um den Editiermodus zu starten einfach auf i wie Insert drücken.
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
Im die Datei abzuspeichern nutzen wird folgende Methode. CTRL + C, ESC, Doppelpunkt, wq!, Enter
CTRL + C, ESC für Editiermodus verlassen
Doppelpunkt für „Menü“ öffnen
wq!, Enter für write - quit
EDIT – Ich habe mittlerweile festgestellt, dass das Mapping in OSCam über ttyUSB nicht das wahre ist.
Wer diese trotzdem nutzen möchte, kann im Script einfach das # bei den mknods entfernen.
Das gerade erstellte Script flaggen wir nun mit 755. Anschließend kann das Script über
./usr/syno/etc/rc.d/S99USBModules.sh start gestartet werden. Soweit, so gut…
Der positive Nebeneffekt an dieser Stelle ist, dass alle Scripts aus dem Ordner /r.cd/ automatisch mit der Diskstation gestartet wird.
Hier ist also keine Anpassung mehr nötig. Nach dem manuellen Start des Scripts führen wir nur den Befehl dmesg aus.
Mit diesem Befehl (Driver Message) sollte nun folgendes im Output erkennbar sein.
Du musst dich Anmelden oder Registrieren um den Inhalt der Angebote zu sehen!
Jetzt wird es Zeit die Smargos einzustecken. Sollte jetzt im Script die ttyUSB Veriante angewendet worden sein, sollte der Output von dmesg nur folgendermaßen aussehen.
Du musst dich Anmelden oder Registrieren um den Inhalt der Angebote zu sehen!
Als nächstes erstellen wir uns einen Public Ordner.
mkdir /volume1/public
und wechseln per cd /volume1/public in den Ordner
Hier holen wir uns jetzt per wget das Bootstrap für unsere Synology.
Mittlerweile funktioniert das auf über das Paketzentrum mit der entsprechenden Repository.
Ich habe es bei mir nicht ausprobiert, hatte mir das Paket bereits vorher manuell installiert.
Falls Ihr diesen Weg gehen wollt, gibt es genügend Informationen dazu im Web.
Manuelle Installation:
wget
Du musst dich
Anmelden
oder
Registrieren
um diesen link zusehen!
chmod +x syno-i686-bootstrap_1.2-7_i686.xsh
sh syno-i686-bootstrap_1.2-7_i686.xsh
Das Bootstrap wird nun installiert.
Per vi öffnen wir unter /etc die Datei profile Hier fügen wir beim Pfad folgendes ein.
/opt/bin:/opt/sbin:
Der Doppelpunkt dient als Trennzeichen. Die Datei wird wieder ESC : wq! Enter gespeichert.
In der Datei /root/.profile kommentieren wir per vi die Zeilen PATH und export Path mit einem # aus.
Wir speichern auch diese Datei wieder ab. In der Datei /etc/rc.local kommentieren wir per vi die Zeile [ -x /etc/rc.optware ] && /etc/rc.optware start mit einem # aus.
Datei wieder speichern.
Jetzt müssen wir unsere neue Optware noch mit dem System verknüpfen. Dazu müssen wir das alte Mount erst einmal lösen.
Das tun wir mit umount /opt Des weiteren entfernen wir den vorhandenen /opt Ordner mit rmdir /opt
Nun verlinken wir die neue Optware mit dem Linux System ln -s /volume1/@optware /opt
Damit die Optware auch automatisch gestartet wird, bauen wir das Startscript im System ein. Hierzu laden wir uns das optware Script aus dem Internet
wget
Du musst dich
Anmelden
oder
Registrieren
um diesen link zusehen!
Danach führen wir folgende Befehle aus. Erstellen des Startordners mkdir –p /usr/local/etc/rc.d/
Verschieben des Scripts mv optware.sh /usr/local/etc/rc.d/
Flaggen der Berechtigung chmod +x /usr/local/etc/rc.d/optware.sh
Anschließend sollte die Diskstation neu gestartet werden. Nach dem Reboot melden wir uns wieder auf der Konsole der Diskstation an.
Im nächsten Schritt richten wir uns eine chroot Umgebung ein. Wir können uns diese wieder per wget aus dem Internet.
wget
Du musst dich
Anmelden
oder
Registrieren
um diesen link zusehen!
Auf der Diskstation entpacken wir jetzt die runtergeladene Datei und bringen die chroot Umgebung zum laufen.
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
Für “Faule” gibt es hier noch ein Script für den Start der chroot Umgebung. Es sorgt dafür, dass /dev und /proc zur Verfügung stehen, und Tools wir „df“ funktionieren.
Vielen Dank an satware.com für die Entwicklung des Scripts und die Anleitung für die chroot Umgebung. Das Script bekommen wir per
wget
Du musst dich
Anmelden
oder
Registrieren
um diesen link zusehen!
-O ~/debian-chroot.sh Wir ändern die Berechtigung über chmod +x ~/debian-chroot.sh
Jetzt kann die chroot Umgebung einfach mit ~/debian-chroot.sh gestartet werden.
Mit exit oder CTRL+D kann die Umgebung wieder verlassen werden.
Im nächsten Schritt werden wir uns OSCam für die Diskstation neu kompilieren. Es gibt zwar mittlerweile Downloads für die Diskstation im Internet, aber leider nicht für die Intel Atom CPUs mit Cedarview.
Für das Cross compiling benötigen wir nun das DSM Tool Chain. Das Paket kann auf
Du musst dich
Anmelden
oder
Registrieren
um diesen link zusehen!
heruntergeladen werden. Hier laden wir uns den aktuellen Tool Chain (momentan DSM 4.1) herunter. Als CPU Architektur nehmen wir Intel x86 Linux 3.2.11 (Cedarview). Es gibt eines für x86 und eines für x64.
Ich habe beide heruntergeladen. Desweiteren benötigen wir einen Linux PC. Hierfür habe ich mir das aktuelle Debian Paket als VM unter Parallels installiert.
Ubuntu oder sonstige Linux Derivate funktionieren natürlich auch. Wir installieren uns ein Minimal System. Danach installieren wir die notwendigen Pakete sofern noch nicht vorhanden.
sudo apt-get install build-essential g++ libssl-dev libusb-1.0-0-dev libpcsclite-dev
Nach der Installation erstellen wir uns die notwendigen Verzeichnisse um OSCam per SVN zu laden.
sudo mkdir /home/oscam-svn/
sudo mkdir /home/toolchain/
sudo chmod 777 /home/oscam-svn/ /home/toolchain/
Die heruntergeladenen Toolchain Dateien kopieren wir nun auf den Linux PC in den Ordner /home/toolchain und entpacken diese anschließend
tar –xvzf gcc420_glibc236_x64_cedarview-GPL.tar und
tar –xvzf gcc421_glibc236_x86_cedarview-GPL.tar
Nun wechseln wir in den Ordner /home/oscam-svn/ und führen diesen Befehl aus um das Paket zu laden.
svn co
Du musst dich
Anmelden
oder
Registrieren
um diesen link zusehen!
./svn up CMakeLists.txt
mkdir build
Wir erstellen uns ein neues toolchain im Ordner /home/oscam-svn/toolchains
Einfach in den Ordner wechseln und vi toolchain-i686-Diskstation.cmake eingeben.
In diese Datei tragen wir dann folgenden Inhalt ein.
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
Zusätzlich benötigen wir noch den Quellcode von libusb. Den gibt es hier
Du musst dich
Anmelden
oder
Registrieren
um diesen link zusehen!
Wir kopieren die Datei nach /home/oscam-svn/
Wir wechseln in den Ordner cd /home/oscam-svn/
und entpacken den Inhalt mit tar –xvjf libusb-1.0.9.tar.bz2
Das Paket müssen wir jetzt noch für unsere Diskstation cross compilen.
cd /home/oscam-svn/libusb-1.0.9
CC=/home/toolchain/i686-linux-gnu/bin/i686-linux-gnu-gcc ./configure --host=i686-linux --target=i686-linux --prefix=/home/toolchain/i686-linux-gnu/ --exec-prefix=/home/toolchain/i686-linux-gnu/
make
make install
Nun sind alle Vorbereitungen abgeschlossen und es kann endlich mit dem kompilieren von OSCam losgehen.
cd /home/oscam-svn/build/
cmake -DWEBIF=1 -DLIBUSBDIR=/home/toolchain/i686-linux-gnu -DCMAKE_TOOLCHAIN_FILE=../toolchains/toolchain-i686-Diskstation.cmake DHAVE_LIBUSB=1 ..
make
Das Ergebnis in Form der oscam Datei kopieren wir auf unsere Diskstation. Ich habe mir in der Root einfach den Ordner oscam erstellt.
Die Datei wird über
chmod +x oscam noch geflagged und ist nun lauffähig.
EDIT – Falls euch das zu umständlich ist, findet ihr in der Database den fertig kompilierten OSCam Server. Ich werde auch von Zeit zu Zeit dort eine neue Version einstellen.
Nun führen wir auf der Diskstation ein Update der IPKG durch
ipkg update
ipkg list
Wir benötigen nun noch die Pakete gcc, libgcrypt und libusb
ipkg install gcc
ipkg install libgcrypt
ipkg install libusb
Der Output in der Konsole sollte dann folgendermaßen aussehen.
Du musst dich Anmelden oder Registrieren um den Inhalt der Angebote zu sehen!
Als nächstes müssen die OSCam Konfigurationsdateien auf den Server kopiert werden.
Die oscam.conf Datei könnte z.B. so aussehen
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
oscam.server (Bei device = kann entwerder /dev/ttyUSB0 und /dev/ttyUSB1 eingetragen werden, oder die Device ID aus der Diskstation.
Diese kann mit dem folgenden Befehl aus der Diskstation ausgelesen werden)
cat /proc/bus/usb/devices | grep -E "^([TSPD]:.*|)$"
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
oscam.user
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
oscam.provid, oscam.services und oscam.srvid sollten direct aus dem Internet geladen warden.
Damit ist der OSCam Server fertig konfiguriert. Damit wir uns jetzt um den Systemstart keine Gedanken mehr machen müssen, erstellen wir uns nun noch ein Script für den automatischen Start.
Wir erstellen wieder mi vi im Ordner /usr/syno/etc/rc.d/ eine Datei S99OSCam.sh Der Inhalt der Datei sollte folgendermaßen aussehen.
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
Speichern über CTRL + C, ESC, wq!, Enter. Über chmod 755 S99OSCam.sh flaggen wir wieder die Berechtigung. Falls wir nun die Diskstation neu starten, wird automatisch der OSCam Server gestartet.
Falls der Ort für den OSCam nicht /oscam ist, müssen natürlich die Scripts und Configdateien angepasst werden.
Um das System jetzt noch perfekt zu machen, erstellen wir zum Schluss noch eine Script, welches regelmäßig über Crontab unseren OSCam Server überprüft.
Es sollte nicht nur schauen ob der Service gestartet ist, sondern auch Warnings und Panics aus der Log auswerten. Somit ist sichergestellt, dass unser Dienst nicht nur gestartet ist, sondern auch funktioniert.
Dazu erstellen wir uns im Ordner /oscam per vi das Script srvcheck.sh Der Inhalt der Datei sollte so aussehen.
Code:
Du musst dich
Anmelden
oder
Registrieren um den Inhalt der Codes zu sehen!
Die Datei flaggen wir wieder per chmod auf 755. Um das Script jetzt noch automatisch ablaufen zu lassen öffnen wir mit vi die Datei /etc/crontab und tragen den Service ein.
Falls der Check z.B. alle Zehn Minuten gestartet werden soll, tragen wir vorne 10 und beim Rest einen Stern ein. Das Script liegt dann unter /oscam/srvcheck.sh
Jetzt wird unser Dienst alle Zehn Minuten überprüft und bei Bedarf abgebrochen, neu gestartet und in eine separate Logdatei mit dem Namen oscamlog.failed kopiert.
Das war es erstmal. Wer alles richtig gemacht hat kann sich über einen OSCam Server auf seiner Linkstation freuen.
EDIT – Lib Modules, Scripte und OSCam Server lege ich in der Database ab.
Zuletzt bearbeitet: