abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:33 | Nová verze

    Byl vydán Debian 13.5, tj. pátá opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.14, tj. čtrnáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    15.5. 12:55 | Nová verze

    CiviCRM (Wikipedie) bylo vydáno v nové verzi 6.14.0. Podrobnosti o nových funkcích a opravách najdete na release stránce. CiviCRM je robustní open-source CRM systém navržený speciálně pro neziskové organizace, spolky a občanské iniciativy. Projekt je napsán v jazyce PHP a licencován pod GNU Affero General Public License (AGPLv3). Český překlad má nyní 45 % přeložených řetězců a přibližuje se milníku 50 %. Potřebujeme vaši pomoc, abychom se dostali dál. Pokud máte chuť přispět překladem nebo korekturou, přidejte se na platformu Transifex.

    jardaIT | Komentářů: 2
    15.5. 12:22 | Bezpečnostní upozornění

    Další lokální zranitelností Linuxu je ssh-keysign-pwn. Uživatel si může přečíst obsah souborů, ke kterým má právo ke čtení pouze root, například soubory s SSH klíči nebo /etc/shadow. V upstreamu již opraveno [oss-security mailing list].

    Ladislav Hagara | Komentářů: 1
    14.5. 17:22 | Komunita

    Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.

    Ladislav Hagara | Komentářů: 9
    14.5. 16:55 | Zajímavý software

    Vyšla hra Život Není Krásný: Poslední Exekuce (Steam, ProtonDB). Kreslená point & click adventura ze staré školy plná černého humoru a nekorektního násilí. Vžijte se do role zpustlého exekutora Vladimíra Brehowského a projděte s ním jeho poslední pracovní den. Hra volně navazuje na sérii Život Není Krásný.

    Ladislav Hagara | Komentářů: 27
    14.5. 14:00 | Zajímavý projekt

    Společnost Red Hat představila Fedora Hummingbird, tj. linuxovou distribuci s nativním kontejnerovým designem určenou pro vývojáře využívající AI agenty.

    Pinhead | Komentářů: 6
    14.5. 02:22 | Zajímavý software

    Hru The Legend of Zelda: Twilight Princess od společnosti Nintendo si lze nově díky projektu Dusklight (původně Dusk) a reverznímu inženýrství zahrát i na počítačích a mobilních zařízeních. Vyžadována je kopie původní hry (textury, modely, hudba, zvukové efekty, …). Ukázka na YouTube. Projekt byl zahájen v srpnu 2020.

    Ladislav Hagara | Komentářů: 0
    14.5. 01:11 | Nová verze

    Byla vydána nová major verze 29.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Detailní přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    13.5. 21:22 | Bezpečnostní upozornění

    Po zranitelnostech Copy Fail a Dirty Frag přichází zranitelnost Fragnesia. Další lokální eskalace práv na Linuxu. Zatím v upstreamu neopravena. Přiřazeno ji bylo CVE-2026-46300.

    Ladislav Hagara | Komentářů: 1
    13.5. 14:00 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.

    Ladislav Hagara | Komentářů: 14
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1646 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Jak nastavit po restartu ip route

    otula avatar 21.4.2017 09:53 otula | skóre: 45 | blog: otakar | Adamov
    Jak nastavit po restartu ip route
    Přečteno: 752×
    Aktualizoval jsem po nějakém roce jistý server a nejsem schopen přijít na to, jak po startu systému spustit automaticky nějaký příkaz. Dříve to bylo prosté a jednoduché – stačilo ho zadat do /etc/rc.local. Nyní to nejde a po celém internetu je spousta dalších zoufalců, kterým se to nedaří. Obecně se radí vytvořit si pro systemd službu rc-local.service, jenže ono její spuštění (pokud rc.local obsahuje požadovaný příkaz) jaksi během bootování neprojde (pokud je rc.local prázdný, spuštní proběhne v pořádku). Přičemž pokud danou službu zkusím nastartovat ručně po přihlášení, tak se normálně nastartuje (i s požadovaným příkazem v rc.local). Ale automatické spuštění selže.

    Nejvíce mne tedy momentálně trápí automatické spuštění příkazu
    ip route add a.b.c.d/e via w.x.y.z dev ethX
    
    případně jiný způsob, jak docílit stejného výsledku.

    Používám aktuální archlinux, síť spouštím přes systemd-networkd.service.
    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.

    Řešení dotazu:


    Odpovědi

    21.4.2017 10:20 MP
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Nevim v cem ma arch definovanou sit, ale v klasickym /etc/network/interfaces se to delalo pomoci "up ip route...". Pokud je sit nadefinovana jako systemd unita (.network, .netdev atd), tak se da pouzit parametr Gateway u konkretniho interface/site.
    Řešení 1× (otula (tazatel))
    21.4.2017 10:55 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Nebude problém v tom že se rc.local spustí a ještě neexistuje zařízení dev ethX ?

    Já jsem na začátek skriptu musel dát příkaz pro čekání několik sekund pak mi to funguje.

    Skus k příkazům přidat přesměrování do souboru aby jsi si mohl přečíst na čem to zhavarovalo.
    otula avatar 21.4.2017 11:23 otula | skóre: 45 | blog: otakar | Adamov
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Petře, děkuji, bylo to ono. Přihodil jsem na začátek sleep 15s, zkusil pro jistotu dvakrát zrestartovat, a pokaždé to naběhlo OK.
    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
    21.4.2017 11:29 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route

    Řešení race conditions pomocí náhodně přidaných sleepů je cesta do pekel. Když potřebujete něco spustit, až se to rozhraní objeví a bude nakonfigurované, tak si buď počkejte na příslušný event, nebo na to aspoň počkejte smyčkou. Vyhnete se pak nepříjemným a velmi obtížně debugovatelným překvapením v budoucnosti.

    Jinak je IMHO chyba tohle vůbec řešit vlastním skriptem. Když už jste se jednou rozhodl svou konfiguraci sítě svěřit systemd-networkd, není dobrý nápad se v ní vrtat za jeho zády, ale měl byste tu routu přidat jeho prostřednictvím.

    otula avatar 21.4.2017 11:41 otula | skóre: 45 | blog: otakar | Adamov
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Díky za info. Už jsem předtím zkoušel spustit ještě jiný příkaz, a i když jsem si vyjel celý strom posloupnosti a nechal umístit spuštění rc-local až za ten poslední, kam mne to pustilo, stejně se mi nespustil. Tak jsem dál laboroval s parametry toho .service skriptu, ale bez úspěchu. Takže ač není sleep ideální, dokáže pomoci ven z problému.

    Každopádně máte naprostou pravdu, že nejkrásnější a nejčistší řešení tohoto konkrétního případu je to, co mi poradil Heron. Ačkoliv jsem hledal dost dlouho, nepodařilo se mi právě tohle nikde najít. Asi jsem nezadal správné parametry pro hledání. Všude jsou návody pro distribuce, které to řeší jinak. A v ArchWiki je nefunkční řešení (stejně jako v jiných situacích, kdy se na ni nedá moc spolehnout)...
    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
    Heron avatar 21.4.2017 12:01 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    No já se celkem divím, že tohle na archwiki není. Ač jsem uživatel Debianu, tak při hledání věcí týkající se zejména systemd, tak archwiki často poradí. (Pokud se nepletu, byla to první distribuce, která na sd přešla.)

    Přidání statické routy bych tedy právě v této wiki očekával.

    Ono to může být matoucí, protože systemd.network připouští víc způsobů nastavení téhož.

    Můžete mít sekci [Network], kde se nastaví vše (tj Address a Gateway a DNS). Nebo taky můžete mít sekce [Address] a [Route] a mít to (tedy IP a GW) nastaveno ve dvou sekcích. No jenže sekcí [Route] tam může být víc a to včetně uvedení Destination - to ovšem nenastavuje default gw, ale routu pro danou sít. Takže se může plést nastavení default gw s nastavením statických rout.

    Osobně si život zjednodušuju tak, že mám jednu sekci [Network], kde mám adresy a default gw a potom více sekcí [Route], kam si strkám statické routy. A nic se mi neplete.

    Ukázka:
    [Match]
    Name=br0
    
    [Network]
    Address=xxx/29
    Gateway=xxx
    
    Address=192.168.xx/24
    
    [Route]
    Destination=10.0.0.0/24
    Gateway=yyy
    
    [Route]
    Destination=10.8.0.0/24
    Gateway=zzz
    Ale chápu, že i samostatné sekce Address a Route mají svůj význam, protože tam toho jde nastavit mnohem víc.
    otula avatar 21.4.2017 12:22 otula | skóre: 45 | blog: otakar | Adamov
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    On to není jen problém ArchWiki. Včera jsem ze starého serveru kopíroval nastavení iptables (není nikam připojen, slouží jen na vnitřní síti, takže si už spoustu let v klidu běžel se zastaralým sw). A měl jsem jako jeden z parametrů -i ! eth1. To už ovšem nyní použít nelze. Na tom by nebylo nic až tak divného, kdyby v manuálových stránkách (aktuálního) iptables nebylo psáno: When the "!" argument is used before the interface name, the sense is inverted. Jenže on nemá být před interface name, ale ještě před parametrem -i.

    Každopádně ještě jednou díky za radu.
    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
    21.4.2017 12:44 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route

    Tahle matoucí věta tam sice zůstala, ale jinak je tam (od roku 2008)

        [!] -i, --in-interface name
    

    místo původního

        -i, --in-interface [!] name
    
    otula avatar 21.4.2017 19:45 otula | skóre: 45 | blog: otakar | Adamov
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Jasně, mohlo mě to trknout, jenže zřejmě tím, že [!] stojí na začátku řádku, či tím, že manuálové stránky čtu jednou za x let a nejsem zběhlý v jejich syntaxi, mne to trklo až ve chvíli, když už jsem věděl, že to tak má být. Prostě jsem našel -i a přečetl si doprovodný text. To je jedno, každopádně jsem to nakonec vyřešil :)
    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
    21.4.2017 12:01 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Jasně souhlasím s tím že pokud nastavuje síť pomocí systemd tak by i kompletní konfigurace měla být zapsána na jednom místě a né to přenastavovat v rc.local.

    Jediné co jsem nepochopil proč rc.local není spuštěný až jako uplně poslední, pak by se nemuselo různě čekat vše by mělo už běžet....
    21.4.2017 12:36 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route

    Nejsem znalec systemd (spíš se snažím zkoumání jeho detailů v mezích možností vyhýbat), ale nejsem si jistý, jestli jde takový okamžik v jeho koncepci dost dobře definovat. A pokud ano, může to být o dost později, než byste čekal.

    Nedávno jsem třeba narazil na to, že jsem potřeboval udělat crash dump s ladícím jádrem, problém byl snadno reprodukovatelný, takže zdánlivě žádný problém. A byl jsem překvapený, že se dump se nevytvořil. Ukázalo se, že ve chvíli, kdy jsem chybu vyvolal, ještě pořád nestihla doběhnout služba, která při startu natáhne kdump kernel a v případě potřeby předtím k němu ještě vygeneruje initrd (pokud neexistuje). Takže by se vám klidně mohlo stát, že už se úspěšně nalogujete, napíšete pár příkazů a ta routa tam pořád ještě nebude. Případně na serveru už poběží služby, které na tu routu budou spoléhat.

    IMHO není obecně moc šťastné spoléhat na nějaký "úplně nakonec" skript, ale je lepší si ujasnit, na čem konkrétně má váš skript záviset (a co má případně záviset na něm). Koneckonců i za starých dobrých časů před systemd šlo takové závislosti pro vlastní init script definovat. (Ale má to samozřejmě všechno smysl jen pro věci, které nelze zapsat do standardní systémové konfigurace.)

    pepe_ avatar 21.4.2017 11:09 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route

    Nezaručuju že to pojede naprosto všude ale :

    A co si vytvořit pomocný script třeba

     

    sudo touch /root/iproute.sh

    sudo chmod +x /root/iproture.sh

    echo 'ip route add a.b.c.d/e via w.x.y.z dev ethX' | sudo tee --append /root/iproute.sh > /dev/null

     

    pak dát

     

    sudo crontab -e

     

    napsat tento řádek

     

    @reboot root /root/iproute.sh

     

    a uložit     (podle editoru , např ve vi   dát    :wq     ) .

     

     

    Otestuj pak restartem.

    pepe_ avatar 21.4.2017 11:12 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route

     

    sudo chmod +x /root/iproture.sh            změnit na    iproute.sh

     

     

    Po 2000 letech stále nefunguje editace přízpěvku ... (fuj)

    21.4.2017 11:24 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    /root/iproute.sh

    Po jednom takovém jako vy jsem kdysi zdědil systém. Všude neskutečný bordel, klíčové skripty rozházené v naprosto náhodně zvolených adresářích, člověk se musel bát cokoli smazat, jakákoli nevinná změna způsobila, že se někde úplně jinde něco sesypalo…

    pepe_ avatar 21.4.2017 11:30 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route

    Jj , máte pravdu. Systemd jde ale stejným směrem že se nikdo nevyzná v té evoluci takže je to vlastně trendy.

    Řešení 2× (Michal Kubeček, otula (tazatel))
    Heron avatar 21.4.2017 11:16 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Pokud používáš systemd-networkd.service, tak si routu nastav přímo v .network souboru (kde máš definici adresy, default gw apod.). Stačí přidat sekci:
    [Route]
    Destination=a.b.c.d/e
    Gateway=w.x.y.z
    
    a je to.
    otula avatar 21.4.2017 11:30 otula | skóre: 45 | blog: otakar | Adamov
    Rozbalit Rozbalit vše Re: Jak nastavit po restartu ip route
    Super, mockrát díky, tohle je pro tento případ krásně čisté řešení.
    Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.