Fórum Root.cz

Hlavní témata => Distribuce => Téma založeno: beer 27. 08. 2015, 20:01:16

Název: Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 27. 08. 2015, 20:01:16
Ahoj, nevykoná se příkaz v /etc/rc.local - nefunguje - ubuntu 15.04, v čem je problém?


Je jedno, co tam mám za příkaz, když spustím /etc/rc.local ručně, tak je to ok, ale nevykonává se při startu...
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: JardaP . 27. 08. 2015, 20:54:32
Tak pocitam, ze uz vsichni lesti kristalovou kouli (ta moje bohuzel je 140 km daleko, tak nepomuzu), protoze kdyz se nekdo pta takle blbe, ze sem ani neda ten rc.local, tak bez koule to nepujde. Ja mam v rc.loval pridane me vlastni radky a funguje mi to. Co delas blbe ty ale netusim.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: Peter 27. 08. 2015, 21:34:27
Ahoj, nevykoná se příkaz v /etc/rc.local - nefunguje - ubuntu 15.04, v čem je problém?
Problém je v prístupe k návodu na použitie. Ubuntu 15.04 nepoužíva SysV init, a ani Upstart.

Je jedno, co tam mám za příkaz, když spustím /etc/rc.local ručně, tak je to ok, ale nevykonává se při startu...
Odporučím to prepísať ako Unit pre SystemD, návodov je k dispozícii požehnane.
https://wiki.ubuntu.com/SystemdForUpstartUsers
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 27. 08. 2015, 23:47:38
Kód: [Vybrat]
# ma rc.local x(spousteci) atribut?
sudo chmod +x /etc/rc.local

# zacina rc.local radkem "#!/bin/sh -e" ?
head -n1 /etc/rc.local

# konci rc.local radkem "exit 0" ?
tail -n1 /etc/rc.local

# mas aktivni rc-local.service pro kompatibilitu systemd s /etc/rc.local?
systemctl status rc-local.service
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: JardaP . 28. 08. 2015, 00:12:24
# mas aktivni rc-local.service pro kompatibilitu systemd s /etc/rc.local?
systemctl status rc-local.service

Blbuntu nema systemctl.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 01:13:48
# mas aktivni rc-local.service pro kompatibilitu systemd s /etc/rc.local?
systemctl status rc-local.service

Blbuntu nema systemctl.

*buntu od 15.04 preslo na systemd... viz: https://wiki.ubuntu.com/VividVervet/ReleaseNotes#Boot_and_service_management
btw: Blbuntu nevim, to je distro o kterem mluvis prevazne ty a dalsi zavistivci nebo snad blbci?
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: Krysa1 28. 08. 2015, 01:32:54
btw: Blbuntu nevim, to je distro o kterem mluvis prevazne ty a dalsi zavistivci nebo snad blbci?

To si nesmis tak brat, to jen mistni pitomec nahani mnozstvi prispevku. Jeste jsem od toho zbytecneho individua nevidel ani jeden, ktery by byl prinosny, nebo k veci. Proste ho ignoruj, mozna ho to potom prestane bavit, staci jednou pohnout kolecko dolu.

...
take predpokladam, ze problem bude souviset s novyn initem.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 28. 08. 2015, 08:40:25
Ano, jedu na systemd. Z napsaného vyplívá, že spustitelný příznak mám - jelikož jde spustit ručně. Nespouští se ale při startu.

Kód: [Vybrat]
root@medved-desktop:/# systemctl status rc-local.service                                                     

● rc-local.service - /etc/rc.local Compatibility                                                             

   Loaded: loaded (/lib/systemd/system/rc-local.service; static; vendor preset: enabled)                     

   Active: failed (Result: exit-code) since Pá 2015-08-28 08:06:06 CEST; 32min ago                           

                                                                                                             

srp 28 08:06:06 medved-desktop systemd[1]: Starting /etc/rc.local Compatibility...                           

srp 28 08:06:06 medved-desktop rc.local[898]: 28/Aug/2015 08:06:06 [supernode.c: 476] Supernode ready:...UDP]

