如何将浏览器配置文件同步到Linux中的TMPFS(内存)
本教程解释了如何将浏览器配置文件同步到TMPFS(内存)以提高Linux中的浏览器速度。
我们可以手动同步配置文件或者使用一些工具。
在本教程中,我们将使用一个名为profile-sync-daemon(不久psd)的这样的工具来执行它。
Profile-Sync-DaeMon工具只不过是Bash脚本,旨在管理TMPFS中的浏览器的配置文件,并在RSync到HDD和/或者SSD的帮助时会周期性地同步它们。
正如我们所知道的那样,TMPFS是驻留在内存或者交换分区中的临时文件系统。
因此,移动的浏览器的配置文件将有效地提高浏览器的整体性能。
将浏览器的个人资料移动到内存提供了两个显着优势:
- 减少硬盘读/写,特别是改进了SSD中的I/O操作。
- 提高Web浏览器的速度和响应能力。
这种方法的一个警告是它将减速登录,因为浏览器的配置文件在登录时将复制到内存。
支持的浏览器
Profile-Sync-Daemon脚本允许我们管理几乎所有Web浏览器的配置文件,包括以下内容:
- Aurora
- Chromium
- Conkeror
- Epiphany
- Firefox
- Firefox-trunk
- Google Chrome
- Icecat
- Iceweasel
- Inox
- Luakit
- Midori
- Opera, Opera-Beta, Opera-Developer, and Opera-Legacy
- Otter-browser
- Palemoon
- QupZilla
- Qutebrowser
- Rekonq
- Seamonkey
- Surf
- Vivaldi-browser and Vivaldi-browser-snapshot
在Linux上安装Profile-Sync-守护程序
由于Profile-sync-emon只是bash脚本,它可以安装在许多Linux发行版上。
好事是它在一些Linux发行版的官方存储库中提供。
在Arch Linux及其像Manjaro Linux这样的变体上,使用以下Pacman安装PSD。
$sudo pacman -S profile-sync-daemon
在Debian Sid/10/9,Ubuntu 19.10/18.04:
$sudo apt install profile-sync-daemon
在Fedora 31/30,CentOS 8和具有DNF的其他发行版:
$sudo dnf copr enable szasza/Profile-sync-daemon
$sudo dnf install profile-sync-daemon
在其他分布中,确保安装了以下依赖项:
- Bash> = 4.0
- Coreutils.
- Finduils.
- kmod.
- rsync.
- systemd.
然后从版本页面下载Profile-Sync-Daemon最新版本并手动安装。
请参阅安装文件中包含的安装文本文档以了解如何安装它。
从源安装通常如下:
$make
$sudo make install
备份浏览器配置文件
在首次开始使用PSD之前,强烈建议备份浏览器的配置文件。
例如,如果我们使用的是Mozilla Firefox,所有书签,保存的密码,扩展名和插件都存储在一个名为Profile的特殊文件夹中。
它通常存储在除了Firefox安装目录之外的单独的位置。
因此,如果Firefox崩溃或者出现问题,则可以轻松恢复配置文件夹。
在Linux桌面中,Firefox配置文件文件夹通常将存储在~/.mozilla位置。
$ls ~/.mozilla extensions firefox systemextensionsdev
转到此位置并备份整个Firefox文件夹,并保持安全的位置。
此外,请参阅Firefox的官方文档页面备份和还原配置文件。
对于其他浏览器,请参阅其官方文档。
使用profile-sync-daemon将浏览器配置文件同步到Linux中的TMPFS(内存)
首先,通过运行命令创建PSD配置文件:
$psd
这将在/home/wuser/.config/psd/目录中创建psd.conf文件。
First time running psd so please edit /home/sk/.config/psd/psd.conf to your liking and run again.
现在编辑PSD配置文件:
$nano /home/sk/.config/psd/psd.conf
更换/主页/sk /使用。
找到浏览器行,取消注释它通过删除符号并将浏览器添加到空格分隔。
[...] BROWSERS="chromium firefox" [...]
我们可以通过提及空间分开,添加尽可能多的浏览器。
如果没有定义的浏览器,PSD将同步所有支持的浏览器。
保存并关闭文件。
请注意,只有在PSD服务启动和/或者重新启动后,才会应用对PSD.conf文件所做的任何更改。
启用和启动PSD服务:
$systemctl --user enable psd
$systemctl --user start psd
验证PSD服务是否已启动:
$systemctl --user status psd ● psd.service - Profile-sync-daemon Loaded: loaded (/usr/lib/systemd/user/psd.service; enabled; vendor preset: enabled) Active: active (exited) since Wed 2017-03-18 15:45:54 IST; 8s ago Docs: man:psd(1) man:profile-sync-daemon(1) https://wiki.archlinux.org/index.php/Profile-sync-daemon Process: 11172 ExecStart=/bin/true (code=exited, status=0/SUCCESS) Main PID: 11172 (code=exited, status=0/SUCCESS) Mar 18 15:45:54 theitroad systemd[3824]: Starting Profile-sync-daemon... Mar 18 15:45:54 theitroad systemd[3824]: Started Profile-sync-daemon.
PSD服务已启用并启动!
从现在开始,Profile-Sync-守护程序将浏览器的配置文件复制到启动时的TMPFS(内存),并将在HDD/SSD和内存周期性之间同步它们。
它还维护了物理磁盘中的配置文件备份。
预览配置文件同步 - 守护程序设置
我们可以通过选项-p预览PSD正在进行的。
$psd p
示例输出:
Profile-sync-daemon v6.31 on Ubuntu 18.04.4 LTS Systemd service is currently active. Systemd resync-timer is currently active. Overlayfs technology is currently inactive. Psd will manage the following per /home/sk/.config/psd/psd.conf: browser/psname: chromium/chromium owner/group id: sk/1000 sync target: /home/sk/.config/chromium tmpfs dir: /run/user/1000/sk-chromium profile size: 32M recovery dirs: none browser/psname: firefox/firefox owner/group id: sk/1000 sync target: /home/sk/.mozilla/firefox/htoypxlg.default-1563118799416 tmpfs dir: /run/user/1000/sk-firefox-htoypxlg.default-1563118799416 profile size: 245M recovery dirs: none
正如我们所看到的,PSD在我的Ubuntu 18.04桌面上运行的是,例如管理两个浏览器的配置文件:Chromium和Firefox。
它还显示其他有用的详细信息,例如浏览器名称,所有者/组ID,配置文件大小,同步目标和TMPFS目录路径。
验证profile-sync-daemon是否正常工作
要验证Profile-Sync-Daemon实际同步浏览器的配置文件,请检查TMPFS目录路径。
在我的情况下,它是/运行/用户/1000。
我们可以在"PSD P"命令的输出中找到TMPFS的路径。
$ls /run/user/1000
示例输出:
bus gnome-shell psd.pid snapd-session-agent.socket dbus-1 gnupg pulse systemd dconf gvfs sk-chromium update-notifier.pid gdm keyring sk-firefox-htoypxlg.default-1563118799416
查看文件管理器中的TMPFS Sync目录:
让我们在TMPFS中检查配置文件夹的大小:
$du -sh /run/user/1000/sk-firefox-htoypxlg.default-1563118799416/ 236M /run/user/1000/sk-firefox-htoypxlg.default-1563118799416/
..And大小的Firefox的默认配置文件文件夹:
$du -sh ~/.mozilla/firefox/htoypxlg.default-1563118799416 0 /home/sk/.mozilla/firefox/htoypxlg.default-1563118799416
如我们所见,TMPFS中的配置文件夹大小为236米,但默认配置文件夹的大小为零。
因为,它只是一个符号链接,指向TMPF的另一个目录,例如:/run/user/1000/sk-firefox-htoypxlg.default-1563118799416/。
我们可以使用命令验证它:
$readlink ~/.mozilla/firefox/htoypxlg.default-1563118799416 /run/user/1000/sk-firefox-htoypxlg.default-1563118799416
因此,Firefox浏览器的配置文件已加载到TMPF(即内存)中。
重新启动系统时,配置文件将同步到物理磁盘,然后再次登录时复制回内存。
建议阅读:
- 如何在Linux中挂载内存中的临时分区
- 如何在Linux中使用log2ram在内存中编写日志文件
- 如何改进Linux中的应用启动时间
更改同步间隔
默认情况下,Profile-sync-emon每一个小时运行一次。
但是,我们可以通过为PSD设置Cron作业来根据愿望进行更改。
$crontab -e
设置要运行PSD的时间:
*/15 * * * * /usr/bin/profile-sync-daemon sync &> /dev/null
上面的工作将在每个星期一小时(即每15分钟)运行PSD。
有关详细信息,请参阅我们的Cron作业手册。
清理恢复快照
要删除所有恢复快照,请运行:
$psd c
如果我们不再需要快照,请执行此操作。