我必须跑着sudo firefox
才能打开我的 Firefox 浏览器。如果我尝试正常打开它,它不起作用。
当我不使用时sudo
,错误消息是:
无法加载您的 Firefox 配置文件,它可能丢失或无法访问。
命令本身的输出是Permission denied
。这是 Firefox 50.1.0 的问题。如何修复?
答案1
虽然(重新)拥有主目录中所有内容的所有权,您无法启动 Firefox 的具体原因是您的 Firefox 配置文件无法访问当您没有运行时firefox
。sudo
因此,我建议重新取得包含您的 Firefox 配置文件和其他用户特定的 Firefox 数据(如您的 Firefox 扩展)的文件夹的所有权:
sudo chown -R $USER:$USER ~/.mozilla
如果您完全按照书写的方式输入,那么此操作将有效。或者,如果您愿意,您可以$USER
用您的用户名替换。如果您这样做,请确保您不是保持$
。
(您也可以使用$(whoami):$(whoami)
代替$USER:$USER
,例如LD James 的回答, 如果你想。)
确保执行该命令时 Firefox 没有运行。
然后打开 Firefox。它现在应该可以运行了。
您的问题很可能是由于sudo
首先运行 Firefox 造成的。对于 Firefox 之类的程序,您应该不是以 root 身份运行它 —— 在任何情况下这样做都没有用。
但一般来说,如果你发现必须以 root 身份运行图形应用程序,你几乎不应该使用sudo
平原因为它会导致应用程序创建的任何配置文件都归 root 用户所有但仍然会在你的主目录中创建,而不是在 root 的目录中。
相反,当你遇到必须以 root 身份运行图形程序的情况时,你可以使用gksu
、gksudo
、kdesudo
(在 Kubuntu 上)、sudo -H
或。不过,我强调,以 root 身份运行程序sudo -i
用于系统管理。您可能决定以 root 身份运行文本编辑器来编辑系统的配置文件,但您永远不需要、也永远不应该以 root 身份运行 Web 浏览器或文字处理器之类的程序。
答案2
您的主目录中有一些您无权访问的配置文件。
sudo
这是使用您的个人空间 运行程序的结果。须藤仅当您有意对系统进行系统范围的更改时才应运行。
您可以使用以下方法验证:
(我不建议使用须藤在您的个人空间中。您可以找到不属于您帐户的文件和文件夹没有提升访问权限。如果没有输出,则无需运行须藤。有些用户可能甚至没有须藤访问,并且只需测试一下就会收到警告并通知管理员。)
$ find ~/ -mount ! -user $(whoami)
您可以使用以下方法纠正此问题:
$ sudo chown -R $(whoami):$(whoami) ~/
笔记:
在这种情况下,你遇到的问题是你的火狐应用程序。您之所以注意到这一点,是因为您发现由于这个问题,您正在失去一些功能。接管您空间中的所有个人文件可能会纠正您遇到但尚未发现的其他问题。
通常情况下,将权限不属于您本人的文件放在主文件夹之外的空间中。将这些文件放在/opt
或/usr/local/bin
中以供执行。将文件放在您的主文件夹之外的空间不太可能会破坏您的系统。家文件夹中的文件。某些组件可能会因为您没有拥有其中的文件而损坏家空间。
跑步须藤是许多问题的罪魁祸首,应小心运行。