srp 28 08:06:06 medved-desktop rc.local[898]: tor: žádný proces nenalezen                                   

srp 28 08:06:06 medved-desktop systemd[1]: rc-local.service: control process exited, code=exited status=1   

srp 28 08:06:06 medved-desktop systemd[1]: Unit rc-local.service entered failed state.                       

srp 28 08:06:06 medved-desktop systemd[1]: rc-local.service failed.                                         

Hint: Some lines were ellipsized, use -l to show in full.           
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: trubicoid2 28. 08. 2015, 11:14:52
asi mas spatne cestu k tor? v tech init skriptech radeji pouzivej plnou cestu, ti demoni to vetsinou nepousti s uzivatelskou promennou PATH; t.j. misto tor napis neco jako /usr/bin/tor

jinak mozna tor by se mozna mel spoustet nejakym tor demonem misto rc.local? v bubuntu a systemd nevim; gugl rika neco jako v /etc/default/tor napsat RUN_DAEMON="yes" a pak jeste asi neco s tim systemd
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: JardaP . 28. 08. 2015, 13:11:00
*buntu od 15.04 preslo na systemd... viz: https://wiki.ubuntu.com/VividVervet/ReleaseNotes#Boot_and_service_management
btw: Blbuntu nevim, to je distro o kterem mluvis prevazne ty a dalsi zavistivci nebo snad blbci?

No a? Rc.local ma porad spoustet, je tam na to sluzba. Me service rc.local start rc.local spusti, stejne tak pri bootu.

To si nesmis tak brat, to jen mistni pitomec nahani mnozstvi prispevku. Jeste jsem od toho zbytecneho individua nevidel ani jeden, ktery by byl prinosny, nebo k veci. Proste ho ignoruj, mozna ho to potom prestane bavit, staci jednou pohnout kolecko dolu.

Jiste, mas naprostou pravdu. *buntu je skvele distro, hlavne pro zacatecniky, kteri se v nem hodne nauci. Treba az budou resit, proc jim nejde externi mys par vterin pote, co s ni prestanou soupat, kdyz notebook jede na baterku. Nebo az budou resit, proc jim jede scanner jen pod rootem. Nebo jeden z rady dalsich problemu, na ktere drive nebo pozdeji narazi kazdy, kdo stroj nepouziva jen na lezeni po webu.


Jinak nevim, o cem je se tu bavite, protoze beer stale taji svuj rc.local.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 15:56:36
Ano, jedu na systemd. Z napsaného vyplívá, že spustitelný příznak mám - jelikož jde spustit ručně. Nespouští se ale při startu.

Z napsaneho vyplivalo ze jsi to pustil, nebylo jasne ale jak, mohl si to poustet zpusobem kdy neni treba x napr. "sh /etc/rc.local", nebo "bash /etc/rc.local", tedy tim ze by jsi poustel pres sh nebo bash tak pak to i nahrazuje shell interpret kterej je ve scriptu na prvnim radku a ktery se vola pri pousteni pres pouhej nazev skriptu s x atributem...

Kód: [Vybrat]
[...]
   Active: failed (Result: exit-code) since Pá 2015-08-28 08:06:06 CEST; 32min ago                           

                                                                                                             

srp 28 08:06:06 medved-desktop systemd[1]: Starting /etc/rc.local Compatibility...                           

srp 28 08:06:06 medved-desktop rc.local[898]: 28/Aug/2015 08:06:06 [supernode.c: 476] Supernode ready:...UDP]

srp 28 08:06:06 medved-desktop rc.local[898]: tor: žádný proces nenalezen                                   
[...]
Hint: Some lines were ellipsized, use -l to show in full.           
Nicmene z toho jasne vyplyva ze rc.local ti pracuje/pousti se, ale mas v nem volani neceho co v tu chvili nemuze najit kvuli absenci nastavene PATH, viz trubicoid2...

