Tramp / Dired transfiere archivos en línea a través de ssh en lugar de usar scp externamente

Pregunta:

Estoy usando tramp a través de ssh para acceder a archivos remotos. Para los archivos de texto, esto está funcionando muy bien, pero siempre que quiero copiar archivos remotos más grandes a mi máquina local, tramp usa su método lento en línea (codificando el archivo con gzip). Esto es mucho más lento que usar un método externo como, por ejemplo, scp. ¿Cómo hago para que emacs use scp al transferir archivos grandes?

Información relevante:

  • Utilizo un archivo ~ / .ssh / config para acceder a la máquina remota. El alias de esa máquina es hehi09 a continuación. El acceso es sin contraseña

  • Mensajes en el búfer de mensajes al transferir:

     Copying /ssh:hehi09:/home/christian/big_file.dat to /home/christian/big_file.dat'... Tramp: Inserting `/ssh:hehi09:/home/christian/big_file.dat'... Tramp: Encoding remote file `/ssh:hehi09:/home/christian/big_file.dat' with `(gzip <%s | base64)'...
  • Valores de:

    • El valor de tramp-copy-size-limit es 10240 (mucho más pequeño que el tamaño de archivo probado)

    • el valor de tramp-default-method es "scp"

  • $ scp hehi09:/home/christian/big_file.dat ~/ funciona como se esperaba desde la línea de comando y es mucho más rápido que la transferencia en emacs

¿Alguna idea de por qué emacs no usa scp para copiar archivos grandes? ¡Cualquier ayuda es muy apreciada!

Respuesta:

Cuando dice "Estoy usando tramp a través de ssh", supongo que abre un archivo como /ssh:host:/path/to/file . Se supone que esto usa siempre el método ssh. Si desea utilizar el método scp, debe utilizar /scp:host:/path/to/file . Esto usa automáticamente ssh para archivos cortos y scp para archivos grandes. Si confía en el método predeterminado establecido en tramp-default-method , puede usar el /host:/path/to/file más corto.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım