vdr-sxfe:n uudelleenkäynnistys kaukolla

DVB kortit, emolevyt, adapterit, antennit, kotelot jne
makehu
Säätäjä
Viestit: 399
Liittynyt: 30.07.2006 22:09
Paikkakunta: Uusikaupunki

vdr-sxfe:n uudelleenkäynnistys kaukolla

Viesti Kirjoittaja makehu » 05.09.2007 22:37

Voisiko joku ystävällinen vääntää rautalangasta kuinka tuo uudelleenkäynnistys tehdään?
Sen tiedän että tuohon käytetään tuota irexec:ä mutta en saa päähän kuinka tuo käytännössä tehdään.

Distrona on Gentoo.

edittiä: Meni tietenkin vahingossa väärään paikkaan....

Avatar
phelin
Yli-ihminen
Viestit: 1256
Liittynyt: 09.02.2005 3:00
Paikkakunta: Helsinki

Viesti Kirjoittaja phelin » 05.09.2007 22:53

Näin minä sen olen tehnyt, distrona tosin Kubuntu.

/etc/irexec.conf sisältää tämmöistä:

Koodi: Valitse kaikki

begin
    prog = irexec
    button = I
    config = sudo -u vdruser startvdr-sxfe.sh &
end

begin
    prog = irexec
    button = II
    config = killall -9 vdr-sxfe
end

begin
    prog = irexec
    button = tvsat
    config = sudo -u vdruser /etc/init.d/vdr start
end
Minulla on siis kaukossa 3 nappia varattu vdr-sxfe:n sammuttamiseen ja käynnistämiseen ja vdr:n käynnistämiseen (hätäapu jos se sattuu kaatumaan).

irexec käynnistyy daemonina lircin jälkeen. startvdr-sxfe.sh on skripti, joka hoitaa vdr-sxfe:n käynnistämisen. Sen sisältö on tämmöinen:

Koodi: Valitse kaikki

#!/bin/bash

if [ `ps -ef | grep "vdr-sxfe " | grep -v grep | grep -c "vdr-sxfe "` = "0" ];then
        logger "Starting vdr-sxfe via start script"
        export DISPLAY=:0
        export XAUTHORITY=/home/vdruser/.Xauthority
        STARTTIME=`date +%Y%m%d_%H%M`
        if [ `whoami` = "vdruser" ]; then
                vdr-sxfe --reconnect --fullscreen --audio=alsa --video=xv --display=0.0 --verbose xvdr://127.0.0.1 2> /var/log/vdr/vdr-sxfe_err_${STARTTIME}.log 1> /var/log/vdr/vdr-sxfe_${STARTTIME}.log &
        else
                sudo -u vdruser vdr-sxfe --reconnect --fullscreen --audio=alsa --video=xv --display=0.0 --verbose xvdr://127.0.0.1 2> /var/log/vdr/vdr-sxfe_err_${STARTTIME}.log 1> /var/log/vdr/vdr-sxfe_${STARTTIME}.log &
        fi
        rm -f /var/log/vdr/vdr-sxfe_err_current.log
        rm -f /var/log/vdr/vdr-sxfe_current.log
        ln -s /var/log/vdr/vdr-sxfe_err_${STARTTIME}.log /var/log/vdr/vdr-sxfe_err_current.log
        ln -s /var/log/vdr/vdr-sxfe_${STARTTIME}.log /var/log/vdr/vdr-sxfe_current.log
else
        logger "vdr-sxfe already running..."
fi

# set affinity for vdr, vdr-sxfe and X
logger "Set affinity to vdr, vdr-sxfe and X..."
sudo taskset -pc 0 $(pidof vdr-sxfe)
sudo taskset -pc 1 $(pidof vdr)
sudo taskset -pc 1 $(pidof X)
Kolme viimeistä komentoa varmistavat, että vdr-sxfe saa eri ytimen kuin vdr ja X. Alun DISPLAY ja XAUTHORITY exportit johtuvat siitä, että samaa skriptiä kutsutaan myös roottina tietyissä tilanteissa. Skriptissä on siis todennäköisesti paljon turhaa muiden kannalta...

makehu
Säätäjä
Viestit: 399
Liittynyt: 30.07.2006 22:09
Paikkakunta: Uusikaupunki

Viesti Kirjoittaja makehu » 07.09.2007 0:10

Kiitti phelin, idea selvisi kyllä mutta ilmeisesti gentoossa tuo hoidetaan jotenkin muuten.

irexec käynnistyy kyllä lircd jälkeen mutta tuota /etc/irexec.conf:ia ei ole olemassa, minneköhän nuo konffit kuuluu gentoossa laittaa ??