aby jsi mel jistotu, zakomentuj vse co jsi do rc.local pridal a vloz tam radek:
Kód: [Vybrat]
touch /tmp/rc_local_bezela po nabehnuti se podivej ze v /tmp ten soubor mas ;)

Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 28. 08. 2015, 16:10:38
asi mas spatne cestu k tor? v tech init skriptech radeji pouzivej plnou cestu, ti demoni to vetsinou nepousti s uzivatelskou promennou PATH; t.j. misto tor napis neco jako /usr/bin/tor

jinak mozna tor by se mozna mel spoustet nejakym tor demonem misto rc.local? v bubuntu a systemd nevim; gugl rika neco jako v /etc/default/tor napsat RUN_DAEMON="yes" a pak jeste asi neco s tim systemd

co se týká toru, mám tam

Kód: [Vybrat]
killall tor &> /dev/null &
Důvod - spouštím raději tor přes vytvořeného uživatele tor s minimálním oprávněním, až po nalogování uživatele - toto spouštění neřeším přes /etc/rc.local, ale přes .profile.

Předpokládám, že i kdybych neměl něco úplně správně v tom souboru, že by se to mělo vykonat, protože když to spustím ručně jako root nebo přes sudo, tak je to OK. Proč sem nechci vkládat celý obsah  toho souboru - 1. důvod nejsem teď u toho pc a 2. v tom souboru mám hesla a názvy kominit k vpn n2n, ip adresu soukromého n2n serveru atd. 3. myslím, že samotný obsah by neměl mít vliv, když je to pod rootem normálně spustitelné. Pletu se?

Může mít souvislost, že vlastník souboru /etc/rc.local je root  a nastavená práva jsou 700? Z důvodu bezpečnosti chci, aby soubor byl čitelný, zapisovatelný a spustitelný pouze pro uživatele root.

Ano, jedu na systemd. Z napsaného vyplívá, že spustitelný příznak mám - jelikož jde spustit ručně. Nespouští se ale při startu.

Z napsaneho vyplivalo ze jsi to pustil, nebylo jasne ale jak, mohl si to poustet zpusobem kdy neni treba x napr. "sh /etc/rc.local", nebo "bash /etc/rc.local", tedy tim ze by jsi poustel pres sh nebo bash tak pak to i nahrazuje shell interpret kterej je ve scriptu na prvnim radku a ktery se vola pri pousteni pres pouhej nazev skriptu s x atributem...
spustil jsem to přesně takto:
Kód: [Vybrat]
sudo su
moje heslo
/etc/rc.local

Shell používám bash, hlavička /etc/rc.local je přesně
Kód: [Vybrat]
#!/bin/sh -e
Nicmene z toho jasne vyplyva ze rc.local ti pracuje/pousti se, ale mas v nem volani neceho co v tu chvili nemuze najit kvuli absenci nastavene PATH, viz trubicoid2...

aby jsi mel jistotu, zakomentuj vse co jsi do rc.local pridal a vloz tam radek:
Kód: [Vybrat]
touch /tmp/rc_local_bezela po nabehnuti se podivej ze v /tmp ten soubor mas ;)

OK. To zní rozumně, něco podobného mám na řádku před exit 0. Akorát tam mám výstup s časem zapnutí pc, který je přesměrovaný někam do /var/www/uptime.html (přesnou cestu z hlavy nevím, nicméně když ručně spustím, tak se soubor aktualizuje), přesměrovávám přes příkaz &>> /var/www/uptime.html . Kdybych tam měl na nějakém řádku u nějakého úkonu chybu, proč by na tom řádku ale selhalo a ten příkaz
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 28. 08. 2015, 16:14:38
Kdyby to killall tor bylo špatně (neběžel by tor), který by to mělo killnout, tak by to mělo pouze do /dev/null poslat chybovou hláku a mělo by to jet dál, ne?
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 16:41:34
Shell používám bash, hlavička /etc/rc.local je přesně
Kód: [Vybrat]
#!/bin/sh -e
Ta ma uvaha byla jen kdyz bys poustel pomoci "interpret skript" protoze pak to pouzije ten interpret, misto toho co mas v hlavicce a tim by se to mohlo lisit, protoze system pri startu to vola prave a jen pres ten interpret v hlavicce, prave a jen pokud je script s x atributem

