Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. 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.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.
Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.
Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.
rsync -a svého zálohovacihp oddílu z daty BackupPC systému. Teď po dokončení všeho jsem se je rozhodnul smazat. Příkaz rm -r * vpříslušném adresáři /zaloha/BackupPC jede již 45 minut a podle toho co mohu sledovat tak dříve než za hodinu neskončí. a co je nejhorší systém je nepoužitelný. Vše co píšu píšu naslepo a po cca minutě nebo dvou se řádek vysype z bufferu na obrazovku. Proto nemám silu opravovat žádné překlepy a ani čárky. Jsem si celkem vědom, že je to v podstatě ta nejhorší možná kombinace. backuppc vytvářístrom kdy v jedné větvi jsou všechny záléhované soubory zařazené podle hashů. v druhé vetvi jsou jednotlivá PC podnimi přislušné plné nebo inkrementální zálohy a ty jsou na hardlinkované do hashoové větve.(tedy jednotlivé soubory ve větmi pod zálohami jednotlivých pc jsou na hardlinkované na příslušné hashe. Pro mne má hashová větev asi milion souborů a na každý je mezi 5a25 hardlinky. takže i když je souborů cca milion smzatelných objektů ve stromu je cca 10-15 mil.mnohé z nich jsou mrnavé pod 500 bytů. jsou kompresované. a celé to sedí na v podstatě nejhorším možném filesystému, protože na zálohu v tomto objemu jsem neměl jinde místo než na mém multimediálním oddíle s XFS filesystémem. Vím že xfs má s mazáním mnoha malých souborů problémy a je pomalý, ale mne nevadí že je pomalý, ale to že v podstatě mi tohle mazání zastavilo systém. a nemohl jsem skoro nic psát.
Mrkni na aktivni I/O scheduler, i takove CFQ se da tunit. Mozna jeste pomuze rozhazet procesy do patricnych cgroup.
Jinak mas pravdu, XFS je zkratka univerzalni a nezavdeci se vsem pouzitim. Na male soubory mam v produkcnim prostredi osvedceny reiserfs.
test $ cat testfs-files #!/bin/bash MAX=$1 for ((i=0;i<$MAX;i++)); do dd if=./testfile of="./test/F$i" bs=2048 2>/dev/null done test $ test $ ls -l testfile | cut -d ' ' -f 5 2048 test $ test $ test $ time ./testfs-files 1000000 real 12m6.861s user 0m40.989s sys 1m1.892s test $ time sync real 0m0.454s user 0m0.000s sys 0m0.279s test $ time du -sh test 3.9G test real 0m1.142s user 0m0.317s sys 0m0.825s test $ time cd test real 0m0.000s user 0m0.000s sys 0m0.000s test $ time ls -1 | wc -l 1000000 real 0m1.468s user 0m1.409s sys 0m0.068s test $ cd .. test $ time find ./test -type f -delete real 0m49.055s user 0m0.540s sys 0m29.257s test $
To bude spíš tím find-em (rm -f ./test/* nelze použít na 1M souborů), ext4 podle mých zkušeností není šťastný s takového množství souboru v jednom adresáři, ale xfs to nevadí, naopak, jak jsem uvedl, vycházelo mi to lépe, než je zahnízďovat do struktury. Ext4 kdyby to měl ve struktuře, tak to smázne hned a xfs by to zas trvalo déle (si to tedy myslím, fčul jsem to nezkoušel).
2.6.32 (přiznám se, že nevím co tak „kjucí“ backportovali, nijak to nesleduji).
Bavilo jsem se o svém výše (po vláknu) uvedeném testu, kde 1M souborů bylo v jedné složce.
Evidentně find -delete na ext4 z nějakého důvodu trval hnusně dlouho, ještě jsem si to zkusil bez něj a ze strukturou. Struktura je 63-63-252
struct-ext4 struct-xfs one-dir-ext4 one-dir-xfs
create 63,63,252 | 1000188 11:19.2 11:55.7 11:38.2 11:48.8
sync 0:00.2 0:01.1 0:00.2 0:00.4
du -sh test 0:01.4 0:00.9 0:02.0 0:01.2
find ./test -type f -name '*22' | wc -l 0:00.6 0:01.2 0:00.9 0:01.4
(sync && \
> echo 3 > /proc/sys/vm/drop_caches && \
> sleep 1 && \
> find ./test -type f -name '*22' \
> | wc -l) 0:20.0 1:29.6 0:38.7 0:37.8
(sync && \
> echo 3 > /proc/sys/vm/drop_caches && \
> sleep 1 && \
> rm -rf ./test/ ) 0:44.2 2:29.6 0:54.9 1:28.0
A potvrdila se má zkušenost, že xfs je šťastnější s mnoha soubory ve složce než ze strukturou a ext4 obráceně. (použil jsem zde rm na nadřazenou složku aby to bylo rm a stejně zadané).
#!/bin/bash
MAXL1=$1
MAXL2=$2
MAX=$3
for ((d1=0;d1"MAXL1;d1++)); do
mkdir "./test/D${d1}"
for ((d2=0;d2"MAXL2;d2++)); do
mkdir "./test/D${d1}/d${d2}"
for ((i=0;i"$MAX;i++)); do
dd if=./testfile of="./test/D${d1}/d${d2}/F$i" bs=2048 2>/dev/null
done
done
done
Tiskni
Sdílej: