【问题标题】:org-mode remote R not working with org 8.0.7org-mode remote R 不适用于 org 8.0.7
【发布时间】:2013-08-27 15:52:22
【问题描述】:

我有一个带有 R 源代码块的 org 文件。现在我想在我的服务器上远程执行一些或实际上全部。我按照 org 手册中的设置并使用 =dir:= 如下例所示(出于明显的原因,我没有显示我的用户名或服务器名称;但是我可以在没有密码的情况下连接,所以 ssh 设置是可以的) :

#+BEGIN_SRC R :dir /xxx@xxx: :exports both
  system("hostname")
#+END_SRC

当我用 C-c C-c 评估这个时,我得到以下信息:

executing R code block...
Tramp: Encoding region using function `base64-encode-region'...done
Tramp: Decoding region into remote file /ssh:xxx@xxx:/var/folders/2m/4d7t6kwx0tn2p6blmf3l7_kh0000gn/T/R-30000dMv...done
byte-code: Couldn't write region to `/ssh:xxx@xxx:/var/folders/2m/4d7t6kwx0tn2p6blmf3l7_kh0000gn/T/R-30000dMv', decode using `base64 -d -i >%s' failed

显然远程文件夹有问题,因为在我的服务器上我没有写入 /var 的权限,或者实际上 /var/folders 不存在,它只存在于我的 Mac 本地。

我在尝试使用 sh 时收到类似的错误消息:

#+BEGIN_SRC sh :dir /xxx@xxx: :export both
hostname
#+END_SRC

有人对此有解决方案吗?还是在远程机器上执行 R 代码的替代方法?

我的 Emacs 版本是 24.3,org 8.0.7

提前感谢您的任何回复!

更新:

我发现以下帖子emacs org-mode mailing list 似乎与我的问题有关。如果远程执行代码,确实 org 似乎使用了错误的文件名。我不知道如何解决这个问题,或者我是否可以自己找到解决方案...

更新:

另一种远程执行 R 代码的方法如下:

使用“M-x ssh”启动远程 ssh 连接,连接到您的服务器,在那里启动 R 并在远程缓冲区中调用“M-x ess-remote”。现在,当将远程 R 缓冲区的名称指定为“会话”时,它将远程执行代码:

#+BEGIN_SRC R :exports both :results output :session *ssh xxx*
  system( "hostname" )
#+END_SRC

这将返回服务器的主机名(注意,上面的“xxx”将是您的服务器名)。 重要 ":results value" 将导致与临时文件相同的问题,现在似乎只有 ":results output" 有效。

更新及解决方案:

所以:results output 是要走的路。这也适用于:dir 远程代码执行。

【问题讨论】:

    标签: r emacs remote-access org-mode


    【解决方案1】:

    我会先测试 Tramp 是否适用于你的 Emacs。

    【讨论】:

    • 你是对的。我应该这样做的。好吧,现在我尝试使用 tramp 在服务器上打开一个文件。文件内容也很好地显示在 Emacs 中,但 Emacs 在那之后挂起。所以我必须弄清楚发生了什么......我已经尝试了link中的所有东西,但没有成功。我正在尝试从我的 Mac (10.8.4 Mountain Lion) 连接到运行 CentOS 6 的服务器。
    • 它似乎与 Mac 相关......我已经测试过它可以从一个 unix 连接到一个 unix 并且它在那里工作。
    • 更新:欧洲央行是罪魁祸首。我找到了解决方案:link。现在我可以使用 tramp 在我的 Emacs 中打开文件。所以tramp肯定可以工作,但我仍然无法从org模式远程执行代码。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多