Kód: [Vybrat]
killall tor &> /dev/null &

tady bude ten problem ;) protoze v hlavicce mas "sh -e" znamena to ze pri KAZDEM navratovem kodu >0 (neosetrenem) se okamzite zastavi pokracovani rc.local

pokud by tor bezel, killall vrati exit code 0 a jede se dal, tim ze nebezel vratil exit 1, dale se nic z rc.local neprovedlo a systemd service to vratilo jako failed...

resenim by mohlo byt prenastavit exit code po killall v pripade ze bude >0(tedy nemel co zabit, nebo se to nepodarilo) na 0 pomoci true, tedy zmenit ten radek na(zaroven misto presmerovani do null, pouzit primo k tomu urcenej parametr q aby nehlasil "nic sem nezabil"):
Kód: [Vybrat]
killall -q tor || true
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 16:44:23
pripadne nekompromisni zabiti pomoci SIGKILL (9)
Kód: [Vybrat]
killall -q -9 tor || true 
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 16:47:42
jo a taky nezamluvit co psal trubicoid2 akorat ze teda obracene ;) v /etc/default/tor se podivat ze mas RUN_DAEMON="no", coz by i odpovidalo tomu ze pri startu nebylo co zabit ;)
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 17:48:25
No a? Rc.local ma porad spoustet, je tam na to sluzba. Me service rc.local start rc.local spusti, stejne tak pri bootu.

No a? psal si "...untu nema systemctl", tak sem ti dal informace ze ma aby jsi se mohl vzdelavat ;)
to ze ti funguje "service rc.local start" je z duvodu ze to ve skutecnosti za tebe pusti "systemctl start rc-local.service" ;)

Jiste, mas naprostou pravdu. *buntu je skvele distro, hlavne pro zacatecniky

No a o tom to je, konecne si na to kapnul :)
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: j 28. 08. 2015, 17:55:38

Jiste, mas naprostou pravdu. *buntu je skvele distro, hlavne pro zacatecniky, kteri se v nem hodne nauci. Treba az budou resit, proc jim nejde externi mys par vterin pote, co s ni prestanou soupat, kdyz notebook jede na baterku. Nebo az budou resit, proc jim jede scanner jen pod rootem. Nebo jeden z rady dalsich problemu, na ktere drive nebo pozdeji narazi kazdy, kdo stroj nepouziva jen na lezeni po webu.

Tj, sem na 14tce LTS checknul aktualizace, rek ze nechci kodi 15, protoze pro nej sem nemel funkcni plugin ... a ten kreten stejne nainstaloval 15tku. A pak sem zjistil ze v repo je uz jen 13 a 14 se odparila ... fakt blbuntu. O tom ze po kazdym druhym patchovani prestane neco chodit ani nemluve. Kdyz vemu ze jinde mam Gentoo, a presto ze svym zpusobem je to daleko brutalnejsi distro, jeste se mi nestalo, ze by neco samo od sebe bez zadny priciny chciplo.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 18:37:50
Tj, sem na 14tce LTS checknul aktualizace, rek ze nechci kodi 15, protoze pro nej sem nemel funkcni plugin ... a ten kreten stejne nainstaloval 15tku. A pak sem zjistil ze v repo je uz jen 13 a 14 se odparila ... fakt blbuntu. O tom ze po kazdym druhym patchovani prestane neco chodit ani nemluve. Kdyz vemu ze jinde mam Gentoo, a presto ze svym zpusobem je to daleko brutalnejsi distro, jeste se mi nestalo, ze by neco samo od sebe bez zadny priciny chciplo.

no to je ale pekna <|>, kdyz zrusis oznaceni v gui aktualizacich, tak se NIC samovolne samozrejme nenainstaluje...
kdyz pouzivas apt-get upgrade/dist-upgrade tak si baliky co nechces aktualizovat, oznacis jako hold
Kód: [Vybrat]
apt-mark hold kodi*pokud to neudelas, tak je to TVOJE chyba a hazej si spinu na svoji hlavu ;)

