Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.
Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.
Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.
Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.
Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).
Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.
Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.
Byla publikována Výroční zpráva Blender Foundation za rok 2024 (pdf).
Byl vydán Mozilla Firefox 143.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově se Firefox při ukončování anonymního režimu zeptá, zda chcete smazat stažené soubory. Dialog pro povolení přístupu ke kameře zobrazuje náhled. Obzvláště užitečné při přepínání mezi více kamerami. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 143 bude brzy k dispozici také na Flathubu a Snapcraftu.
Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.
Tiskni
Sdílej:
pacman -Scc
minimálně jednou denně.
Skutočný borec neskrblí a má na root partition dosť miesta. Následne sa vyhne takýmto zbytočnostiam
Fráze "poriadok v systéme" som nikdy nerozumel. To si myslíš, že tie staré balíky v cache začnú časom mutovať a vytvoria skynet?
Aha, takže je to čisto emocionálna záležitosť. Tak to potom áno, do toho ti kecať nebudem
/tmp/yaourt-tmp-<user>/
, takže pokud aspoň občas restartujete, není s tím problém.
echo "tmpfs /tmp tmpfs defaults 0 0" >> /etc/fstab
Hezké. Jsem zase chytřejší. Co takhle to vydat jako článek? Je to hezky napsáno. Díky.
#!/bin/bash OUTFILE="${HOME}/orphan_files.txt" COMMAND='eval DIR=`pwd` ; touch ...mark ; for NAME in `ls -a` ; do [ -f "$NAME" ] && echo "${DIR}/${NAME} ::: `pacman -Qo "$NAME" 2>&1`" >> $OUTFILE ; echo "${DIR}/${NAME}" ; [ -d "$NAME" -a ! -h "$NAME" -a ! -f "${NAME}/...mark" ] && ( cd "$NAME" ; $COMMAND ; ) ; done ; rm ...mark' for SUPERNAME in bin etc lib opt sbin usr; do ( cd "/$SUPERNAME" ; $COMMAND ; ) ; done
Třeba tohle odhalí spoustu balastu, o kterém člověk ani netuší. Stačí grepovat v orphan_files.txt
('No package owns'...). Bude tam spousta souborů, které po sobě nechaly dávno odstraněné balíčky. (Třeba proto, že je autor balíčku chybně označil jako konfigurační.) Navíc každý binární instalátor (například Intel Compiler) taktéž vygeneruje spoustu souborů.
Takové prohledání soubor po souboru samozřejmě nevyřeší všechno. Postup se dá aplikovat jenom v adresářích, kam píše pouze pacman. I v takovém /etc
je spousta souborů, které pacman nezná, a přesto jsou důležité. Nemluvě o /var
. Tam se dá balast od používaných dat odlišit těžko.
Už se těším, až jednou bude pacman používat nějakou databázi. Bez ní ten skript běží děsně dlouho. Trik s ...mark
je hnusný (a vyžaduje práva k zápisu). Určitě to jde udělat stokrát lépe (přes extended attributes), ale nechce se mi. Kdo si myslí, že nemá v adresářových symlincích žádný cyklus, ten je hodně naivní. Zjistit to při padesáti tisících instancích bashe může být trochu pozdě.
(Pokud nemáte 32-bitové process ID, už se neforkne nic. Ani kill. (A proto je tak dobré mít na sdílených vzdáleně přístupných strojích PID namespace, omezení počtu procesů a další rozumná nastavení. Jinak je zabití celého systému tak snadné jako
for (;;) {fork();}
.))
#!/bin/sh find $@ -type f -print0 | xargs -0 pacman -Qo | grep '^error
Cílem té mojí verze bylo spíš pohrát si s rekurzí v shellu než vymýšlet nějaké rozumné a efektivní řešeiní. BTW, jde to i bez
xargs
.
find $@ -type f -exec pacman -Qo '{}' '+' | grep '^error'
Akorát, že verze s xargs je o hodně rychlejší.
Právě jsem to změřil. Střídavě jsem pouštěl jak tu mojí verzi s xargs, tak tu tvou s exec. Pokud nepočítám první spuštění tak každá celkem běžela 3×.
Výsledky na /usr/bin jsou:
1m 26s
verze s xargs
3m 40s
verze s exec
Akorát, že verze s xargs je o hodně rychlejší.
Kdy? Za jakých podmínek? Na jakém stroji? Verze s xargs
může být na multiprocesoru rychlejší, protože dělá fork()
paralelně, zatímco find
může běžet dál. Otázka je, jak by to dopadlo s jedním procesorem.
Na mém stroji (Core i7, 4 jádra po 2 vláknech) to vypadá takhle:
[root@octopus usr]# time find bin -type f -print0 | xargs -0 pacman -Qo | grep '^error' real 2m29.960s user 2m29.277s sys 0m0.070s
[root@octopus usr]# time find bin -type f -exec pacman -Qo '{}' '+' | grep '^error' real 2m35.657s user 2m34.093s sys 0m1.417s
První verze tedy je o něco rychlejší, ale rozhodně ne mnohem rychlejší. Mimochodem, verze s -exec
má zjevně naprosto nehoráznou spotřebu systémového času. Vypadá to, jako by snad to '+'
nedělalo, co má.
Chtělo by to podívat se, kolikrát se tam zavolá fork()
. Na OpenSolarisu je to DTrace skript na jednu řádku, ale nevím, jak to změřit na Linuxu. A nechce se mi. Ale třeba to někoho bude zajímat a zkusí to.
Teď koukám, že ty jsi použilKdy? Za jakých podmínek? Na jakém stroji? Verze s
xargs
může být na multiprocesoru rychlejší, protože děláfork()
paralelně, zatímcofind
může běžet dál. Otázka je, jak by to dopadlo s jedním procesorem.
-exec pacman -Qo '{}' '+'
kdežto já -exec pacman -Qo '{}' ';'
. To bude důvod tak výrazného rozdílu v rychlosti u mě.
for NAME in `ls -A`
s "-a" to poleze i do ".." a pak ti to prošmejdí celý systém šestkrát dokola ;)
Ne, neprošmejdí. Protože v ..
bude ...mark
.
...mark
dával do /
ručně, když jsem to naposledy spouštěl. Nebo ten skript vypadal tenkrát jinak, co já vím. Moc to nepoužívám, protože to trvá nekonečně dlouho a za pět ušetřených megabytů to většinou nestojí.
man
, tady je to pekne prehledne. Nasel jsem ale asi logickou chybu:
Tohle ovšem provádějte jen tehdy, nebude-li opravdu downgrade potřeba, čili obecně cache mažeme před upgradem, nikoli těsně po.Spis opacne? Prece az po upgradu si musim vse par dnu vyzkouset a kdyz vse funguje, tak pak muzu smazat cache se starsimi verzemi.
Spis opacne? Prece az po upgradu si musim vse par dnu vyzkouset a kdyz vse funguje, tak pak muzu smazat cache se starsimi verzemi.Nó tak já jsem předpokládal, že před updatem vše funguje. Ve chvíli, kdy vše funguje, je bezpečné staré balíky vymazat - ty dobře fungující v cache zůstanou (leda když člověk maže -Scc). Po upgradu ale nemusí vše fungovat - právě až po těch pár dnech... nebo taky týdnech...
-Sc
ponecha aktualni balicky (aktualni verze) a smaze jen stare nepouzivane.
cut -d " " -f 1
se dá nahradit parametrem -q
pro pacman.
vim /var/db/pkg/world
paludis --uninstall-unused
pacman -Rs $(pacman -Qdtq)