2

リモート クラスター (Linux OS) に C++ コードの大規模なリポジトリがあります。自宅のコンピューター (Ubuntu OS) からこのコードに取り組む必要がある場合、X ウィンドウの emacs を介してこれらのコードにアクセスしようとします。ただし、X ウィンドウ接続は非常に遅いため、編集は面倒です。そのため、ファイルを編集するためにローカル ドライブとリモート クラスタの間でファイルを手動で移動することがあります。私の質問は次のとおりです。ローカル空間でファイルを編集すると、コンパイルできるクラスターに自動的にバックアップされるように、ローカルの emacs を構成する方法はありますか?

更新:1

TRAMP をインストールしたところ、直接接続できるサーバーで問題なく動作しました。ただし、VPN を有効にした場合にのみ接続できるサーバーもあります。このサーバーに接続するために VPN 情報を TRAMP に提供するにはどうすればよいですか?

私が抱えていたもう1つの質問は、リモートシェルからのプロンプトを待っているときに、emacsバッファー全体を強制終了することなくTRAMPを停止する方法でした。

4

2 に答える 2

3

これは通常、TRAMPが役立つユースケースです。

SSH を使用してサーバーに接続し、そこで X 転送を使用して Emacs を開く代わりに、ボックスで Emacs を実行し、TRAMP を使用してリモートでファイルを開きます。例えば:

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

このように、Emacs プロセスはローカルで実行されますが、すべてのファイル操作 (保存、元に戻すなど) はサーバーに転送され、TRAMP バッファーから発行されたすべてのシェル コマンドもリモート サーバーで実行されます (これには が含まれますM-x compile) 。


更新:1

TRAMP がリモート シェル プロンプトを待機してハングする場合 (これは、まだよくわからない理由で頻繁に発生する傾向があります)、通常、基になるsshプロセスを強制終了します (htopツリーのようなビューを使用すると、これを行うのに適したツールになります)。TRAMP はこれに気づき、強制終了されたプロセスを自動的に再生成して操作を再開します。

于 2012-11-23T16:30:12.323 に答える