Voisiko joku gentoon käyttäjä jolla on tuo frontendin uudelleenkäynnistys hoidettu kakella antaa vähän vinkkiä?

P.Kosunen
Yli-ihminen
Viestit: 1148
Liittynyt: 06.11.2005 14:08
Paikkakunta: Helsinki

Viesti Kirjoittaja P.Kosunen » 07.09.2007 15:51

cat /etc/lircrc

Koodi: Valitse kaikki

# irexec commands

begin
	remote = Kake
	button = Record
	prog   = irexec
	repeat = 0
	config = /usr/local/bin/restart-fe.sh
cat /etc/conf.d/irexec

Koodi: Valitse kaikki

# Options to pass to the irexec process
IREXEC_OPTS="/etc/lircrc"

# User to execute irexec as.
# Warning: Running irexec as root can open security holes
IREXEC_USER="root"

# Use this to disable the warning printed when starting irexec as root
IREXEC_DISABLE_ROOT_WARNING=yes

makehu
Säätäjä
Viestit: 399
Liittynyt: 30.07.2006 22:09
Paikkakunta: Uusikaupunki

Viesti Kirjoittaja makehu » 07.09.2007 21:05

Kiitti nyt toimii :D
Nyt vain säätämään skriptejä kuntoon.

makehu
Säätäjä
Viestit: 399
Liittynyt: 30.07.2006 22:09
Paikkakunta: Uusikaupunki

Viesti Kirjoittaja makehu » 21.09.2007 23:26

P.Kosunen kirjoitti:cat /etc/lircrc

Koodi: Valitse kaikki

# irexec commands

begin
	remote = Kake
	button = Record
	prog   = irexec
	repeat = 0
	config = /usr/local/bin/restart-fe.sh
Onko tuo restart-fe.sh julkaisukelpoinen?

Itselläni on ongelmia tuon frontendin käynnistyksen kanssa, jostain syystä vdr-sxfe kyllä sammuu mutta ei käynnisty enää.

Laitoin erilliset käynnistys ja sammutuskomennot eri nappien taakse mutta tuo käynnistys ei onnistu sitten millään, eipä tuo paljoa nykyään haittaa kun tuo xineliboutput ei juurikaan kaadu enää mutta kun joku homma ei toimi täydellisesti niin se pistää vähän harmittamaan...

Laitoin tuon /etc/conf.d/irexec.conff :iin tuohon IREXEC_USER= kohtaan käyttäjän joka avaa vdr-sxfe frontendin..

P.Kosunen
Yli-ihminen
Viestit: 1148
Liittynyt: 06.11.2005 14:08
Paikkakunta: Helsinki

Viesti Kirjoittaja P.Kosunen » 22.09.2007 14:32

makehu kirjoitti:Onko tuo restart-fe.sh julkaisukelpoinen?

Koodi: Valitse kaikki

#!/bin/sh
/usr/bin/killall -9 vdr-sxfe
Tuon killall-rimpsun voi laittaa suoraan lircrc-tiedostoonkin. Ajelen loopissa tuota vdr-sxfe:tä joten se käynnistyy automaattisesti uudelleen. (Viimeisessä päivityksessä Gentoo oli siirtänyt killall-binäärin /bin:stä /usr/bin:iin, tovi meni ihmetellessä miksei restart toimikaan.)
makehu kirjoitti:Itselläni on ongelmia tuon frontendin käynnistyksen kanssa, jostain syystä vdr-sxfe kyllä sammuu mutta ei käynnisty enää.

Laitoin erilliset käynnistys ja sammutuskomennot eri nappien taakse mutta tuo käynnistys ei onnistu sitten millään, eipä tuo paljoa nykyään haittaa kun tuo xineliboutput ei juurikaan kaadu enää mutta kun joku homma ei toimi täydellisesti niin se pistää vähän harmittamaan...

Laitoin tuon /etc/conf.d/irexec.conff :iin tuohon IREXEC_USER= kohtaan käyttäjän joka avaa vdr-sxfe frontendin..
'vdr-sxfe --display=jotain'

Display täytyy luultavasti määrittää, kun startataan eri login sessiosta (vai miksi tuota kutsutaankaan?).

kennelpoika
Amatööri
Viestit: 13
Liittynyt: 18.12.2008 12:45

Viesti Kirjoittaja kennelpoika » 02.02.2010 20:13

Missähän mulla mättää kun yritin saada tehtyä tuota vdr-sxfe:n käynnistystä kaukolla ja tapahtuu vaan seuraavaa: Kuva välähtää ja kun kurkkaa dmesgiä niin siellä lukee

