Programovací jazyk Python byl vydán v nové major verzi 3.15.0. Podrobný přehled novinek v aktualizované dokumentaci.
BIGWORDS.PAGE je open-source webová aplikace, která po otevření odkazu v prohlížeči vykreslí přes celou obrazovku jednoduché informační sdělení. Zpráva i její nastavení jsou uložené v části URL za znakem #, například odkaz https://bigwords.page/#abclinuxu zobrazí jako velký bílý nápis 'abclinuxu' na černém pozadí. Obsah odkazu lze upravovat i vestavěným editorem, ten umožňuje nastavovat formátování a vizuální efekty textu, časovače, QR kódy a obrázky. Zdrojový kód je dostupný pod licencí MIT na GitHubu.
V neděli 11. října proběhne rotace klíče kořenové zóny. Podruhé v historii. Ondřej Filip na blogu CZ.NIC: "Pokud je pro Vás DNS protokol spíše výzva, ale přesto spravujete nějakou síť či DNS resolver, zkuste si jednoduchý test, který připravila firma Cloudflare na této adrese. Obzvláště zbystřit byste měli, pokud uvidíte nějaká červená políčka."
Vláda Spojených států se rozhodla vyřadit americkou softwarovou společnost Microsoft a několik dalších velkých technologických podniků z programu, který umožňuje kvalifikovaným zahraničním pracovníkům získat povolení k trvalému pobytu. Oznámila to včera administrativa amerického prezidenta Donalda Trumpa. Opatření zdůvodnila rozsáhlým zneužíváním programu, který je dlouhodobě terčem kritiky ze strany Trumpových příznivců, neboť prý znevýhodňuje americké pracovníky.
Datové centrum největší ruské technologické společnosti Jandex v Rjazaňské oblasti se stalo cílem dronového útoku a zastavilo provoz. Jandexu se někdy přezdívá „ruský Google“. Provozuje nejoblíbenější internetový vyhledávač v Rusku nebo aplikace pro objednávky jídla a taxi. Využívají jej desítky milionů lidí v rusky mluvících zemích.
Francouzská společnost Mistral AI představila Mistral Large 4 (interně přezdívaný 'le Chonk', volně přeloženo 'pořádný macek'), 'open-weight multimodální hybridní instruct-and-reasoning model s architekturou granulárního MoE, nativně podporující více jak 160 jazyků'. Model má přes jeden bilión parametrů, z nichž při práci využívá 49 miliard, kontextové okno o délce milion tokenů a obrazový enkodér o 1,6 miliardách parametrů.
… více »Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.20. Díky 227 přispěvatelům.
Simon Long oznámil Raspberry Pi Desktop pro PC a Mac s Intelem postavený na aktualizovaném Debianu 13 Trixie. S klientem Raspberry Pi Connect pro vzdálenou správu. Ke stažení je vedle Raspberry Pi OS pro Raspberry Pi.
ESP32-C3 adblock přemění lacinou vývojovou desku ESP32‑C3 na samostatný DNS blokovač nejenom reklamních domén, minimalistickou alternativu k populárnímu Pi-hole. ESP32-C3 adblock místo objemných názvů domén ukládá jejich 40-bitové FNV-1a hashe do flash paměti, které pak binárně prohledává, kontrola jedné domény trvá přibližně 10 milisekund. Blocklist pojme až 537 tisíc domén a lze jej spravovat přes webové rozhraní. Projekt zatím
… více »ArtCraft je sada open source aplikací pro práci s obrázky a videi "inspirovaných" aplikacemi od Adobe. Napsaných v Rustu. Pro MacOS, Windows i Linux. Běží také ve webovém prohlížeči. Aktuálně se jedná o 7 aplikací: PhotoCraft (Photoshop), VectorCraft (Illustrator), FilmCraft (Premiere Pro), LightCraft (Lightroom), PdfCraft (Acrobat), EffectCraft (After Effects) a DesignCraft (InDesign). Zdrojové kódy jsou k dispozici na GitHubu.
.
Požiadavky:
Chcem zálohovať domáce fotky, dokumenty a prácu. Je to cca 50GB dát z toho viac ako polovica sú menšie súbory v rozsahu 1MB - 5MB. Z toho sa deňne mení len malá časť (cca 200MB), zvyšok sa nemení. Zálohvoať sa bude na domáci server. Záloha musí prebehnúť čo najrýchlejšie. Zálohy musia byť prehliadateľné cez štandardný filemanager (napr MC) aby bolo možné prezerať a obnoviť aj jednotlivé súbory bez potreby špecialnej aplikácie čo vytvorila zálohu (pre prípad kompletnej havárie notebooku). Adresárová štruktúra musí vyzerať pri každej zálohe presne rovnako ako oreginál (vyzualne nesmie nič z 50GB súborov chýbať). Nenáročnosť na HW prostriedky. Kompresia nieje potrebná.
Hlavné súčasti riešenia:
Rsync - plná záloha:
rsync -ab --log-file=$tgf/00_full.log --block-size=$blok -X /tmp/exclude -d $s1 $tgf
Rsync skopíruje všetko do nového umiestnenia, spraví log, vylúči súbory čo sa nebudú zálohovať,a data bude kopírovať po blokoch zadanej velkosti
Rsync - prírastková záloha:
rsync -ab --block-size=$blok --link-dest=$lbf -X /tmp/exclude -d $s1 $tgi
Rsync postupuje rovnako ako pri plnej zálohe. Na nezmenené súbory spravý hardlink namiesto kopírovania.
SSHFS - prístup na server:
sshfs tomolc@$iph:/home/tomolc/zalohy/tomolc $tg
Kontrola či NB bezí z batérie:
cat /sys/class/power_supply/ACAD/online
V prípade že NB beží z batérie spraví sa len prírastková záloha.
Samotný skrypt pridáva niekoľko obslužných pasáži, ktoré kontrolujú stav NB, pripoja domáci server a vyhodnotia aká záloha sa uskutoční - full alebo prírastková.
V dizkuzii by som sa chcel poradiť ohladom optimálnosti riešenia vzhladom na čas zálohovania na 100Mbit LAN a jednojadrovom CPU na notebooku (Intel Core2Solo 1,6Ghz). Pôvodná predstava bola, že plnú zálohu stačí robiť raz za niekoľko mesiacov a prírastkovú potom každý deň.
Je dvoležité aby dáta v zálohe vyzerali rovnako ako oreginál. V prípade že si zmažem omylom súbor tak si jednoducho cez sshfs pripojím disk so zálohou a skopírujem cez filemanager záložný súbor nazad do notebooku.
Skript vyzerá takto:
(Zatial som neprerobil všetky komenty do AJ - v tom som začiatočník.)
echo "back_remote======================================================="
ac=`cat /sys/class/power_supply/ACAD/online`
#if [ "$ac" = "0" ]; then echo "power off-line"; exit; fi
dnorm="`date +'%Y-%m-0%d_%H-%M-%S'`" #human date
dunix="`date '+%s'`" #unix date in "s"
bn=30 #backup numbers
hm=$HOME #user home
export DISPLAY=:0
blok=32768 #65536, 16384
iph=192.168.0.101 #ip servera urceneho na zalohy
fbd=60 #full backup time period in days
ibh=24 #incremental backup time period in hours
fbt=`echo $(($fbd * 24 * 3600))` #full backup time period in "s"
ibt=`echo $(($ibh * 3600))` #incremental backup time period in "s"
s1="$hm" #source dirs to backup
tg=/media/netfs/.z_back_remote #remote backup target
tgf=$tg/$dnorm-full #target full backup
tgi=$tg/$dnorm-incr #target incr backup
lbf=$tg/00_last_backup_full #last backup full symlink
lbi=$tg/00_last_backup_incr #last backup incr symlink
echo "mobac
.mobac
XnView.db
.thumbnails
lost+found
.cache
" > /tmp/exclude #users excludet dirs or files
#zalohovacie funkcie----------------------------------------------------
function backfull () {
echo "full_backup==================================================="
cd $tg; mkdir $tgf #vytvori ciel pre novu plnu zalohu
if [ -L "$lbf" ]; then rm $lbf; fi
ln -s $dnorm-full 00_last_backup_full #vytvori novy simlink aby bolo jasne ktora zaloha je posledna plna
echo $dunix > $tgf/full.time #poznaci unixovi datum tejto plnej zalohy
echo "backfull"
rsync -ab --log-file=$tgf/00_full.log --block-size=$blok -X /tmp/exclude -d $s1 $tgf
echo "end==========================================================="; sleep 3
}
function backincr () {
echo "incremental_backup============================================"
cd $tg; mkdir $tgi
if [ -L "$lbi" ]; then rm $lbi; fi
ln -s $dnorm-incr 00_last_backup_incr
echo $dunix > $tgi/incr.time
echo "backinr"
rsync -ab --block-size=$blok --link-dest=$lbf -X /tmp/exclude -d $s1 $tgi
echo "end==========================================================="; sleep 3
}
#sprava uloziska--------------------------------------------------------
function hzon () {
ping -c 3 -W 3s $iph > /dev/null
if [ "$?" = "0" ]; then echo "domaci server je online"; sync
sshfs tomolc@$iph:/home/tomolc/zalohy/tomolc $tg
else echo "domaci server je offline"; exit
fi
}
function hzoff () { sync; sync; fusermount -u /media/netfs/.z_back_remote;}
#kontroly---------------------------------------------------------------
function control () {
rsync --version &>/dev/null
if [[ ! $? -eq 0 ]]; then echo "nainstaluj program rsync"; exit; fi
sync; sleep 2
if [ ! -f "$tg/tomolc.test" ]; then hzon; else echo "Server uz je pripojeny, zacinam zalohovanie"; fi
}
#samotne zalohovanie----------------------------------------------------
control; cd $tg
if [ -d "$lbf" ]; then dplna="`cat $lbf/full.time`"; else dplna=0; fi #pri uplne prvom spusteni spravi plnu zalohu, pri dalsich uz pracuje podla ligiky nizsie
if [ -d "$lbi" ]; then dprir="`cat $lbi/incr.time`"; else dprir=0; fi #pri uplne prvom spusteni spravi plnu zalohu, pri dalsich uz pracuje podla ligiky nizsie
if [ "$ac" = "0" ]; then echo "sekcia 1 power off-line"; echo "INCREMENTAL"; fi #ak NB bezi na baterku urobi sa len prirastkova zaloha.
if [ "$ac" = "1" ]; then #ak je PC pripojeny do elektriky tak sa rozhoduje co dalej
echo "sekcia 2 power online"
if [ `echo $(($dunix - $dplna))` -ge $fbt ]; then #podmienka vypocita ako stara je posledna plna zaloha a ak je starsia ako FB (def hore) spravy znova plnu zalohu
echo "sekcia 2-3 plna"
backfull
elif [ `echo $(($dunix - $dprir))` -ge $ibt ]; then
echo "sekcia 2-4 prirastkova"
backincr
else echo "dnes uz zaloha prebehla"
fi
long="`ls -t $tg | tail -n +$bn`" #list backup older of backup numbers
#if [ ! "$long" = "" ]; then echo "remove old backup"; cd $tg; rm $long; fi #remove old backup
fi
sync; sleep 1; sync; hzoff
echo "end==============================================================="; sleep 3
Tiskni
Sdílej:
Pôvodná predstava bola, že plnú zálohu stačí robiť raz za niekoľko mesiacov a prírastkovú potom každý deň.Pokud nebudete dělat rotaci záloh (myslím změnu disku, médií apod.) pak Vám stačí udělat plnou pouze jednou a následně pouze increment.
fbt=`echo $(($fbd * 24 * 3600))` muzes usetrit jedno volani echo a jeden subshell a napsat rovnou:
fbt=$(($fbd * 24 * 3600))
dnorm="`date +'%Y-%m-0%d_%H-%M-%S'`" ---> dnorm=$(date +'%Y-%m-0%d_%H-%M-%S')
A pak to ještě hodit do cronu a je vystaráno.
- stálo mě to X nervů a marného vzpomínání na ATARI 800XE a BASIC před víc jak 20 ti lety - tehdy jsem naposledy něco "programoval"
- ale funguje jak potřebuju
zkoušel jsem něco podobného naklikat, ale jak v gnome, tak v kde jsem narážel na různé pič.viny kvůli kterým jsem se na to musel vykašlat
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
.