![登录不同的桌面环境(ubuntu 和 i3)时,Google Chrome 会丢失所有 cookie](https://linux22.com/image/1024942/%E7%99%BB%E5%BD%95%E4%B8%8D%E5%90%8C%E7%9A%84%E6%A1%8C%E9%9D%A2%E7%8E%AF%E5%A2%83%EF%BC%88ubuntu%20%E5%92%8C%20i3%EF%BC%89%E6%97%B6%EF%BC%8CGoogle%20Chrome%20%E4%BC%9A%E4%B8%A2%E5%A4%B1%E6%89%80%E6%9C%89%20cookie.png)
看到标题,我在两种情况下都使用相同的应用程序和相同的帐户,但每次都必须重新登录,这不是预期的行为。如果我离开 i3,进入 Ubuntu 桌面并返回 i3,我会丢失 i3 中保存的所有 cookie。
Ubuntu 版本:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.3 LTS
Release: 20.04
Codename: focal
Google Chrome 版本Google Chrome 95.0.4638.69
。
i3 版本:i3 version 4.18.2 (2020-07-26) © 2009 Michael Stapelberg and contributors
答案1
我在从 KDE 切换到 Cinnamon 时遇到了类似的问题,但很惊讶地发现互联网上几乎没有答案。该问题似乎与依赖不同密码存储的桌面环境有关。就我而言,我可以通过运行以下命令在 Cinnamon 中加载已登录的 chrome:
google-chrome --password-store=kwallet5
因为我的登录是在 KDE 内进行的。(这没什么意义,可能是一个错误,因为 kwallet 管理器显示没有存储 Chrome 密钥,而 Chrome 似乎正在使用其内部密码存储,而不是我的 DE。)
对于 i3,我发现了以下有用的评论。
尝试添加
exec --no-startup-id /usr/bin/gnome-keyring-daemon --start --components=secrets
到您的 i3 配置中。Chrome 应以 开始--password-store=gnome
,否则它会根据 DE 自动检测要使用的密码存储。在 i3 中,它默认为纯文本。
看来 Chrome 并没有尝试变得足够聪明。它不会尝试寻找可能正在使用的不同密钥环,而只是根据它所在的 DE 进行猜测。
答案2
我正在运行 Ubuntu 22.04,我可以报告 --password-store=gnome 的解决方案至少对我来说不再有效。我正在使用 --password-store=gnome-libsecret。
如果您想继续使用 i3 dmenu,您可以在 $PATH 内的文件夹(例如 $HOME/.local/bin/)中添加一个名为chrome
如下的自定义脚本:
#!/bin/bash
google-chrome --password-store=gnome-libsecret
如果您在 dmenu 中没有看到新条目,chrome
请尝试删除缓存$HOME/.cache/dmenu_run
。