Alterando a localização do cache do Chromium e outros do SSD para a RAM usando psd no OpenRC

4 min

language: ja bn en es hi pt ru zh-cn zh-tw

Olá, eu sou o Munou.

Por acaso, estava dando uma olhada na Arch Wiki e encontrei algo interessante.

Melhoria de desempenho - ArchWiki

  • Para saber como sincronizar perfis de navegador, consulte o Profile-sync-daemon. Alguns navegadores específicos podem exigir atenção. Por exemplo, veja Firefox Ramdisk.

Achei que fazia sentido, então decidi experimentar.

Depois de escrever, percebi que o japonês no título estava um pouco estranho, mas...

Basicamente, várias informações como o cache do Chromium por usuário

são colocadas em ~/.config/chromium. Por padrão, elas ficam em discos persistentes como HDD/SSD, mas se forem colocadas na RAM ( tmpfs ), ficam mais rápidas, certo? Como é RAM, os dados são voláteis? Então, a ideia é copiá-los periodicamente para o disco persistente enquanto o sistema está rodando. É isso.

Antigamente, era comum tratar áreas de RAM sobrando como discos persistentes. Talvez seja um sobrevivente desse tipo de técnica?

Instalação

sudo pacman -S profile-sync-daemon

Configuração

Como nada vem ativado por padrão, editamos o arquivo ~/.config/psd/psd.conf.

No meu caso, como uso um notebook que entra frequentemente em suspensão, uso esta configuração.

$ cat ~/.config/psd/psd.conf | grep -v \# 

USE_SUSPSYNC="yes"

BROWSERS=(chromium firefox vivaldi)

USE_OVERLAYFS="yes"

Para rodar no OpenRC

Adicionar em /etc/local.d

/etc/local.d - Gentoo wiki

$ cat /etc/local.d/psd.start 
#!/bin/sh
/usr/bin/psd sync
$ cat /etc/local.d/psd.stop 
#!/bin/sh
/usr/bin/psd resync
/usr/bin/psd unsync
$ chmod +x /etc/local.d/psd*

Após parar todos os processos que deseja gerenciar, incluindo o chromium, reinicie o serviço local.

sudo rc-service local restart

Verifique se o link simbólico está apontando para o diretório tmpfs.

$ ls -la ~/.config/chromium
lrwxrwxrwx 1 haturatu haturatu 36  4月 19 08:38 /home/haturatu/.config/chromium -> /run/user/1000/psd/haturatu-chromium

Conclusão

Fiz isso, mas...

imageSinto que deveria ter feito uma boa limpeza antes de pensar em mover as coisas para a RAM ^^;

※ Adendo

No caso do OpenRC, ele precisa ser executado no espaço do usuário e, como é feito para o systemd, os dados podem sumir se usado como está. Portanto, não recomendo, mas adicionarei uma solução alternativa mais tarde.

Criei um daemon para o OpenRC

yay -S profile-sync-daemon-openrc-git

Related Posts