Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.
Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.
Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.
OpenSearch (Wikipedie) byl vydán ve verzi 3.0. Podrobnosti v poznámkách k vydání. Jedná se o fork projektů Elasticsearch a Kibana.
PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.
Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.
Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
#!/bin/bash
ip=/sbin/ip
ping=/bin/ping
route=/sbin/route
CS_IP="172.16.26.1"
CS_IF="eth2"
CS_METRIC=(`$ip route | grep $CS_IP | awk '{print $7}'`)
CS_PING=(`$ping -w 1 -c 1 -I $CS_IF 8.8.8.8`)
while [ true ]; do
## Pokud havni pripojeni nefunguje, prepneme na zalozni.
if [[ "$CS_METRIC" -ne "10" && ! "$CS_PING" ]];
then
$route del default gw $CS_IP
$route add default gw $CS_IP metric 10
echo "Nefunguje"
fi
## Pokud pripojeni opet zacne fungovat, tak mu zvysime prioritu (hlavni)
if [[ "$CS_METRIC" -eq "10" && "$CS_PING" ]];
then
$route del default gw $CS_IP
$route add default gw $CS_IP metric 0
echo "Opet funguje"
fi
sleep 5
done
Zdá se mi, že nefunguje právě to ověření PINGu, jakoby to nevracelo false, nebo možná očekávám něco jiného, než to vrací.
Můžete prosím poradit? Řešení dotazu:
# vytvoreni routovacich tabulek (CS, PF) a rout
$ip route add 172.16.26.0 dev eth2 src 172.16.26.62 table T1
$ip route add default via 172.16.26.1 table T1
$ip route add 10.109.13.128 dev eth1 src 10.109.13.146 table T2
$ip route add default via 10.109.13.129 table T2
# nastaveni rout
$ip route add 172.16.26.0 dev eth2 src 172.16.26.62
$ip route add 10.109.13.128 dev eth1 src 10.109.13.146
# nasteveni defaultni routy
$ip route add default via 172.16.26.1
# nasteveni smerovacich rout (aby slo dovnitr a ven to, jakym interfacem to prislo)
$ip rule add from 172.16.26.62 table T1
$ip rule add from 10.109.13.146 table T2
# prirazeni konexi do tabulek
$ip route add 192.168.1.0 dev eth0 table T1
$ip route add 10.109.13.128 dev eth1 table T1
$ip route add 127.0.0.0/8 dev lo table T1
$ip route add 192.168.1.0 dev eth0 table T2
$ip route add 172.16.26.0 dev eth2 table T2
$ip route add 127.0.0.0/8 dev lo table T2
# nastaveni nexthopu (volba odchozi GW je na kernelu)
$ip route add default scope global nexthop via 172.16.26.1 dev eth2 weight 1 nexthop via 10.109.13.129 dev eth1 weight 2
Tak co doplnit?
muzes zkusit IFovat budto navratovou hodnou pingu nebo pocet prijatych packetu:
ping_gw0=$(ping -c 1 ${gw0})
if [ $? == 0 ]; then
#brana funguje
else
#brana nejde
fi
ping_gw0=$(ping -c 10 ${gw0} | grep received | awk '{print $4 }')
if [ ${ping_gw0} -ge 8 ]; then
#brana funguje
else
#brana nejde
fi
Na received.com ti to uz fungovat nebude :P a grep nie je nuten.
gw0= ping_gw0=$(ping -c 10 "$gw0" | awk "/--- $gw0 ping statistics ---/"'{ getline; print $4 }') if [ "${ping_gw0}" -ge 8 ]; then #brana funguje else #brana nejde fi
$ip route add default scope global nexthop via 172.16.26.1 dev eth2 weight 1 nexthop via 10.109.13.129 dev eth1 weight 2
To mi vubec nefungovalo. Nevim proc kdyz je to vsude uvadene jako prave failover nastaveni.
Mozna na to ma vliv to jestli je za tim pripojene jeste nejake zarizeni (napr. AP) ktere i v pripade vypadku linky nejake pakety IN/OUT na port sitove karty posila.
#
# WFS - Wan Failover Script
# Configuration file
#
TARGETS_FILE=/etc/wfs/targets.txt
PRIMARY_GW=172.16.26.1
SECONDARY_GW=10.109.13.129
MAX_LATENCY=50
INTERVAL=5
TEST_COUNT=2
THRESHOLD=3
COOLDOWNDELAY01=5
COOLDOWNDELAY02=5
MAIL_TARGET="mail@(muj).cz"
DAEMON=1
QUIET=1
PIDFILE=/var/run/wfs.pid
PRIMARY_CMD=""
SECONDARY_CMD=""
DEBUG=1
Tiskni
Sdílej: