Fórum Root.cz

Hlavní témata => Distribuce => Téma založeno: Paulie 10. 06. 2014, 21:41:31

Název: OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: Paulie 10. 06. 2014, 21:41:31
Ať dělám co dělám tak nejsem schopný zařídit aby se po nabootování OpenWRT (12.09) v routeru provedl příkaz zapsaný v /etc/rc.local. Je to spuštění SSH tunelu, vypadá to takto:

Kód: [Vybrat]
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.

PATH=/bin:/sbin:/usr/bin:/usr/sbin
export $PATH

autossh -M 5000 -R 0.0.0.0:2022:192.168.1.1:22 tunel@xxx.xxx.xxx.xxx -p 2222 -i /root/.ssh/id_rsa -N
exit 0

To nastavení proměnné $PATH jsem někde našel že by mohlo pomoct, no nepomohlo. A já už fakt netuším co by to mohlo být. Protože ten příkaz je přitom zcela v pořádku, když ho spustím z příkazového řádku ručně tak funguje jak má.
Název: Re:OpenWRT - příkaz v rc.local se po bootu nespustí
Přispěvatel: Ondřej Caletka 10. 06. 2014, 21:43:19
Jsi si jistý, že se nespustí? Nemůže to být tak, že se spustí příliš brzo a skončí neúspěchem?. V době, kdy se spouští rc.local ještě obvykle není nahozená WAN, takže selže resolvování DNS a nikam se to nepřipojí.
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: Paulie 10. 06. 2014, 23:19:05
No tak to mě nenapadlo. A kam bych ho měl dát, aby se spustil ve správný čas?
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: Lol Phirae 10. 06. 2014, 23:27:58
Nějak tomu s tou PATH nerozumím, proč prostě neuvedeš celou cestu k tomu autossh?
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: Lol Phirae 10. 06. 2014, 23:34:31
P.S. Už ses k tomu na tom stroji někdy jako root připojil? Jinak ti to asi vychcípne na dotazu na ověření fingerprintu klíče.
P.P.S. Jestli myslíš, že se to pouští moc brzo, tak si tam dej třeba sleep 20.
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: Paulie 10. 06. 2014, 23:40:26
Připojil, když ten příkaz zadám manuálně, tak to funguje, když ho zadám s & na konci tak to funguje dokud není router vypnut - v tom to fakt nebude. Jinak absolutní cestu k autossh jsem taky zkoušel, a bez výsledku
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: trubicoid2 11. 06. 2014, 10:45:17
a kdyz pustis primo ten skript?
Kód: [Vybrat]
/etc/rc.local
jestli to bude nejak blbnout, tak muzes zkusit debug, kdyz na prvnim radku rc.local doplnis -x
Kód: [Vybrat]
#!/bin/sh -x
a co rika toto u rc.local? 
Kód: [Vybrat]
chconfig
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: vty 11. 06. 2014, 11:17:58
Co takhle zkusit pohledat nejdřív na webech openwrt nebo na Internetu?
Možná to není ono, ale co tohle:
https://dev.openwrt.org/ticket/12736 (https://dev.openwrt.org/ticket/12736)

Osobně autorespawn ssh klienta (nebo čehokoliv jiného) řeším na OpenWrt takto:
- Volitelně: nainstalovat plnotučného ssh klienta (openssh-client), pokud to co chceme, ten z dropbeara neumí
- do /etc/inittab přidat požadovaný řádek s ssh příkazem (příklad).:
::respawn:/usr/bin/ssh -t -t -i /etc/ssh/my_id_dsa -o ServerAliveInterval=20 -p 12345 username@IP_address command
- restart OpenWrt a autossh netřeba
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: Paulie 11. 06. 2014, 20:12:41
Bohužel, ale opravdové ssh (openssh-client) do toho routoeru nedostanu - holt 4 MB úložného prostoru, ve kterém po instalaci OpenWRT zbyde 800 kB nestačí. Balíček se sice stáhne, ale pak to skončí chybou, že už není místo na to ho rozbalit.
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: Ondřej Caletka 11. 06. 2014, 21:59:57
Myslím, že to co hledáš, jsou skripty v cestě /etc/hotplug/iface.
Název: Re:OpenWRT: příkaz v rc.local se nespustí
Přispěvatel: vty 12. 06. 2014, 11:14:33
Bohužel, ale opravdové ssh (openssh-client) do toho routoeru nedostanu - holt 4 MB úložného prostoru, ve kterém po instalaci OpenWRT zbyde 800 kB nestačí. Balíček se sice stáhne, ale pak to skončí chybou, že už není místo na to ho rozbalit.

Nezlobte se, ale psal jsem jasně Volitelně:, pouze pokud potřebujete plnotučného ssh klienta, tak si ho nainstalujte.
Jelikož nemáte na zařízení dost místa, tak to pro vás zjevně není.
Je třeba přemýšlet nad tím, co dělám ;)
Navíc to byla jen alternativní cesta, jak vyřešit vaši potřebu (bez autossh).
Tu první možnost pro autossh tzn., že nemáte definovanou proměnou HOME jste zkoušel?
S jakým výsledkem?