[ 440.840778] vdr-sxfe[1910]: segfault at 0 ip 002613ab sp bfc836e0 error 4 in libxine.so.2.0.0[21e000+4f000]

Jos killaan bootissa käynnistyneen irexecin ja käynnistän sen käsin niin kaikki toimii ok.

Käytössä ubuntu 9.10 ja vdr 1.7.9

vdr@makkari:~$ more /etc/lirc/lircrc

begin
repeat = 0
button = TV
prog = irexec
config = /usr/local/bin/restart-fe.sh &
end

begin
repeat = 0
button = Go
prog = irexec
config = /usr/local/bin/stop-fe.sh
end


vdr@makkari:~$ cat /usr/local/bin/restart-fe.sh
vdr-sxfe --display=0.0 --video=xv --tcp --lirc=/dev/lircd --fullscreen xvdr://192.168.255.70

JoniR
Havittelija
Viestit: 33
Liittynyt: 27.10.2006 20:42
Paikkakunta: Kuopio
Viesti:

Viesti Kirjoittaja JoniR » 02.02.2010 20:56

kennelpoika kirjoitti:Missähän mulla mättää kun yritin saada tehtyä tuota vdr-sxfe:n käynnistystä kaukolla ja tapahtuu vaan seuraavaa: Kuva välähtää ja kun kurkkaa dmesgiä niin siellä lukee

Jos killaan bootissa käynnistyneen irexecin ja käynnistän sen käsin niin kaikki toimii ok.
Minulla on vähän vastaava ongelma tuon irexecin kanssa. Käytössä Ubuntu 8.04. Bootissa en saa vaan käynnistettyä silleen, että se toimisi. Tein sitten purkka virityksen ja killall irexec & uudelleen käynnistys cronissa 5min välein ja homma toimii :lol:

-Joni

noeikujoo
Yli-ihminen
Viestit: 2156
Liittynyt: 23.08.2004 3:00
Paikkakunta: Kajaani

Viesti Kirjoittaja noeikujoo » 02.02.2010 21:11

kennelpoika kirjoitti:Missähän mulla mättää kun yritin saada tehtyä tuota vdr-sxfe:n käynnistystä kaukolla ja tapahtuu vaan seuraavaa: Kuva välähtää ja kun kurkkaa dmesgiä niin siellä lukee

[ 440.840778] vdr-sxfe[1910]: segfault at 0 ip 002613ab sp bfc836e0 error 4 in libxine.so.2.0.0[21e000+4f000]

Jos killaan bootissa käynnistyneen irexecin ja käynnistän sen käsin niin kaikki toimii ok.

Käytössä ubuntu 9.10 ja vdr 1.7.9

vdr@makkari:~$ more /etc/lirc/lircrc

begin
repeat = 0
button = TV
prog = irexec
config = /usr/local/bin/restart-fe.sh &
end

begin
repeat = 0
button = Go
prog = irexec
config = /usr/local/bin/stop-fe.sh
end


vdr@makkari:~$ cat /usr/local/bin/restart-fe.sh
vdr-sxfe --display=0.0 --video=xv --tcp --lirc=/dev/lircd --fullscreen xvdr://192.168.255.70
Varmaankin /etc/lirc/lircrc:ssä pitäisi määrittää, millä käyttäjätunnuksella vdr-sxfe käynnistetään?

noeikujoo
Yli-ihminen
Viestit: 2156
Liittynyt: 23.08.2004 3:00
Paikkakunta: Kajaani

Viesti Kirjoittaja noeikujoo » 02.02.2010 21:15

Itse käytän käyttäjän kotihakemistossa oleva .lircrc-tiedostoa ja se ainakin toimii:

Koodi: Valitse kaikki

$ cat startir.sh
#!/bin/bash
killall irexec
irexec -d /home/vdruser/.lircrc
Tuo startir.sh-skripti siis ladataan Gnomen startupissa.

kennelpoika
Amatööri
Viestit: 13
Liittynyt: 18.12.2008 12:45

Viesti Kirjoittaja kennelpoika » 03.02.2010 11:05

Kiitokset vinkeistä :)


laitoin irexecin käynnistymään Gnomen valikoista löytyvään "käynnistettävät ohjelmat" listaan niin alkoi pelittää.

P.Kosunen
Yli-ihminen
Viestit: 1148
Liittynyt: 06.11.2005 14:08
Paikkakunta: Helsinki

Viesti Kirjoittaja P.Kosunen » 03.02.2010 12:45

Koodi: Valitse kaikki

/usr/bin/sudo -H -u vdr komento
Sudolla voi ajaa komentoja toisena käyttäjänä.

Vastaa Viestiin