Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在服务器上自动备份emacs文件编辑 我在远程集群(Linux OS)上有一个大型C++代码库。当我需要从我的家用电脑(Ubuntu OS)上处理这些代码时,我会尝试通过X windows上的emacs访问这些代码。然而,X窗口连接非常慢,使得编辑过程非常痛苦。因此,有时我会在本地驱动器和远程群集之间手动移动文件以编辑文件。我的问题是:有没有办法配置本地emacs,这样当我在本地空间编辑文件时,它会自动备份到集群中,然后在集群中进行编译_Emacs_Backup_Cluster Computing - Fatal编程技术网

在服务器上自动备份emacs文件编辑 我在远程集群(Linux OS)上有一个大型C++代码库。当我需要从我的家用电脑(Ubuntu OS)上处理这些代码时,我会尝试通过X windows上的emacs访问这些代码。然而,X窗口连接非常慢,使得编辑过程非常痛苦。因此,有时我会在本地驱动器和远程群集之间手动移动文件以编辑文件。我的问题是:有没有办法配置本地emacs,这样当我在本地空间编辑文件时,它会自动备份到集群中,然后在集群中进行编译

在服务器上自动备份emacs文件编辑 我在远程集群(Linux OS)上有一个大型C++代码库。当我需要从我的家用电脑(Ubuntu OS)上处理这些代码时,我会尝试通过X windows上的emacs访问这些代码。然而,X窗口连接非常慢,使得编辑过程非常痛苦。因此,有时我会在本地驱动器和远程群集之间手动移动文件以编辑文件。我的问题是:有没有办法配置本地emacs,这样当我在本地空间编辑文件时,它会自动备份到集群中,然后在集群中进行编译,emacs,backup,cluster-computing,Emacs,Backup,Cluster Computing,更新:1 我安装了TRAMP,它适用于可以直接连接的服务器。但是,我也有服务器,只有在激活VPN时才能连接。如何向TRAMP提供VPN信息以连接到此服务器 我遇到的另一个问题是,当TRAMP等待来自远程shell的提示时,如何停止它,而不必杀死整个emacs缓冲区。这通常是一个有用的用例 不要使用SSH连接到服务器并使用X forwarding打开那里的Emacs,而是在您的机器上运行Emacs并使用TRAMP远程打开您的文件。例如: C-xC-f/ssh:user@host:/remote/p

更新:1

我安装了TRAMP,它适用于可以直接连接的服务器。但是,我也有服务器,只有在激活VPN时才能连接。如何向TRAMP提供VPN信息以连接到此服务器


我遇到的另一个问题是,当TRAMP等待来自远程shell的提示时,如何停止它,而不必杀死整个emacs缓冲区。

这通常是一个有用的用例

不要使用SSH连接到服务器并使用X forwarding打开那里的Emacs,而是在您的机器上运行Emacs并使用TRAMP远程打开您的文件。例如:

C-xC-f
/ssh:user@host:/remote/path/to/the/file
RET

这样,您的Emacs进程在本地运行,但所有文件操作(例如保存、还原等)都会转发到服务器,从TRAMP缓冲区发出的所有shell命令也会在远程服务器上运行(这包括
M-x compile


更新:1


当TRAMP挂起等待远程shell提示时(由于我还不清楚的原因,这种情况经常发生),我通常会终止底层的
ssh
进程(
htop
,使用树状视图是一个很好的工具)。TRAMP注意到这一点,并自动重新启动被终止的进程以恢复操作。

在远程服务器上的控制台中运行Emacs不是更容易吗?所有Emacs功能都可以通过键盘访问,一旦你习惯了按键组合,它通常会运行得更快

这样,您将比转发X会话更快地运行—在控制台中运行是Emacs的设计初衷

另外一个好处是,如果你习惯了使用Gnu屏幕,你可以在连接中断时完全恢复会话。事实上,使用screen,您可以在一天结束时关闭笔记本电脑—第二天通过SSH登录,然后像前一天一样拿起所有“屏幕”。这将包括任何打开的编辑器、调试会话等


Gnu screen在Debian和大多数Linux发行版上都可以作为软件包提供。

谢谢。我今晚或明天试试这个。如果这符合我的目的,我将接受你的回答我不确定我是否理解你关于VPN连接的问题:为什么像TRAMP这样的客户需要知道数据包是通过VPN路由的?我倾向于认为,一旦VPN配置正确,所有到相关主机的传出连接都将自动路由到正确的接口,而客户端不必指定任何内容。。。或者您可以解释一下,您必须在命令行中运行哪些命令才能将ssh连接到仅VPN服务器?至于您的第二个问题,我编辑了我的答案。您说您“安装”了Tramp。。。它不是包含在Emacs中吗?至少是v22吗?@tripleee我不确定它是否包含在Emacs中。我自己安装的。我不是VPN的专家,所以我担心在这个问题上我帮不了你多少忙。你可以问另一个关于这个问题的问题。