如何在 firejail 中永久打开浏览器?

如何在 firejail 中永久打开浏览器?

/usr/share/applications/firefox.desktop以前曾编辑过firejail在运行时使用的功能firefox,但它似乎在更新期间被删除了。

如何才能永久打开 Firefox 中的浏览器,而无需在 .desktop 文件更新时进行更新?

.desktop文件~/.local/share/applications

这些文件仍然存在,与我几个月前创建时没有任何变化。系统只是出于某种原因没有选择它们,而是似乎优先处理已保存的文件/usr/share/applications

其中部分内容因无关内容(语言规范等)而被删除。

firefox.desktop

[Desktop Entry]
Version=1.0
Name=Firefox Web Browser
Keywords=Internet;WWW;Browser;Web;Explorer
Exec=firejail firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true
Actions=new-window;new-private-window;

[Desktop Action new-window]
Name=Open a New Window
Name[ar]=افتح نافذة جديدة
Exec=firefox -new-window

[Desktop Action new-private-window]
Name=Open a New Private Window
Exec=firefox -private-window

brave-browser.desktop

[Desktop Entry]
Version=1.0
Name=Brave Web Browser
GenericName=Web Browser
# Gnome and KDE 3 uses Comment.
Comment=Access the Internet
Exec=firejail /usr/bin/brave-browser-stable %U
StartupNotify=true
Terminal=false
Icon=brave-browser
Type=Application
Categories=Network;WebBrowser;
MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/ftp;x-scheme-handler/http;x-scheme-handler/https;
Actions=new-window;new-private-window;

[Desktop Action new-window]
Name=New Window
Exec=/usr/bin/brave-browser-stable

[Desktop Action new-private-window]
Name=New Incognito Window
Exec=/usr/bin/brave-browser-stable --incognito

.desktop文件/usr/share/applications

它们与 中的完全相同~/.local/share/applications

我只是在每个文件中的命令firejail前面添加了这些命令。在终端中手动执行时,这些命令可以正常工作。Exec.desktop

进一步的调试信息

我认为这种情况可能是在我从 Ubuntu 20.04.1 LTS 更新到 Ubuntu 20.04.2 LTS 后开始发生的。但我不确定。

除了用 更新系统软件包外,我没有做任何更改apt。我不知道是什么原因导致了这个问题。

我知道它什么时候工作,因为当它工作时,我只能~/Downloads在浏览器中上传文件时访问该文件夹。如果我从命令行运行它,我将获得来自 firejail 的输出。

答案1

如果我理解正确的话,每次打开网页时,您都希望在 Firejail 沙盒环境中打开 Firefox(无论通过哪种方式)。如何实现这一点将取决于您启动 Firefox 的方法:

  1. 命令行
  2. dash 中的启动器
  3. 桌面上的启动器

~/.bashrc对于上述方法 1,您可以在您的(假设您使用 bash)中设置一个别名

alias firefox='firejail firefox'

对于上述方法 2,您在问题中发布的选项应该有效。我建议您重复此操作,如果/usr/share/applications/firefox.desktop您执行的更改被恢复,请检查更改的日期。然后与less /var/log/apt/history.log可能导致更改的更新进行比较(来源:12)您可以在当前状态下实际尝试此操作。

您也可以按照您在回答中提到的方式创建自己的.desktop。然后将其拖到仪表板上(我不确定您是否这样做了)。与上述相同,我建议您重复该操作,并在每次停止工作时检查可能的原因。


编辑

此外,我建议您发布以下详细信息:

  1. 您用来验证“它何时工作”和“何时不工作”的命令,以及显示它的输出。最好逐字复制这些内容(而不是“解释”您做了什么)。
  2. 您的文件的位置和完整内容.desktop、您更改它们之后以及系统更改它们之后。

您没有指定:

  1. 在您的问题中,您执行了什么操作来恢复更改/usr/share/applications/firefox.desktop。“更新”这个词很宽泛...您是否更新了 Firefox 或其他应用程序?
  2. 在您的回答中,您执行了什么操作导致您的程序~/.local/share/applications/firefox.desktop无法运行。“似乎长期无法运行”这句话再次显得含糊不清。另外,您的.desktop文件是否仍在那里,并且其内容与运行前相同,但现在只是无法运行?还是它以某种方式被修改了?

获得您的反馈将会很有帮助。

有关的

  1. 如何更改启动器命令?

答案2

看来您可以将.desktop文件从其原始位置复制到其中~/.local/share/applications,然后它会使用该位置。在更新期间,您的更改不会被覆盖。

更新:从长远来看,这种方法似乎不起作用。

答案3

据我所知,您不需要做任何事情,因为:

$ which firefox
/usr/local/bin/firefox
$ ls -l /usr/local/bin/firefox 
/usr/local/bin/firefox -> /usr/bin/firejail

相关内容