navic v repo 14.04 neni ani Kodi 13 ani 14 ani 15, protoze je tam XBMC 12... takze mluvis asi o neoficialnim PPA od oficialniho Kodi teamu, no to je hrozne ze si dovolej zrusit 14 kdyz udelaj radu 15, nakonec tam taky nemaji pro 14.04 verzi 13, takze tezko rict co, jak a proc sis v tom sam zprasil ;)
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: JardaP . 28. 08. 2015, 19:42:17
No a? Rc.local ma porad spoustet, je tam na to sluzba. Me service rc.local start rc.local spusti, stejne tak pri bootu.

No a? psal si "...untu nema systemctl", tak sem ti dal informace ze ma aby jsi se mohl vzdelavat ;)
to ze ti funguje "service rc.local start" je z duvodu ze to ve skutecnosti za tebe pusti "systemctl start rc-local.service" ;)

Ja v systemu systemctl nemam a podle apt-file nikde neni k mani.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: C-S 28. 08. 2015, 20:13:24
mimochodem, jestli nechceš aby ti startoval tor jako démon při startu, nebylo by lepší místo jeho zabijení prostě zrušit jeho automatické spouštění?

sudo systemctl disable tor
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 23:14:11
Ja v systemu systemctl nemam a podle apt-file nikde neni k mani.

a ten system je Ubuntu 15.04?
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: JardaP . 28. 08. 2015, 23:31:53
Ja v systemu systemctl nemam a podle apt-file nikde neni k mani.

a ten system je Ubuntu 15.04?

Ne, posledni LTS. Koukam, ze se muzeme tesit na dalsi vylepseni, takze pristi LTS asi bude posledni kapkou k prechodu na jine distro.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: nobody 28. 08. 2015, 23:50:14
Ne, posledni LTS. Koukam, ze se muzeme tesit na dalsi vylepseni, takze pristi LTS asi bude posledni kapkou k prechodu na jine distro.

No a on ma prave problem viz $title s Ubuntu 15.04 a na to sem linkoval prave tu release note ze presli na systemd...
jinak taky nevim kam casem prejit z 14.04 LTS... jeste ze na jsou stale 4roky :)
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 29. 08. 2015, 02:59:44


tady bude ten problem protoze v hlavicce mas "sh -e" znamena to ze pri KAZDEM navratovem kodu >0 (neosetrenem) se okamzite zastavi pokracovani rc.local


pokud by tor bezel, killall vrati exit code 0 a jede se dal, tim ze nebezel vratil exit 1, dale se nic z rc.local neprovedlo a systemd service to vratilo jako failed...


resenim by mohlo byt prenastavit exit code po killall v pripade ze bude >0(tedy nemel co zabit, nebo se to nepodarilo) na 0 pomoci true, tedy zmenit ten radek na(zaroven misto presmerovani do null, pouzit primo k tomu urcenej parametr q aby nehlasil "nic sem nezabil"):
Kód: [Vybrat]
killall -q tor || true


Mám tam i další věci, které by se měli vykonat a přesto mohou selhat - n2n funguje jen když běží síť, síť ale nemusí v danou chvíli běžet, někdy se mi při zapnutí PC nebo připojení telefonu na wifi totiž restartuje modem - nějaká závada modemu, jsem líný ho donést do práce a vyměnit za jiný.


Než řešit každou věc zvlášť, co takhle změnit hlavičku na #!/bin/bash nebo #!/bin/sh? Pomohlo by to?






jo a taky nezamluvit co psal trubicoid2 akorat ze teda obracene v /etc/default/tor se podivat ze mas RUN_DAEMON="no", coz by i odpovidalo tomu ze pri startu nebylo co zabit


Kód: [Vybrat]
RUN_DAEMON="yes"

Má yes, ale když killall nemá co killnout, tak ten příkaz prostě jednoduše zakomentuji. Tím pádem toto nemusím vůbec ošetřovat, vždy je tor spuštěn pod vytvořeným uživatelem tor, to jsem namátkově ověřoval již mockrát. Nevadí mi, že běží jako daemon.


