Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.
Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
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.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
/home/user1/dir/dir/dir/dir/file /home/user2/dir/dir/file /home/user3/dir/dir/dir/dir/dir/file /etc/dir/dir/file /mnt/disk/dir/dir/dir/file ..... .....Chtěl bych ty soubory zazálohovat, ale netuším jak přinutit tar aby zachoval práva a vlastníka adresářů. Spouštím to jako
tar -czvf archiv.tgz -T filelist.txtU souborů v archivu jsou ty práva v pořádku, ale u adresářů tar nastaví jako vlastníka root:root a práva 0755. Prostě mi jde o to, jak z relativně rozsáhlého filesystému vyzobat soubory a ty zazálohovat i s cestou včetně práv nadřazených adresářů. Poradíte něco?
archive="/home/zaloha/$(cat /etc/hostname)_$(date '+%Y-%m-%d').tar.gz" dir=$(mktemp -d) rsync -a --files-from=/home/zaloha/files.txt / $dir cd $dir tar -czvf $archive . chmod 600 $archive cd .. rm -r $dirAle přijde mi to jako docela prasečina ty soubory někam dočasně kopírovat aby se zachovaly práva adresářů i po rozbalení. Nevíte o nějakém čistějším řešení? Možná nějak cpio a rourou přímo do taru? ...zkusím ješte poexperimentovat.
tar --one-top-level -xzf $archiveVyvoří to podadresář.
cpio -ov < filelist.txt > archiv.cpioRozbaliť:
cpio -idv < archiv.cpio'o' je 'output to archive'
Ak cesty k súborom obsahujú medzeru/tab/... tak jednotlivé mená súborov by mali byť oddelené nulovym bajtom a nie EOL a cpio potom treba pridať flag '0'
Skombinovať sa to dá pekne s find ... -print resp. find ... -print0.
A prípadne sa dá pri rozbaľovaní pridať ešte
'm' - zachovať file modification timecpio -ov < filelist.txt | gzip > archiv.cpio.gza rozbalit
zcat archiv.cpio.gz | cpio -idvpřípadně se dá použít přepínač
--no-absolute-filenames
aby se to nerozbalilo na původní místo ale do aktuálního adresáře. Doporučuju ale mít v tom seznamu souborů taky všecky adresáře a podadresáře v cestě k souboru. Jinak se nemusí zachovat jejich původní práva.
find Thunderbird | cpio -vo | gzip > Thunderbird.cpio.gznebo
cd Thunderbird; find | cpio -vo | gzip > ../Thunderbird.cpio.gzNěkteré verze taru prý neumí číst soubory ze seznamu tam se cpio hodí použít, ale na obyčejné rekurzivní balení všeho je tar lepší.
-p, --preserve-permissions extract information about file permissions (default for superuser)
Dělám to jako root, tak ten přepínač nemá nanic vliv vůbec.Nepomohlo by přidat --same-owner (viz zde)?
#!/bin/bash # mapfile číta po riadkoch, tak nebude problém s medzerami v názvoch súborov # Ak ale súbory majú v názve "\n", chcelo by to iný prístup mapfile -t < list # Vyrobíme si ten zoznam adresárov for F in "${MAPFILE[@]}" ; do dirname "$F" ; done | sort -u >list-with-dirs # Pridáme zoznam súborov cat list >>list-with-dirs # --no-recursion zabezpečí, že sa v archíve budú iba požadované súbory a adresáre bez obsahu sudo tar -czf archive.tgz -C source --no-recursion -T list-with-dirs
mkdir -p /tmp/a/b/c/d/e/f touch /tmp/a/b/c/d/e/f/file find /tmp/a -type f > /tmp/list mapfile -t < /tmp/list for F in "${MAPFILE[@]}" ; do dirname "$F" ; done | sort -uto vypíše jenom ten poslední adresář
/tmp/a/b/c/d/e/fAby to fungovalo tak by ten výstup měl vypadat nějak takto:
/tmp /tmp/a /tmp/a/b /tmp/a/b/c /tmp/a/b/c/d /tmp/a/b/c/d/e /tmp/a/b/c/d/e/f
filelist=/tmp/filelist.txt dirlist=/tmp/dirlist.txt IFS="\n" t=$(mktemp) cat $filelist | while read f; do cd "$(dirname $f)" until [ "$(pwd)" = "/" ]; do pwd >> $t cd .. done done sort -u < $t > $dirlist cat $dirlist $filelist > /tmp/list.txt rm $t $dirlist tar -czvf archive.tgz --no-recursion -T /tmp/list.txtToto mi jakžtakž funguje, ale myslím že použitelné to bude maximálně do pár desítek/stovek souborů protože ta rychlost je tragická. Tak teď nevím co je menší zlo. Jestli toto nebo ten rsync :-/
cd
a pwd
. Hlavný problém je ale v tom, že sa každý adresár vyhodnocuje stále dokola znova a znova. Toto by mohlo pomôcť:
declare -A processed mapfile -t < list for F in "${MAPFILE[@]}" ; do F="$(dirname "$F")" while [ "$F" != "." -a "$F" != "/" ] ; do test -z "${processed[$F]:+_}" || break echo "$F" processed[$F]=1 F="$(dirname "$F")" done done | sort >list-with-dirs cat list >>list-with-dirs sudo tar -czf archive.tgz -C source --no-recursion -T list-with-dirsP.S.:
sort -u
by už nemal byť potrebný, možno ani sort
.
Tiskni
Sdílej: