perl script pri zapinani/vypinani systemu

Sekcia: Programovanie 08.01.2006 | 16:26
Avatar nardew debian  Používateľ
Hi. Potrebujem, aby sa mi pri starte a vypinani systemu volal jeden perlovsky script... Len neviem ako to najlepsie docielit, lebo z bashu(local.start local.stop) perlovsky script nezavolam(teda neviem zatial ako). idealne by bolo, keby sa dal taky perl sourcnut v bashovom subore ako iny bash subor, ale to nefunguje.... dik
    • Re: perl script pri zapinani/vypinani systemu 08.01.2006 | 16:07
      Avatar borg Arch, Debian jessie  Administrátor
      ja si davam skripty ktore potrebujem spustit pri starte do /etc/init.d/local, presenejsie do funkcie start()
      • Re: Re: perl script pri zapinani/vypinani systemu 08.01.2006 | 16:15
        Avatar nardew debian  Používateľ
        dik, spravim to tak aj ja....
      • Re: Re: perl script pri zapinani/vypinani systemu 08.01.2006 | 16:18
        Avatar nardew debian  Používateľ
        este otazka... neviem ci tomu dobre chapem, ale: ako interpret musi byt vzdy /sbin/runscript. potom su tam funckie start, stop atd., ale v nich mozes zavolat perlovsky subor? lebo ako kukam subory, tak to vsetko bash co tam je... resp. mam funkciu start() { ak ako mozem zavolat tu perlovsky skript } dik
        • Re: Re: Re: perl script pri zapinani/vypinani syst 08.01.2006 | 16:22
          Avatar borg Arch, Debian jessie  Administrátor
          priklad mam perlovsky skript ulozeny v /home/user/bin/skript.pl (tento skript ma nastaveny priznak pre spustenie [teda chmod 750 skript.pl]). do /etc/init.d/local vo funkcii start() pridam tieto riadky if [ -x /home/user/bin/skript.pl ]; then /home/user/bin/skript.pl fi
          • Re: Re: Re: Re: perl script pri zapinani/vypinani 08.01.2006 | 16:26
            Avatar nardew debian  Používateľ
            diky, presne daco taketo som hladal...
    • Re: perl script pri zapinani/vypinani systemu 08.01.2006 | 16:08
      m0d0r   Návštevník
      Za 1. neviem co je local.start... ;) ale hlavicky skriptovacich jazykov zacinaju takto "#![cesta k bashu,zshell-u,python-u,perlu...]" nie a ked sa to vola tak sa ten urcity skript interpretuje cez tu hlavicku ;) Za 2. no podla mna teoria init skriptov je o tom ze to je jedno aky program spustaju nie ? a v podstate to nemusi byt ani daemon :). Priklad net.eth0 podmna este som sa nepozeral do toho skriptu, ale iba zoberie nastavenie z /etc/conf.d/net a na zaklade toho spusti postupnost prikazov ako ifconfig route a spol..... a na konci to to povypina tak preco si nesravit skript ktory pri starte pusti ten perlovsky skript a pri konci cize pri "/etc/init.d/moj_init_skript stop " ho pusti zase :).
      • Re: Re: perl script pri zapinani/vypinani systemu 08.01.2006 | 16:14
        Avatar nardew debian  Používateľ
        1.) local.start a loca.stop su v Gentoo subory, ktore sa volaju na zaciatku systemu(local.start ;)) a na konci systemu(local.stop).... btw tie hlavicky skriptov si mal asi na mysli ze definujes interpreta pre dany subor ;) ale kedze local.start/stop maju ako interpreta definovany bash, nemozes v nich spustit perlovske veci ani takyto subor volat, lebo by to nevedel interpret prelozit a taktiez nemozes pre jeden subor volat viac interpretov ;) 2.) to bude asi jedina cesta ze vytvorit si vlastny init skript, ale touto cestou som prave nechcel ist... ale vidim, ze to asi inak nepojde... takze dik
        • Re: Re: Re: perl script pri zapinani/vypinani syst 08.01.2006 | 16:23
          m0d0r   Návštevník
          1.) no ja neviem ;) ale ak sa dobre pamatam tak bash ma zopar dobrych vlastnosti ;) ako napriklad ked v skripte nieco zadas do gulatych zatvoriek tak sa to pokusi spustit ;) potom je tam este prikaz "exec" ak si dobre pamatam ;) a mozes cez to ak sa nemylim pustit co chces :) cize kludne aj dalsi skript :) 2.) No nemam co dodat. Len ci je to az tak potrebne robit koli tomu vlastny init skript preto som napisal dve moznosti
          • Re: Re: Re: Re: perl script pri zapinani/vypinani 08.01.2006 | 16:25
            Avatar nardew debian  Používateľ
            dik, ale to s tym /etc/init.d/local a funkciou start sa mi vidi teraz elegantnejsie.... ale asi budem musiet poskusat inu cestu ako spustit ten skript ako pises...