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.
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].
Singularity (YouTube) je nejnovější otevřený film od Blender Studia. Jedná se o jejich první 4K HDR film.
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ý.
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.
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.
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.
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.
Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří KDE částkou 1 285 200 eur.
Google na včerejší akci The Android Show | I/O Edition 2026 (YouTube) představil celou řadu novinek: Gemini Intelligence, notebooky Googlebook, novou generaci Android Auto, …
/etc/init.d/local, ale uživatelské příkazy mohou být zapsány ještě v jiném skriptu – např. na Gentoo tento skript spouští /etc/conf.d/local.start. Do toho skriptu pak přidejte něco takového:
sendmail user@example.com <<END From: "Strazce serveru" Subject: Server se spustil Server ABCD se spustil a bezi. END
/etc/init.d/rc.local má takovouhle část takhle:
do_start() {
if [ -x /etc/rc.local ]; then
log_begin_msg "Running local boot scripts (/etc/rc.local)"
/etc/rc.local
log_end_msg $?
fi
}
pak svůj skript vložte do souboru /etc/rc.local. Pokud ten soubor neexistuje, tak jej založte a nastavte mu právo ke spouštění.
#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. #odeslat email pri staru serveru /usr/sbin/sendmail user@example.com <<END From: "Strazce serveru" Subject: Server se spustil Server ABCD se spustil a bezi. END
#! /bin/sh
### BEGIN INIT INFO
# Provides: rc.local
# Required-Start: $local_fs $remote_fs
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Run /etc/rc.local if it exist
### END INIT INFO
PATH=/sbin:/usr/sbin:/bin:/usr/bin
. /lib/init/vars.sh
. /lib/lsb/init-functions
do_start() {
if [ -x /etc/rc.local ]; then
[ "$VERBOSE" != no ] && log_begin_msg "Running local boot script
/etc/rc.local
ES=$?
[ "$VERBOSE" != no ] && log_end_msg $ES
return $ES
fi
}
case "$1" in
start)
do_start
;;
restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
stop)
;;
*)
echo "Usage: $0 start|stop" >&2
exit 3
;;
esac
cp /etc/rc.local /etc/rc.local.shutdown/etc/init.d/rc.local doplníme o stop sekci, která bude volat ten nový /etc/rc.local.shutdown:
#! /bin/sh
### BEGIN INIT INFO
# Provides: rc.local
# Required-Start: $local_fs $remote_fs
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Run /etc/rc.local on startup, /etc/rc.local.shutdown on shutdown/reboot
### END INIT INFO
PATH=/sbin:/usr/sbin:/bin:/usr/bin
. /lib/init/vars.sh
. /lib/lsb/init-functions
do_start() {
if [ -x /etc/rc.local ]; then
[ "$VERBOSE" != no ] && log_begin_msg "Running local boot script
/etc/rc.local
ES=$?
[ "$VERBOSE" != no ] && log_end_msg $ES
return $ES
fi
}
do_stop() {
if [ -x /etc/rc.local.shutdown ]; then
[ "$VERBOSE" != no ] && log_begin_msg "Running local shutdown scripts (/etc/rc.local.shutdown)"
/etc/rc.local.shutdown
ES=$?
[ "$VERBOSE" != no ] && log_end_msg $ES
return $ES
fi
}
case "$1" in
start)
do_start
;;
restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
stop)
do_stop
;;
*)
echo "Usage: $0 start|stop" >&2
exit 3
;;
esac
a nakonec zaktualizujeme symlinky, aby se "/etc/init.d/rc.local stop" volalo kdy má:
update-rc.d -f rc.local remove update-rc.d rc.local start 99 2 3 4 5 . stop 01 0 1 6 .otestujem, že to dělá, co má:
/etc/init.d/rc.local start /etc/init.d/rc.local stop
TMPFILE=`mktemp -t server-start-email.XXXXXXXXXX` || exit 1
echo 'From: "Strazce serveru"' >> $TMPFILE
echo 'Subject: Server se spustil' >> $TMPFILE
echo '' >> $TMPFILE
echo 'Server ABCD se spustil a bezi.' >> $TMPFILE
echo 'Ma nasledujici IP adresy:' >> $TMPFILE
echo `ip -4 addr show dev eth0 | gawk --field-separator='[ /]+' '/inet/ { print $3 }'` >> $TMPFILE
/usr/sbin/sendmail user@example.com < $TMPFILE
rm $TMPFILE
ip -4 addr show dev ppp0 | gawk --field-separator='[ /]+' '/inet/ { print $3 }'
tu IP adresu vypíše? Možná bude potřeba změnit print $3 na jiný sloupeček, nevím, jak je formátovaný výstup příkazu ip pro zařízení ppp
ip -4 addr show dev ppp0 | gawk --field-separator='[ /]+' '/inet/ { print $3 }' >> $TMPFILE
Ale fungovat by měla jak první tak druhá varianta. Spouštíte ten skript pod rootem? Běžný uživatel nemá právo na spuštění ip.
Tiskni
Sdílej: