Forum Scope


Match



Forum Options



Min search length: 3 characters / Max search length: 84 characters
sp_TopicIcon
Start aplikace po startu
RSS
Avatar
libor
3 Posts
(Offline)
1
30 prosince, 2013 - 9:21 pm

Prosím zkušenější o radu:

potřebuji po startu sytému spustit tightvncserver …

nejblíže řešení bylo http://www.astromik.org/raspi/05.htm, ale je to program který má, myslím, zbytečně moc funkcí…

představoval bych si to tak, že do /etc/init.d dám soubor třeba: *tvncserver (755)

který obsahuje příkaz:               tightvncserver

který spustí aplikaci…

ale potvora to nefunguje…. v čem je problém neví někdo prosím?

 

díky Libor

Avatar
MiK
89 Posts
(Offline)
2
31 prosince, 2013 - 9:24 am

Určitě je třeba ještě zadat v terminálu příkaz:
  sudo update-rc.d tvncserver defaults

Pokud soubor /etc/init.d/tvncserver neobsahuje všechny náležitosti (hlavně ty úvodní komentáře), zahlásí se při vykonání toho „update-rc.d“ nějaká varování, ale bude to fungovat.

Hlavní problém je v tom, že se ten soubor „/etc/init.d/tvncserver“ bude spouštět automaticky nejen při startu, ale i při vypínání RasPi.
Při startu se spustí s parametrem „start“:
/etc/init.d/tvncserver start

Při vypínání se spustí s parametrem „stop“:
/etc/init.d/tvncserver stop

Proto musí ten soubor někde uvnitř obsahovat skript s testem na předávaný parametr.
Když je tím parametrem „start“, tak se normálně spustí požadovaný program (tightvncserver …).
Když je to „stop“, tak se neděje nic, nebo se ten program ukončí (pkill …).

Takže ten soubor /etc/init.d/tvncserver by měl vypadat minimálně nějak takto:

case „$1“ in
  start)
    su ‚/usr/bin/tightvncserver‘
    ;;
  stop)
    pkill tightvncserver
    ;;
esac
exit 0

Avatar
libor
3 Posts
(Offline)
3
31 prosince, 2013 - 1:24 pm

úžasný… děkuji! funguje…
tak a teď si jdu nastudovat detaily proč to tak je…

inicializace update-rc.d >>> default<<< tak to je dobrý fór. Já bych to při vypínání Pi nechal klidně vytuhnout, ale tohle je vážně elegantní…

Case v „bashi“, pokud to tak lze nazvat,  je zřejmé, ještě se tedy dopídím, proč se používá ) za příkazem a co je to esac… tím už ale nebudu otravovat…

ale ještě jeden dotaz bych měl…  je nezbytné aby to bylo směřováno (exit 0)?z

 

děkuji zvořile

Libor

Avatar
MiK
89 Posts
(Offline)
4
31 prosince, 2013 - 3:03 pm

„esac“ je ukončení konstrukce „case“ – (je to „case“ napsané pozpátku).
Stejně tak třeba „fi“ je konec podmínky „if“.

Proč je tam ten „exit 0“, to nevím, opsal jsem to z nějakého návodu když jsem začínal a od té doby to takhle používám.

Avatar
libor
3 Posts
(Offline)
5
31 prosince, 2013 - 3:23 pm

tak jsem to našel: exit 0 … program bude proveden pokud je vše OK (viz. http://www.root.cz/clanky/hrat…..e-hodnoty/ )

case esac … to je dobrý, to jsem jinde nezaznamenal

a závorka uzavírá uvěřovací podmínku….

 

tak tedy už rozumím všemu a ještě jednou děkuji za rozšíření zornic… <:)

 

libor

Avatar
raspbianka
7 Posts
(Offline)
6
20 června, 2014 - 11:05 am

ty bláho … tohle je dost fajn já jsem nevěděla že je možný zapínat programy takhle hned po stratu.

Forum Timezone: Europe/Prague
All RSS Show Stats
Administrators:
admin
Top Posters:
BigSandy: 100
MiK: 89
JuraS.: 37
Enigma: 26
Ch4rlieB: 19
DFZ: 12
GRaven: 11
buci: 11
postcd: 10
marty-PiDA: 9
Newest Members:
Matyys
Cerveny
JSlovak
esperanzaponce
tosik
pali
VildaB
aidmin
grace231252226
leticiajaynes47
Forum Stats:
Groups: 1
Forums: 4
Topics: 335
Posts: 808

 

Member Stats:
Guest Posters: 2
Members: 555
Moderators: 0
Admins: 1
Most Users Ever Online: 61
Currently Online:
Guest(s) 4
Currently Browsing this Page:
1 Guest(s)