Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Internet a sítě => Téma založeno: Kattnienika 19 Března 2020, 11:42:24
-
Ahoj,
Používám OS Linux Mint 19.3 a dneska jsem nainstalovala Miredo pomocí příkazu: sudo apt-get install miredo. Po startu služby vypadá, že šlape jak má (přidělí adresu a ping na IPv6 googlu vrací i odpověď). Problém je, že když restartuji počítač, tak miredo samo nenaskočí.
Pokud zadám příkaz: ip addr show teredo je mi vrácena chyba: Device "teredo" does not exist.
Aby naskočilo, musím udělat ručně restart služby přes terminál.
Neví někdo, jak problém vyřešit? Děkuji
-
Ahoj,
Používám OS Linux Mint 19.3 a dneska jsem nainstalovala Miredo pomocí příkazu: sudo apt-get install miredo. Po startu služby vypadá, že šlape jak má (přidělí adresu a ping na IPv6 googlu vrací i odpověď). Problém je, že když restartuji počítač, tak miredo samo nenaskočí.
Pokud zadám příkaz: ip addr show teredo je mi vrácena chyba: Device "teredo" does not exist.
Aby naskočilo, musím udělat ručně restart služby přes terminál.
Neví někdo, jak problém vyřešit? Děkuji
Jednoduše.
1. Ten příkaz vlož do skriptu a ten skript přidej do autostartu.
2. Pokud příkaz vyžaduje root práva (sudo), bylo by třeba pro ten skript přidat výjimku do sudoers.
Druhá možnost je využít rootovský cron s parametrem @reboot
-
Tak teď jsi mě do toho trochu zamotal. Reboot vyžaduje sudo (chce po mě následně i heslo), takže jak to mám tedy udělat?
-
Tak teď jsi mě do toho trochu zamotal. Reboot vyžaduje sudo (chce po mě následně i heslo), takže jak to mám tedy udělat?
Co do toho pleteš nějaký reboot, psal jsem o cronu. V něm, pokud se má něco spustit po restartu, se místo časového údaje (v cron formátu) použije "@reboot"
Nicméně pokud ten tvůj příkaz nevyžaduje root práva, o tohle se zajímat nemusíš....
P.S. A ten "tajný" příkaz je teda jaký?
-
Reboot proto, že jsem psala že po každém zapnutí systému musím použít příkaz /etc/init.d/miredo restart abych miredo nahodila.
-
Reboot proto, že jsem psala že po každém zapnutí systému musím použít příkaz /etc/init.d/miredo restart abych miredo nahodila.
No, takže root práva potřebná nejsou. Tím pádem platí bod č.1
-
Když ten příkaz zadám, vyskočí na mě tabulka která požaduje heslo pro provedení. :)
Poradíš mi případně, prosím, jak případně na takový script? Kam ho případně třeba i uložit a tak?
-
Jaké heslo? Root heslo?
Pokud ano, platí bod č. 2 Pro jistotu ho zopakuji. Buď dát skriptu výjimku do sudoers, nebo jednoduššeji, spouštět ho rootovským cronem. Místo času tam napíšeš @reboot
Takže ten řádek (v rootovském crontabu) bude vypadat takto:
@reboot /cesta/ke/skript.sh
Obsah skriptu bude:
#!/bin/bash
sudo /etc/init.d/miredo restart
Kam ho dáš je jedno, nezapomeň mu nastavit spustitelnost.
-
Ano, chce root heslo.
Takže do nastavení pro aplikace při spuštění zadat (místo příkazu pro aplikaci):
@reboot /cesta/ke/skript.sh
Do scriptu přijde:
#!/bin/bash
sudo /etc/init.d/miredo restart?
-
problém , podľa mňa nastáva, že sieťové služby po restarte nabehujú neskôr ako miredo a potom nastáva tento problém...
v podstate spúšťaš službu po reštarte s oneskorením pomocou "sleep"
teda pomocou crontabu ako radí juwa2 a script potom bude #!/bin/bash
sudo sleep 10 && /etc/init.d/miredo restart
alebo priamo script v crontabu echo "@reboot root /bin/sh -c 'sleep 10 && /etc/init.d/miredo restart' >/dev/null 2>&1" | sudo tee -a /etc/crontab
-
Ano, chce root heslo.
Takže do nastavení pro aplikace při spuštění zadat (místo příkazu pro aplikaci):
@reboot /cesta/ke/skript.sh
Do scriptu přijde:
#!/bin/bash
sudo /etc/init.d/miredo restart?
Nee...
Protože to vyžaduje (root) heslo, nemůžeš ten skript spouštět v "Aplikacích spouštěných po přihlášení".
Musíš ho spouštět rootovským cronem.
Takže si otevří rootovský crontab:
sudo EDITOR=nano crontab -e
A na konec přidej řádek:
@reboot /cesta/ke/skript.sh
Samozřejmě tam napíšeš skutečnou cestu k tomu skriptu (to už se snad ale ocitáme na hranici parodie... :-\)
Uložit (ctrl+o)
Potvrdit (enter)
Ukončit crontab (ctrl+x)
Vlastní skript je OK, můžeš do něj dát to zpoždění, tím nic nepokazíš...
#!/bin/bash
sleep 20
sudo /etc/init.d/miredo restart
-
Je mi jasné, že cestu vyplním tak jak má být. :)
Ale každý nepracuje tak dlouho s Linuxem jako ty aby hned věděl co má dělat.
I tak děkuji za radu a zítra vyzkouším. :)