mimochodem, jestli nechceš aby ti startoval tor jako démon při startu, nebylo by lepší místo jeho zabijení prostě zrušit jeho automatické spouštění?


sudo systemctl disable tor
Kód: [Vybrat]
sudo systemctl disable tor
Synchronizing state for tor.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d tor defaults
Executing /usr/sbin/update-rc.d tor disable
insserv: warning: current start runlevel(s) (empty) of script `tor' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `tor' overrides LSB defaults (0 1 6).
Nevím, došlo k deaktivaci, nebo ta deaktivace neproběhla, protože není nastaven na automatické spuštění?


Ja v systemu systemctl nemam a podle apt-file nikde neni k mani.

a ten system je Ubuntu 15.04?

Ne, posledni LTS. Koukam, ze se muzeme tesit na dalsi vylepseni, takze pristi LTS asi bude posledni kapkou k prechodu na jine distro.


ubuntu 15.04 je alespoň u mne rychlejší, nežli předchozí verze. Nicméně nelíbí se mi moc unity - takže tam mám xfce a jsem s tím systémem velmi spokojen.
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: trubicoid2 30. 08. 2015, 17:11:31
dej
Kód: [Vybrat]
RUN_DAEMON="no" a do hlavicky 
Kód: [Vybrat]
#!/bin/sh t.j. bez toho -e, to je pak moc striktni a na kazde chybe by se to zastavovalo

jinak se ten rc.local blbe kontroluje, pres sudo ti to muze jet a ve skutecnosti ne, problemem jsou jednak cesty (uvadej plne), jednak jak rikas nefunkconst site pri startu; to se da obejit treba cekaci smyckou, dokud nebude internet, napr. das ke konci rc.local toto a za nej prikazy, ktere net potrebuji

Kód: [Vybrat]
while true
do
 sleep 10
 ping -c 1 www.google.com &>/dev/null
 if [ $? == 0 ];
 then
  echo "Net available, continuing rc.local..."
  break;
 else
  echo "Net not available, waiting..."
 fi
done

akurat blby je, ze nektery inity cekaji az se rc.local cele udela a pak az nabidnou login, takze to nechces, v tom pripade das na konec rc.local
Kód: [Vybrat]
/usr/local/bin/muj_net_rc.local & a v nem bude ta cekaci smycka a prikazy po nem
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 02. 09. 2015, 04:21:39
Díky
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 02. 09. 2015, 04:29:09
Kód: [Vybrat]
while true
do
 sleep 10
 ping -c 1 www.google.com &>/dev/null
 if [ $? == 0 ];
 then
  echo "Net available, continuing rc.local..."
  break;
 else
  echo "Net not available, waiting..."
 fi
done


Něco je v tom špatně. Nezastaví se to na tom jednom pingu a pinguje to pořád dál...



Kód: [Vybrat]

