Uživatelé mobilních telefonů s Linuxem si nyní mohou nainstalovat aplikaci Mobilní Datovka. Díky tomu je přístup k datovým schránkám dostupný i na zařízeních s mobilními linuxovými distribucemi, jako jsou například Mobian, NixOS Mobile, pmOS atd. Aplikace je dostupná na Flathubu.
Software Freedom Conservancy v novém dokumentu shrnuje doporučení, jak přistupovat ke generativní AI založené na LLM při přispívání do svobodného a open-source softwaru. Mimo jiné vyzývá k obezřetnosti, transparentnosti a revizi generovaného kódu člověkem.
Byla vydána nová verze 5.6.0 programu na úpravu digitálních fotografií darktable (Wikipedie).
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.
Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.
Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.
Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.
Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).
Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].
Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.
.
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
.