Mezinárodní federace hudebního průmyslu (International Federation of the Phonographic Industry) navrhla Evropské komisi zařazení populárního open-source nástroje yt-dlp na evropský seznam 'padělků a pirátství' (EU Counterfeit and Piracy Watch List) pro rok 2027 (plné znění žádosti IFPI). IFPI ve svém podání označuje tento aktivně vyvíjený a o rozličné funkce bohatší fork youtube-dl za 'závažný problém' pro hudební průmysl, v
… více »Byla vydána nová verze 7.4 linuxové distribuce Parrot OS (Wikipedie). Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Dnes startuje desátý ročník oblíbené kyberbezpečnostní soutěže The Catch organizované Forenzní laboratoří CESNETu. Letos zavede soutěžící do světa národních výzkumných a vzdělávacích sítí (NREN). Čekají na vás tematické úlohy založené na principu Capture the Flag (CTF), hledání ukrytých flagů i zajímavé ceny. Otestujte své schopnosti a vyrazte na lov flagů.
Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2026.
Německý startup Aleph Alpha k příležitosti výročí sjednocení Německa zveřejnil open-weight jazykový model Kolibri, vyvíjený s ohledem na unijní pojetí autorského práva, ochranu osobních údajů GDPR a nařízení EU o umělé inteligenci, jehož 'Kodexu správné praxe' je Aleph Alpha signatářem. Výsledkem tohoto přístupu je transparentnější technologie, kterou například budou moci využívat evropské veřejné instituce, ovšem za cenu
… více »Nvidia zveřejnila návrh nové bezpečnostní platformy pro nasazování AI agentů. Jedná se o nasazení AI za použití OpenShell a Sentry, dvou oddělených bezpečnostních vrstev, v nichž může Sentry monitorovat a vyhodnocovat chování AI v OpenShellu tak, že ho v krajním případě až vypne. Mělo by to zabránit dalším únikům AI ze sandboxu.
Přímý přenos (YouTube) z konference LinuxDays 2026, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.
Byla vydána nová verze 0.17.0 programovacího jazyka Zig (Codeberg, Wikipedie). Přispělo 206 vývojářů. Přehled novinek v poznámkách k vydání.
Open-source projekt OpenDLSS-NR je 'bitově přesná reimplementace' neuronové rendrovací sítě DLSS 5 od společnosti NVIDIA, jenže pro grafické API Vulkan (DLSS slouží k vylepšování klasickým způsobem vyrendrovaných snímků pomocí lokálních modelů umělé inteligence, a to v reálném čase). Projekt není nijak spojen se společností NVIDIA, je pouze pro OS Windows a natrénované váhy modelu si uživatelé musí obstarat sami. Zdrojový kód je k dispozici na GitHubu, pod licencí MIT s výjimkou pro komponenty třetích stran.
Společnost Cloudflare představila Clef a Clef-Flash, open-source rozhodovací modely určené pro rychlou a konzistentní klasifikaci vstupů. Na rozdíl od klasických LLM vracejí tyto modely deterministické striktně typované strukturované odpovědi s exaktními pravděpodobnostmi, tedy odpovědi ve stylu přelomového modelu Jev.
… více »#!/bin/bash mount -t cifs //pdc/Users -o iocharset=utf8,codepage=1250,username=xx,password=xxxx /mnt/pdc-users/ && sleep 2 && mount -t cifs //backupServer/users -o iocharset=utf8,codepage=1250,username=yy,password=yyyy /mnt/backupserver-users/ && sleep 2 && rsync -av --delete --exclude="*.tmp" /mnt/pdc-users/ /mnt/backupserver-users/ && sleep 20 && umount /mnt/backupserver-users/ && sleep 2 && umount /mnt/pdc-users/ && echo Povedlo se, zaloha je hotova ! | mail -s rsync xx@xxx.czTento skriptik pripoji cifs svazek naseho PDC, cifs svazek naseho backup serveru a pak je vzajemne rsyncne, nakonec oba svazky odpoji a posle mi maila ze je vsechno v poradku. Problem je ve spojeni prikazu - &&. Pokud se jakykoliv z prikazu nepovede, napr se nepodari pripojit cifs svazek, zbytek prikazu uz nedojede, nic se nedozvim a neco treba zustane primoutnute, coz se mi nelibi. Mate nekdo ideu jak to udelat tak abych do tohoto skriptu dostal podminky? Kdyz se neco neprimoutne tak aby to udelalalo toto, dyz to projde v poradkua by to udelalo toto atd. Poradte mi prosim, jsem v koncich :o). Dekuju moc
Řešení dotazu:
#!/bin/bash
RET="NULL"
mount -t cifs //pdc/Users -o iocharset=utf8,codepage=1250,username=xx,password=xxxx /mnt/pdc-users/
if [ $? -eq 0 ];
then
RET="Nepovedl se mount1."
fi
sleep 2
mount -t cifs //backupServer/users -o iocharset=utf8,codepage=1250,username=yy,password=yyyy /mnt/backupserver-users/
if [ $? -eq 0 ];
then
RET="$RET Nepovedl se mount2."
fi
sleep 2
rsync -av --delete --exclude="*.tmp" /mnt/pdc-users/ /mnt/backupserver-users/
if [ $? -eq 0 ];
then
RET="$RET Nepovedl se rsync."
fi
sleep 20
umount /mnt/backupserver-users/
if [ $? -eq 0 ];
then
RET="$RET Nepovedl se umount1."
fi
sleep 2
umount /mnt/pdc-users/
if [ $? -eq 0 ];
then
RET="$RET Nepovedl se umount2."
fi
test "$RET" == "NULL" && RET="Povedlo se."
echo $RET | mail -s rsync xx@xxx.cz
Jen poznámka: místo
cmd -args if [ $? -ne 0 ]; then ... fi
lze psát rovnou
if ! cmd -args; then ... fi
Pak si na začátek skriptu přidej tuhle funkci:
function chybaKonec {
if [ "$?" -ge "1" ]
then
echo $1
exit ${2:-1};
fi
}
A za každý (důležitý) příkaz dej tento řádek:
chybaKonec "Selhal krok XXX";S nějakou smysluplnou hláškou samozřejmě. V proměnné
$? je návratový kód posledního příkazu (0 = OK, všechno ostatní chyba). Ta funkce se hodí k tomu, že to máš na jednom místě a nebudeš mít těma IFama zahnojený celý skript
if [ $? -eq 0 ];
then
RET="…nějaká chybová hláška…"
fi
Proto je lepší z těchto čtyř řádků udělat funkci a pak ji volat jedním řádkem:
chybaKonec "…nějaká chybová hláška…";Jednak ti to zkrátí a zpřehlední program a jednak ti to usnadní budoucí změny – třeba když budeš chtít přidat logování těchto hlášek do souboru, tak přidáš
echo $1 > /tmp/chyby.log;jen do té definice funkce a nemusíš to dělat na deseti různých místech. Navíc bych to udělal tak, že bych po první chybě skončil (
exit), protože když se nepovede připojit souborový systém, tak nemá cenu se pokoušet z něj nebo na něj zálohovat.
Chyby patří na chybový výstup, ne na standardní. Jedničku není potřeba escapovat, naopak $1 ano. Takže bych tu funkci viděl nějak takto:
function chybaKonec {
if [ $? -ge 1 ]; then
echo "${0##*/}: $1" >&2
exit ${2:-1};
fi
}
Tiskni
Sdílej: