Portál AbcLinuxu, 1. května 2025 00:25

chromium v ramce

18.12.2024 17:16 | Přečteno: 1945× | Výběrový blog

Moderní webové prohlížeče (a nejenom ty) mají jednu takovou neřest. Neustále si něco zapisujou na disk. Pokusně jsem zapnul chromium a jenom s tím jedním úvodním tabem kde není vůbec načtená nějaká webová stránka, ta potvora během půl dne stihla zapsat na disk přes půl gigabajtu čehosi. Firefox nebo google chrome na tom nejsou o nic líp. Povolení nebo zakázání diskové cache přímo v prohlížeči má vliv jenom velikost té cache jako celku na disku ale ne na intenzitu zápisů. Protože mám linux na USB flešce a ty jak známo mají omezený počet zápisů do buňky, mě takové chování slušně řečeno dost znepokojuje. Kolik kdo zapisuje se dá zjistit příkazem
iotop -Pao
Do kterých adresářů a souborů se zapisuje:
fatrace -t -f WD | grep chromium
Takto se dá zjistit, že prohlížeč zapisuje jenom do třech adresářů.
~/.cache/mesa_shader_cache_db
~/.cache/chromium
~/.config/chromium
První adresář jsem vyřešil tak, že jsem si dal do ~/.bashrc
export MESA_SHADER_CACHE_DIR=/dev/shm/$USER-cache
Na archwiki jsem našel celkem šikovný návod pro firefox. Skript jsem si trochu poupravil aby mi fungoval na chromium. Je potřeba mít nainstalovaný rsync.
#!/bin/sh

static=chromium-static
link=chromium
volatile=/dev/shm/chromium-$USER

IFS=
set -efu

rm -rf ~/.cache/chromium
mkdir -p /dev/shm/$USER-cache/chromium
ln -s /dev/shm/$USER-cache/chromium ~/.cache/chromium

cd ~/.config

if [ ! -r $volatile ]; then
    mkdir -m0700 $volatile
fi

if [ "$(readlink $link)" != "$volatile" ]; then
    mv $link $static
    ln -s $volatile $link
fi

if [ -e $link/.unpacked ]; then
    rsync -av --delete --exclude .unpacked ./$link/ ./$static/
else
    rsync -av ./$static/ ./$link/
    touch $link/.unpacked
fi
Dál bylo potřeba vytvořit systemd service aby se to spouštělo automaticky během spuštění počítače a před vypnutím. Synchronizuje to jenom soubory které se změnily, takže se na disk zapisuje opravdu jenom nezbytné minimum.
# ~/.config/systemd/user/chromium-sync.service
[Unit]
Description=chromium sync tmpfs

[Service]
Type=oneshot
RemainAfterExit=true
StandardOutput=null
ExecStart=sh /home/tools/chromium-sync.sh
ExecStop=sh /home/tools/chromium-sync.sh

[Install]
WantedBy=default.target
Skript se samozřejmě dá kdykoli spustit ručně nebo se tím může zaúkolovat cron když by byla potřeba to synchonizovat častěji, ale toto já shledávám zbytečným. Je nutno taky počítat s tím, že to zežere okolo 300MB paměti protože je celý profil nakopírovaný v RAM, ale to by na dnešních strojích které mají aspoň 4GB RAM snad nemusel být problém. Na druhou stranu se tímto celý prohlížeč malinko zrychlí, RAM je daleko rychlejší jak disk. Snad se někdy v blízké budoucnosti programátoři prohlížečů chytnou za nos a umožní uživatelům podobný "RAM only mode" zapnout na jedno kliknutí. Teoreticky jde podobný postup aplikovat na libovolný program který decimuje disk zbytečnýma zápisama.        

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

Gréta avatar 18.12.2024 19:43 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
Rozbalit Rozbalit vše Re: chromium v ramce
Odpovědět | Sbalit | Link | Blokovat | Admin
Snad se někdy v blízké budoucnosti programátoři prohlížečů chytnou za nos a umožní uživatelům podobný "RAM only mode" zapnout na jedno kliknutí.

lidi hele raděj přesměrovat cache do /dev/null, jestli ti neva že pojedeš uplně bez cache tak by to asi jako takový víc jednoduchý řešení mohlo fungovat :O ;D

CHROMIUM_FLAGS="--disk-cache-dir=/dev/null --disk-cache-size=1" chromium
Zelená energetická soustava založená na obnovitelnejch zdrojích energie versus realnej svět 🤡🇪🇸
18.12.2024 20:18 jejda | skóre: 25 | blog: jejda
Rozbalit Rozbalit vše Re: chromium v ramce
Jo toto dost omezí zápisy do cache, no do adresáře s profilem to horlivě zapisuje dál. Zkus si zapnout ten fatrace a uvidíš.
Gréta avatar 18.12.2024 20:57 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
Rozbalit Rozbalit vše Re: chromium v ramce
nj :D
Max avatar 19.12.2024 15:33 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: chromium v ramce
Chci zpátky původního avatara, takhle mě mateš! :)
Zdar Max
Měl jsem sen ... :(
Gréta avatar 20.12.2024 00:36 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
Rozbalit Rozbalit vše Re: chromium v ramce
Příloha:

to je specialni vanoční avatar vyrobenej pomoci ai :D :D

=^..^= AmigaPower® avatar 20.12.2024 19:39 =^..^= AmigaPower® | skóre: 30 | blog: BLB | Praha
Rozbalit Rozbalit vše Re: chromium v ramce
Mě by kurva spíš zajímalo, proč když mám spuštěnej jen Fajrfox (15 tabů) a Voperu (60 tabů), tak proč kurva ty mrdky sežerou celou 8GB RAMku až takovym způsobem, že buď jedno, nebo druhý zkolabuje, když ještě před pár lety na starym kompu s 1.¼GB RAM mi to chodilo se třema prohlížečema po 150 tabech a maximálně jsem si musel počkat?!
20.12.2024 19:51 hm
Rozbalit Rozbalit vše Re: chromium v ramce
No Linux od te doby usel kus cesty a zkurvil desktop tak, ze zlaty windows. To kdyz na tom samym zeleze nahodis Win10 Fajra a Voperu tak ti to v pohode utahne 300 tabu. Problem fakt neni v aplikaci, ale v cem tu apku spoustis.
=^..^= AmigaPower® avatar 21.12.2024 08:36 =^..^= AmigaPower® | skóre: 30 | blog: BLB | Praha
Rozbalit Rozbalit vše Re: chromium v ramce
No to je úplně jedno, mam dualboot (když už jsem ty W11 musel zaplatit) a chová se to stejně jako na OpenMandrivě.
21.12.2024 18:47 RealJ | skóre: 8
Rozbalit Rozbalit vše Re: chromium v ramce
tak si kurva neinstaluj ten transexualni browser, ale pouzij jako vsichni korporatni chrome... kdo nepouziva chrome chcije proti nam, korporatni burzoazii...
Gréta avatar 20.12.2024 20:31 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
Rozbalit Rozbalit vše Re: chromium v ramce

asi dřív bejvaly ty stránky víc menčí než sou dneska :D dřív se asi moc nevyužival javascript a nebejvalo tam tolik vobrázků, animací, dynamickýho vobsahu etc :O ;D

=^..^= AmigaPower® avatar 21.12.2024 08:40 =^..^= AmigaPower® | skóre: 30 | blog: BLB | Praha
Rozbalit Rozbalit vše Re: chromium v ramce
8GB!!! 8GB!!! Na co to kurva potřebuje sežrat 8GB, když každýmu musí stačit 64kB?
21.12.2024 18:48 RealJ | skóre: 8
Rozbalit Rozbalit vše Re: chromium v ramce
si porovnej co za porno jsi mel na tech 64kB a co mas ted na tech pul milionu terabajtu ram ktere mas...
18.12.2024 21:04 henk | skóre: 2 | blog: henkovi_prdy
Rozbalit Rozbalit vše Re: chromium v ramce
Odpovědět | Sbalit | Link | Blokovat | Admin
Díky, fatrace jsem neznal.
19.12.2024 07:26 Bugsa
Rozbalit Rozbalit vše Re: chromium v ramce
Odpovědět | Sbalit | Link | Blokovat | Admin
Tohle nevyhovovalo? https://wiki.archlinux.org/title/Profile-sync-daemon
19.12.2024 08:45 jejda | skóre: 25 | blog: jejda
Rozbalit Rozbalit vše Re: chromium v ramce
Aha, to jsem nějak přehlídl. Jsem teď letmo mrknul na github tak to podporuje dost prohlížečů a má to prý taky nějak vyřešený suspend počítače. Ale zkoušet to asi už nebudu když mi ten můj bastl funguje a připadá mi takový jednodušší a přehlednější.
20.12.2024 14:03 zito | blog: zito
Rozbalit Rozbalit vše Re: chromium v ramce
Bomba. Je to zabalíčkované i v Debianu.

fatrace taky super.

Díky
21.12.2024 20:03 -(|[)=
Rozbalit Rozbalit vše Re: chromium v ramce
Zabalickovane v debiljanu = slo to zkomipilovat (pred lety). Zatim je v tom baliku asi 6 ciritcal bugs ktere maintainer zvysoka ignoruje a nebackportuje - protoze fixy jsou ve vyssi verzi. Takze pro dobroduhy budiz debiljan, ale normalni clovek na Fedoru na desktopu a Centos na servru. Tam o to nekdo i pecuje, testuje a patchuje.
19.12.2024 21:06 kvr
Rozbalit Rozbalit vše Re: chromium v ramce
Odpovědět | Sbalit | Link | Blokovat | Admin
Je třeba cache vůbec kopírovat nebo se jednoduše smířit s tím, že první otevření webů po spuštění bude trochu pomalejší? Předpokládám nikoliv drasticky.

Víc bych vyhodnotil config - tam bude historie apod - a synchronizovat jenom při spuštění a shutdown je docela málo - já mám víc pádu než explicitních restartů (obvykle při suspend, ale to je mimo téma). Kolik dat se do config zapisuje? Kdysi jsem to řešil na rotačních discích kvůli uspávání, ale u SSD to nemá tak velký smysl, je-li množství dat malé.
20.12.2024 09:01 jejda | skóre: 25 | blog: jejda
Rozbalit Rozbalit vše Re: chromium v ramce
Ono to ale tu cache nekopíruje do paměti. Chová se to tak, že to ten cache adresář smaže a nahradí ho symlinkem který odkazuje do /dev/shm . Do paměti se kopíruje jenom profil ~/.config/chromium . Kolik přesně dat do kterého adresáře se zapisuje jsem neměřil. Když by počítač vytuhnul, nemělo by se profilu teoreticky nic stát. Příště to prostě načte poslední uloženou verzi.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.