A partir de Emacs 24.3, un análogo de la multi:sintaxis antigua se ha superpuesto al tramp-default-proxies-alistenfoque moderno , lo que significa que puede volver a realizar saltos múltiples sin ninguna configuración previa. Para obtener más detalles, consulte:
C-hig (tramp) Ad-hoc multi-hops RET
Con la nueva sintaxis, cada 'salto' está separado por |. El ejemplo del manual es:
C-xC-f /ssh:bird@bastion|ssh:you@remotehost:/path RET
Que se conecta en primer lugar como bird@bastion, y de ahí ayou@remotehost:/path
/ su: o / sudo: en hosts remotos
También puede usar esta sintaxis para sudo / su a root (o por supuesto a cualquier otro usuario) en un host remoto:
C-xC-f /ssh:you@remotehost|sudo:remotehost:/path/to/file RET
Importante : asegúrese de especificar el nombre de host explícitamente: en sudo:remotehost:lugar de sudo::(ver más abajo).
Como esto todavía usa el mecanismo de proxy debajo, tramp-default-proxies-alistahora debería incluir el valor("remotehost" "root" "/ssh:you@remotehost:")
Lo que significa que el proxy /ssh:you@remotehost:se utilizará siempre que solicite un archivo como root@remotehost.
root es el usuario predeterminado para estos métodos, pero, por supuesto, también puede cambiar a un usuario no root con:
C-xC-f /ssh:you@remotehost|sudo:them@remotehost:/path/to/file RET
Siempre especifique explícitamente el nombre de host remoto
Probablemente esté acostumbrado a usar sudo::u su::omitir el nombre de host. Si se queda en el host local, esto todavía está bien, pero si está saltando a un servidor remoto, debe especificar el nombre de host para cada salto, incluso si es el mismo que para el salto anterior. Utilice siempre sudo:hostname:o su:hostname:con hosts remotos.
La trampa es que sudo:: qué aparecen realmente a trabajar - sin embargo cuando se hace eso el anfitrión de la entrada dinámica de proxy será el nombre de host que originó a partir de en vez de que el anfitrión conectado. Esto no solo parecerá confuso (ya que se mostrará el host incorrecto en las rutas de archivo), sino que también significará que cualquier intento posterior de usarlo sudo::en su host local se enviará al servidor remoto. (y presumiblemente el proxy también se vería afectado si hiciera lo mismo en un segundo servidor, lo que provocaría más problemas).
En resumen, ¡no lo use ::cuando tenga varios saltos!