标题和菜单栏仅在 Ubuntu 14.04 中使用 sudo 时有效

标题和菜单栏仅在 Ubuntu 14.04 中使用 sudo 时有效

我遇到了一个奇怪的问题。让我解释一下:

  • 如果我使用命令行启动 Leafpad 实例leafpad(作为示例),它会显示如下:
    没有 sudo 行为的 leafpad
  • 相反,如果我执行命令,sudo leafpad窗口会显示菜单和标题装饰(这是预期的行为,或者是我希望它显示的内容):
    具有 sudo 行为的 leafpad

我最终希望 Ubuntu Unity 始终显示菜单标题和菜单栏。我发现,奇怪的是,它仅在使用 发出程序时才有效sudo

有没有办法让它始终适用于所有应用程序?这种行为很奇怪,但我认为它最终解决了 Firefox 不允许您右键单击的问题:

  • 如果没有sudo,Firefox 会显示像鹦鹉螺一样的蹩脚菜单/标题:
  • sudo firefox你可以右键点击书签,就像我现在做的那样

我们终于可以了解 Unity 中是如何工作的了吗?我已经使用 Ubuntu 大约 5 年或更长时间了。我学到了很多有关这个操作系统的技巧,但这个问题仍然让我苦不堪言。

编辑:我了解到,如果我从其他用户(甚至是 root)执行 Firefox,则窗口装饰不会显示,因此 Firefox 的上下文菜单又回来了!(右键单击问题已解决)。但是,这给 Firefox 带来了其他问题 Ubuntu 中的 Firefox 再次使用上下文菜单的屏幕截图!: Firefox 中的上下文菜单

要复制此操作:

xhost +local:
su - anotheruser
firefox

问题仍然没有解决,因为虽然我可以在 Firefox 或任何其他应用程序中显示菜单和标题,但由于以不同的用户执行操作,它会产生额外的权限问题。

答案1

好吧,我终于解决了。我注意到大多数应用程序的菜单栏项都没有上下文菜单(右键单击菜单选项不会执行任何操作),相反,Firefox 允许您右键单击书签并在新选项卡中打开它。

所以我专门为 Firefox 创建了一个脚本,它将您的用户更改为另一个代理用户,然后以该用户的身份执行 Firefox。我需要添加一个命令行来为该用户设置进入 X 的权限。

执行 Firefox 的脚本是:

xhost +local:
su - anotheruser
firefox

这样,它会提示您输入密码,然后它会使用该代理用户执行 Firefox。

这使得 Firefox 允许您右键单击书签,从而使它再次变得出色!

编辑:似乎我的 Firefox 不知怎么坏了(不是配置文件,而是 Firefox)在另一个位置安装另一个 Firefox,即使是同一个版本,也解决了我缺少菜单的问题)

Icecat 也运行正常

其他版本的 Firefox(即较旧、较新)也可以正常工作。只是我的 Firefox 不知怎么坏了。

相关内容