如何让Sublime Text 3以Unity身份运行?

我知道我不是root用户,因为我无法浏览包。 首先,我知道这个页面,但它不适合我。 按照这些说明后,当我从Unity打开Sublime时,我收到提示,但我仍然无法浏览包。 如果我在终端中使用gksu subl打开sublime,则没有任何反应。 如果我做sudo subl它打开,我可以浏览包。 是否可以每次打开sublime作为sudo而不是gksu?

编辑:实际上,当我从Unity打开sublime时,会提示输入密码,然后根本不打开。

编辑: gksudo subl与gksu具有相同的效果。 我从网站上安装了Sublime(点击了Ubuntu 64链接,它下载了,点击了下载,它把我带到了软件中心)。 “which subl”返回/usr/bin/subl 。 gksu已安装。 Glutanimate,是的,这就是我的意思。 知道发生了什么吗? 如果我使用sudo,我只能浏览它们。

/usr/share/applications/sublime-text.desktop

 [Desktop Entry] Version=1.0 Type=Application Name=Sublime Text GenericName=Text Editor Comment=Sophisticated text editor for code, markup and prose Exec=gksu /opt/sublime_text/sublime_text %F Terminal=false MimeType=text/plain; Icon=sublime-text Categories=TextEditor;Development; StartupNotify=true Actions=Window;Document; [Desktop Action Window] Name=New Window Exec=/opt/sublime_text/sublime_text -n OnlyShowIn=Unity; [Desktop Action Document] Name=New File Exec=/opt/sublime_text/sublime_text --command new_file OnlyShowIn=Unity; 

gksu / gksudo不起作用或不可用时,您可以使用sudo -H代替。

如果你使用sudo而不是gksu / gksudo运行图形程序,你应该使用sudo -H ... (或sudo -i ... )而不仅仅是sudo ...

 sudo -H subl 
 sudo -i subl 

(简单的sudo ...或者那些方式通常都不会在Unity破折号上运行,因为他们需要一个终端来提示你输入密码。但你可以从终端运行它们。)

使用普通sudo运行图形程序被认为是不好的主要原因是,它运行应用程序,其HOME环境变量设置为非root调用者的主目录( /home/ username ),而不是root的主目录( /root )。 这通常会导致应该属于常规用户的配置文件属于root (而且不可访问)。

使用-H标志运行sudo可以通过确保使用root的主目录来防止这种情况。

sudo -i执行此操作以及更多:它在模拟的根登录会话中运行程序。 当目标只是以root身份运行图形程序而没有问题时,我不知道有任何强烈的理由偏爱sudo -Hsudo -i一个或另一个。