Nir*_*hor 4 configuration permissions firefox sudo mozilla
我必须运行sudo firefox
才能打开我的 Firefox 浏览器。如果我尝试正常打开它,则它不起作用。
当我不使用时sudo
,错误消息是:
无法加载您的 Firefox 配置文件,它可能丢失或无法访问。
命令本身的输出是Permission denied
. 这是 Firefox 50.1.0。如何解决?
您的主目录中有您无权访问的配置文件。
这是sudo
使用您的个人空间运行程序的结果。 仅当您有意在系统上进行系统范围的更改时,才应运行Sudo。
您可以通过以下方式验证:(
我不鼓励在您的个人空间中使用sudo。您可以在没有提升访问权限的情况下找到不属于您帐户的文件和文件夹。如果没有输出,则无需运行sudo。有些用户甚至可能没有sudo访问权限,并且仅通过测试就会向管理员发出警告和通知。)
$ find ~/ -mount ! -user $(whoami)
Run Code Online (Sandbox Code Playgroud)
您可以使用以下方法纠正此问题:
$ sudo chown -R $(whoami):$(whoami) ~/
Run Code Online (Sandbox Code Playgroud)
注意:
在这种情况下,您遇到的问题是您的Firefox应用程序。你注意到它是因为你发现你因为这个问题而失去了功能。拥有您空间中所有个人文件的所有权可能会纠正您遇到但尚未确定的其他问题。
习惯上将您的主文件夹之外的空间用于具有您自己所有权之外的权限的文件。放置这些文件的传统位置是/opt
,或/usr/local/bin
用于执行。您不太可能通过在您的主文件夹中拥有您的文件来破坏您的系统。很可能某些组件可能因您在家庭空间中不拥有文件而损坏。
运行sudo是许多问题的罪魁祸首,应该小心运行。
虽然它可能是罚款(重新)在你的home目录的一切取得所有权,具体的原因,你无法启动Firefox是你的Firefox配置文件无法访问,当你没跑firefox
带sudo
。因此,我建议夺回的只是所有权包含您的 Firefox 配置文件和其他特定于用户的 Firefox 数据(例如您的 Firefox 扩展程序)的文件夹:
sudo chown -R $USER:$USER ~/.mozilla
Run Code Online (Sandbox Code Playgroud)
如果您完全按照所写的方式输入它,这将起作用。或者,如果您愿意,可以替换$USER
为您的用户名。如果你这样做,你一定要做不保留$
。
(如果需要,您也可以使用$(whoami):$(whoami)
代替$USER:$USER
,如LD James 的回答。)
执行该命令时,请确保 Firefox 未运行。
然后打开火狐。现在应该可以运行了。
您的问题很可能首先是由运行 Firefox 引起的sudo
。在如Firefox程序的情况下,你应该没有root权限运行它-有没有真正的任何情况下这将是这样做有用的。
但是,一般而言,如果您发现必须以 root 用户身份运行图形应用程序,则几乎不应该sudo
为此使用 plain,因为它会导致应用程序创建的任何配置文件归 root 用户所有,但仍会在您的主目录中创建而不是 root 的.
相反,您可以使用gksu
, gksudo
, kdesudo
(在 Kubuntu 上), sudo -H
, 或者sudo -i
当您遇到必须以 root 身份运行图形程序的情况时。但是,我强调以 root 身份运行程序是为了系统管理。您可能决定以 root 身份运行文本编辑器来编辑系统的配置文件,但您永远不需要也不应该以 root 身份运行 Web 浏览器或文字处理器等程序。
归档时间: |
|
查看次数: |
13794 次 |
最近记录: |