是否有可能在远程服务器(Linux RedHat 4.4.7-17)上更改我的默认浏览器(lynx)? (用牛P绘制在朱莉娅身上)

我正在使用julia和gadfly在远程服务器(通过Putty连接)上绘制一些图,并且图应该在我的默认服务器中打开。 他们在l open中开放,所以看起来不像是真的。 我假设l is是我的工作服务器上的默认浏览器,我想知道是否有任何方式来打开他们在铬或Firefox? 我不是服务器pipe理员,并没有权限使用所有命令(即sudo等)。

当试图使用xdg-utils时,我收到一个错误,提示“找不到命令”,我的/usr/.local/applications中没有任何应用程序,也不能在目录中findmimeapps.list。

有什么我可以做,以打开这些情节在另一个互联网浏览器,而不是l?? 谢谢!

偏好的顺序

如果可以的话,牛痘在Julia的显示器上绘制(例如,如果您使用的是Jupyter上的交互式图形笔记本)。

如果没有合适的方法在REPLDisplay上进行渲染,Gadfly会将这个图保存到一个文件中,然后触发一些特定于平台的“打开这个文件”逻辑。

朱莉娅自己的展示

这几乎肯定是最好的选择。 如果你在知道如何显示你的情节的环境中运行你的茱莉亚代码(例如Jupyter的交互式图形笔记本),那么没有什么可做的了。

如果您必须从文本提示中运行Julia代码,则可以使用基于文本的后端渲染器,或者处理后备进程。

XDG开

Gadfly的回退显示代码使用xdg-open在基于Linux的系统上显示绘图文件。

xdg-open工具是名为xdg-utils的软件包的一部分。 xdg-utils软件包包含几个命令,但是xdg-utils本身不是一个命令 – 这就是为什么试图运行“xdg-utils”失败的原因是“未找到命令”。

xdg-open有自己的开放链:它将尝试特定于GNOME,KDE或任何你使用的桌面环境的开放程序。 它回退到“perl-shared-mimeinfo”。

xdg-utils包中的另一个工具是xdg-mime ,它可以查询当前文件关联以及更改它们。 您需要管理员权限来更改系统范围的关联,但您不需要任何特殊的权限来添加您自己的每个用户关联。

由于Gadfly正在写入一个文件,然后要求xdg-open打开文件,您需要处理文件类型(而不是“浏览器”或URL处理程序)。 对于HTML文件,它可能看起来像这样:

 $ xdg-mime default mybrowser.desktop text/html 

哪台电脑运行浏览器?

现在,您提到您正在使用SSH和PuTTY连接到此服务器。 PuTTY为您的服务器提供基于文本的界面,即使服务器上安装了Firefox等图形浏览器,PuTTY也无法显示它。 (您的计算机上还需要其他服务器可用来绘制浏览器窗口的其他内容。)

使用电脑自己的浏览器可能会更舒服。

那我该怎么办?

无论如何,启动浏览器对于服务器计算机来说有点奇怪,而实现这一点可能会很麻烦。 所以我的建议是:

  • 跳过PuTTY,直接在Jupyter笔记本中显示。
  • 将输出保存为HTML(或SVGJS),以便计算机的浏览器可以访问它。