Hallo,
Ich habe eine Twinhan VisionDTV SAT DVB-S Karte unter SuSE Linux 9.3 Personal laufen (funktioniert super). Damit ich mit irgendeinem Programm wie kaffeine,… auch auf die Karte zugreufen kann muss ich immer dvb manuell starten (/etc/init.d/dvb start), obwohle er auh im runlevel aktiviert ist und auch startet. Wieso tritt dieses Phänomen auf?
Danke!
Hallo Stefan,
helfen kann ich bisher leider nicht; meine Versuche, die Karte unter 9.1, 9.2
und 9.3 zum Laufen zu bringen, sind kläglich gescheitert.
Welchen Trick gibt’s?
Gruß
Gereon
Mir fallen da spontan drei mögliche Gründe ein:
– Der falsche Run-Level wurde angegeben
Ich weiß nicht auswendig in welchem Runlevel Suse läuft, aber evtl. wurde dieser von dir oder YAST genau nicht berücksichtigt.
– Der von YAST generierte Aufruf des Skripts ist “defekt”.
Entweder der Programmname falsch oder der Parameter (start) nicht richtig.
Da es sich dabei wohl um ein SuSe-eigenes Skript handelt, weiß ich nicht, ob es Fehlermeldungen in die /var/log/messages ausgibt.
– Das Start-Skript wird zu früh gestartet
Es wird zu einem Zeitpunkt gestartet, zu dem die Struktur in /dev/dvb noch nicht angelegt ist.
Und wie funktioniert das mit dem letzten Punkt genau? (Zeitpunkt ändern)
Hi,
schau mal im Verzeichnis “/etc/init.d/rc5.d” nach einem Link der “S01dvb”
heißt, so startet dvb bei mir.
Martin
Ja, den gibt es. Wie gehts weiter?
Beim Betreten des Runlevels werden die Script, die mit “S” beginnen, der Reihe nach gestartet; die zweistellige Zahl nach dem “S” gibt dabei die Reihenfolge an. Du kannst das “S01dvb” z.B. in “S99dvb” umbenennen, schon wird es als eins der letzten gestartet. Näheres dazu findest Du unter [1] etwa in der Mitte der Seite beim Abschnitt “Die Runlevel”.
Hi,
was gibt der Befehl aus
“grep dvb /var/log/*”
einmal vor dem händischen starten von dvb und einmal danach.
Such den aktuellen einträge zum beispiel mit
“grep dvb /var/log/* | grep Jun\ 21”
so findest du alle Einträge in denen dvb und der 21 Juni vorkommt.
In der “boot.msg” befinden sich auch noch Meldungen die findest du mit.
“grep dvb /var/log/boot*”
Bei mir sieht das so aus
“grep dvb /var/log/* | grep Jun\ 21”
/var/log/messages:Jun 21 14:55:17 martin kernel: saa7146: register extension
‘budget_ci dvb’.
/var/log/messages:Jun 21 14:55:17 martin kernel: saa7146: register extension
‘dvb’.
/var/log/messages:Jun 21 14:55:17 martin kernel:
drivers/media/dvb/frontends/dib3000mb.c: did not found a DiBCom 3000-MB.
/var/log/messages:Jun 21 14:55:17 martin kernel: bt878 find by dvb adap:
checking “TT-Budget/WinTV-NOVA-CI PCI”
/var/log/messages:Jun 21 14:55:17 martin kernel: bt878 find by dvb adap: NOT
found “TT-Budget/WinTV-NOVA-CI PCI”
/var/log/warn:Jun 21 14:55:17 martin kernel: saa7146: register extension
‘budget_ci dvb’.
/var/log/warn:Jun 21 14:55:17 martin kernel: saa7146: register extension
‘dvb’.
/var/log/warn:Jun 21 14:55:17 martin kernel:
drivers/media/dvb/frontends/dib3000mb.c: did not found a DiBCom 3000-MB.
/var/log/warn:Jun 21 14:55:17 martin kernel: bt878 find by dvb adap: checking
“TT-Budget/WinTV-NOVA-CI PCI”
/var/log/warn:Jun 21 14:55:17 martin kernel: bt878 find by dvb adap: NOT found
“TT-Budget/WinTV-NOVA-CI PCI”
“grep dvb /var/log/boot*”
/var/log/boot.msg:start services (random dvb)
/var/log/boot.msg:exit status of (random dvb) is (0 0)
/var/log/boot.omsg: dvb)
/var/log/boot.omsg:exit status of (random dvb) is (0 0)
Wobei sicherlich der “exit status” interesannt ist.
Achso bevor du dvb von Hand startest gib noch den Befehl
“rcdvb status” ein, kommt da ein “running”?
Martin
Das brachte keinen Erfolg. Danke.
Vor dem manuellen Start:
/var/log/messages:Jun 21 06:51:20 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/messages:Jun 21 06:51:43 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/messages:Jun 21 16:23:51 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/messages:Jun 21 16:24:13 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/messages:Jun 21 16:38:28 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/messages:Jun 21 16:38:48 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/messages:Jun 21 16:42:44 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/messages:Jun 21 16:43:06 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/messages:Jun 21 16:52:11 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/messages:Jun 21 16:52:29 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/warn:Jun 21 06:51:20 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/warn:Jun 21 06:51:43 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/warn:Jun 21 16:23:51 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/warn:Jun 21 16:24:13 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/warn:Jun 21 16:38:28 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/warn:Jun 21 16:38:48 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/warn:Jun 21 16:42:44 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/warn:Jun 21 16:43:06 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
/var/log/warn:Jun 21 16:52:11 STEFAN-KOCH kernel: saa7146: register extension ‘dvb’.
/var/log/warn:Jun 21 16:52:29 STEFAN-KOCH kernel: bttv0: add subdevice “dvb0”
Nach dem manuellen Start ändert sich nichts.
Bei “grep dvb /var/log/boot*” erhalte ich keine Ausgabe.
Tja, da ich keine SuSe fahre, dachte ich mir: Auf der CD in der letzten c’t ist doch ein SuSe 9.3 Live System. Schnell mal ins DVD-Lw des REchners mit der DVB-Karte geworfen und sehen, was die SuSe so treibt.
Was soll ich sagen: Mit der Meldung “Initializing hardware…” kommt der Rechner zuverlässig zum Stehen. :(
OK – Booten im Textmodus hilft.
Das /dev/dvb-Verzeichnis ist da, aber nur root kann es beschreiben.
Ein Skript namens /etc/init.d/dvb gibt es nicht (das Paket dvb ist wohl nicht bei der Live-CD dabei, jedenfalls ist es weder installiert, noch installierbar), Kaffeine erkennt die DVB-Karte nicht (Geht auch kaum, das die 0.5 mitgeliefert wird, aber erst die 0.6 DVB-T-Unterstützung hat. Das Update könnte in den Multimedia-Paketen stecken.)
Außerdem wird nicht automatisch der budget_ci Treiber geladen.
Es kann sein, dass diese Arbeiten: Treiber laden, Verzeichnisrechte setzen durch das dvb-Skript erledigt werden.
Schau doch mal vor dem manuellen Starten von /etc/init.d/dvb nach, wie die Verzeichnisrechte von /dev/dvb und /dev/dvb/adapter0 stehen. Hier sieht das so aus:
$ ls -l /dev/dvb
drwxrwxrwx 2 root root 120 Jun 21 16:26 adapter0/
—
Die letzten drei rxw sind wichtig!
Außerdem schau nach, ob der Treiber geladen ist:
$ lsmod|grep budget_ci
sollte 9 Zeilen ergeben.
Wenn beides nicht zutrifft, ist das Skript wohl doch nicht automatisch gelaufen.
Hi,
du mußt rausbekommen ob dvb nach dem booten läuft,
das kannst du mit dem Komando “rcdvb status” herausfinden, es muß ein
“running” ausgeben.
Martin
STEFAN-KOCH:~ # lsmod|grep budget_ci ergibt nichts
——–
aber
——–
STEFAN-KOCH:~ # lsmod|grep bt
bttv 146320 0
i2c_algo_bit 8968 1 bttv
btcx_risc 4744 1 bttv
tveeprom 12824 1 bttv
video_buf 20356 2 bttv,saa7146_vv
v4l2_common 5760 2 bttv,saa7146_vv
videodev 9088 2 bttv,saa7146_vv
firmware_class 9472 5 bttv,sp887x,nxt2002,dvb_ttpci,sp8870
i2c_core 21776 26 tuner,bttv,i2c_algo_bit,tveeprom,tda80xx,tda1004x,tda10021,sp887x,nxt6000,nxt2002,mt352,mt312,l64781,dib3000_common,cx24110,cx22702,cx22700,at76c651,dvb_ttpci,ves1820,stv0299,tda8083,stv0297,sp8870,ves1x93,ttpci_eeprom
STEFAN-KOCH:~ # ls -l /dev | grep dvb
drwxr-xr-x 6 root root 144 Jun 13 18:48 dvb
STEFAN-KOCH:~ # ls -l /dev/dvb
total 178
drwxr-xr-x 6 root root 144 Jun 13 18:48 .
drwxr-xr-x 35 root root 181880 Jun 22 13:01 ..
drwxr-xr-x 2 root root 248 Jun 13 18:48 adapter0
drwxr-xr-x 2 root root 248 Jun 13 18:48 adapter1
drwxr-xr-x 2 root root 248 Jun 13 18:48 adapter2
drwxr-xr-x 2 root root 248 Jun 13 18:48 adapter3
Nichtmal mit “kdesu kaffeine” oder in Benutzer root kann ich mit kaffeine auf dvb zugreifen.
Ja, das gibt es aus.
ALso bei mir ging’s ganz einfach:
1. Karte mit Yast einrichten.
2. Habe ich die Multimedia-Pakete 1-4 mit dem Online-Update aufgespielt.
3. DVB mit yast nachinstalieren
4. Ein Kaffeine mit DVB Funktion installiert.
Kaffeine ist nicht unbedingt notwendig, ob die Multimedia Pakete notwendig sind weis ich nicht (bei einem war nur KaxTV dabei)
DVB wird im Runlevel auf Ja gesetzt. Ich muss dann bei jedem Systemstart in der root-Konsole. “/etc/init.d/dvb start” eingeben. Erst dann ist in Kaffeine die DVB funktion verfügber (in KaxTV ebenso).
Kaffeine ist nicht unbedingt notwendig.
Jetzt sollte man einen Programmsuchlauf machen können, danach sollte alles funktionieren.
Ich verwende die SuSe Linux 9.3 Personal aus der aktuellen c’t (13/2005).