sudo /usr/local/bin/muj_net_rc.local
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.16) 56(84) bytes of data.
64 bytes from prg02s12-in-f16.1e100.net (173.194.122.16): icmp_seq=1 ttl=57 time=7.28 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.288/7.288/7.288/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.16) 56(84) bytes of data.
64 bytes from prg02s12-in-f16.1e100.net (173.194.122.16): icmp_seq=1 ttl=57 time=7.43 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.435/7.435/7.435/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.16) 56(84) bytes of data.
64 bytes from prg02s12-in-f16.1e100.net (173.194.122.16): icmp_seq=1 ttl=57 time=6.84 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 6.841/6.841/6.841/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.16) 56(84) bytes of data.
64 bytes from prg02s12-in-f16.1e100.net (173.194.122.16): icmp_seq=1 ttl=57 time=6.82 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 6.820/6.820/6.820/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.16) 56(84) bytes of data.
64 bytes from prg02s12-in-f16.1e100.net (173.194.122.16): icmp_seq=1 ttl=57 time=7.29 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.292/7.292/7.292/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.17) 56(84) bytes of data.
64 bytes from prg02s12-in-f17.1e100.net (173.194.122.17): icmp_seq=1 ttl=57 time=7.75 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.750/7.750/7.750/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.17) 56(84) bytes of data.
64 bytes from prg02s12-in-f17.1e100.net (173.194.122.17): icmp_seq=1 ttl=57 time=7.30 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.302/7.302/7.302/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.17) 56(84) bytes of data.
64 bytes from prg02s12-in-f17.1e100.net (173.194.122.17): icmp_seq=1 ttl=57 time=7.78 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.788/7.788/7.788/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.17) 56(84) bytes of data.
64 bytes from prg02s12-in-f17.1e100.net (173.194.122.17): icmp_seq=1 ttl=57 time=7.75 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.758/7.758/7.758/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.17) 56(84) bytes of data.
64 bytes from prg02s12-in-f17.1e100.net (173.194.122.17): icmp_seq=1 ttl=57 time=7.26 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.263/7.263/7.263/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.17) 56(84) bytes of data.
64 bytes from prg02s12-in-f17.1e100.net (173.194.122.17): icmp_seq=1 ttl=57 time=7.04 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.045/7.045/7.045/0.000 ms
/usr/local/bin/muj_net_rc.local: 6: [: 0: unexpected operator
Net not available, waiting...
PING www.google.com (173.194.122.17) 56(84) bytes of data.
64 bytes from prg02s12-in-f17.1e100.net (173.194.122.17): icmp_seq=1 ttl=57 time=7.34 ms


--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 7.348/7.348/7.348/0.000 ms
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 02. 09. 2015, 04:48:23
Kód: [Vybrat]
#!/bin/sh
if [ "`ping -c 1 google.com`" ]
then
  echo "Net available, continuing rc.local..."
  supernode -l 82 &>> /tmp/TMP/n2n/supernode.log &
...
...
else
  echo "Net not available, waiting..."
fi


Teď to snad už funguje...
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: beer 02. 09. 2015, 05:00:14
Kód: [Vybrat]
#!/bin/sh
   if [ "`ping -c 1 google.com`" ]
then
  echo "Net available, continuing rc.local..."
  supernode -l 82 &>> /tmp/TMP/n2n/supernode.log &
...
...
else
  echo "Net not available, waiting..."
   fi


Teď to snad už funguje...


Ještě to nebylo ono, tak snad teď.
Kód: [Vybrat]

while true
do
  sleep 1
if [ "`ping -c 1 google.com`" ]
then
echo "Net available, continuing rc.local..."
supernode -l 82 -v &>> /tmp/TMP/n2n/supernode.log &
edge -d ...
edge -d ...
break;
else
  echo "Net not available, waiting..."
fi
done
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: trubicoid2 02. 09. 2015, 13:49:41
jo, ja to mel pro bash a ty to mas pro sh, coz v bubuntu ukazuje nejcasteji na dash, pry to zrychli skripty
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: ByCzech 02. 09. 2015, 14:20:57
Než řešit každou věc zvlášť, co takhle změnit hlavičku na #!/bin/bash nebo #!/bin/sh? Pomohlo by to?

Není jednodušší změnit ten link /bin/sh aby směroval na bash?
Název: Re:Ubuntu 15.04 - /etc/rc.local nepracuje
Přispěvatel: trubicoid2 02. 09. 2015, 15:06:07
no to muzes, ale pry budes mit pomalejsi system
https://justinconover.wordpress.com/2012/05/14/ubuntu-changing-dash-to-bash/ (https://justinconover.wordpress.com/2012/05/14/ubuntu-changing-dash-to-bash/)

taky se obecne bojuje proti bashismu, tedy takovym konstrukcim, ktere funguji jen bashi a v ostatnich shellech ne

a taky nesmis zapomenout to zase zmenit po reinstalaci, protoze to nebude fungovat; takze lepsi asi je bud napsat primo #!/bin/bash, nebo #!/bin/sh, ale nepouzivat bashismus