Настройка размещения кэша Chromium в RAM вместо SSD с использованием psd на OpenRC

4 min

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

Привет, я Munou.

Случайно заглянул в Arch Wiki и нашел кое-что интересное.

Улучшение производительности - ArchWiki

  • Информацию о том, как синхронизировать профили браузера, см. в Profile-sync-daemon. Для определенных браузеров могут потребоваться дополнительные меры предосторожности. Например, см. Firefox Ramdisk.

Мне показалось, что это имеет смысл, поэтому я решил попробовать.

Уже после написания я заметил, что японский в заголовке звучит странно, но...

В общем, различная информация, такая как кэш Chromium для каждого пользователя,

размещается в ~/.config/chromium. По умолчанию это находится на постоянном диске, таком как HDD/SSD, но если поместить это в RAM ( tmpfs ), будет быстрее, верно? RAM энергозависима? Значит, будем периодически копировать данные на постоянный диск во время работы. Вот в чем суть.

Раньше было довольно популярно использовать лишнюю оперативную память как постоянный диск. Может, это своего рода выживший из тех времен?

Установка

sudo pacman -S profile-sync-daemon

Настройка

По умолчанию ничего не включено, поэтому нужно отредактировать ~/.config/psd/psd.conf.

В моем случае это ноутбук, который часто уходит в спящий режим, поэтому я использую такие настройки.

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

USE_SUSPSYNC="yes"

BROWSERS=(chromium firefox vivaldi)

USE_OVERLAYFS="yes"

Для работы в OpenRC

Добавление в /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*

После остановки всех процессов, которыми вы хотите управлять, включая chromium, перезапустите службу local.

sudo rc-service local restart

Убедитесь, что символическая ссылка указывает на tmpfs.

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

Заключение

Сделать-то сделал, но...

imageКажется, прежде чем переносить всё в RAM, стоило бы хорошенько прибраться ^^;

※ Дополнение

В случае с OpenRC это нужно запускать в пользовательском пространстве, а так как это предназначено для systemd, при использовании «как есть» данные могут пропасть. Поэтому я не рекомендую этот способ, но позже добавлю информацию о том, как этого избежать.

Создал демон для OpenRC

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

Related Posts