¿Qué hago para una conexión de VS Code desconectada automáticamente si no se realiza ninguna operación durante mucho tiempo?
Síntoma
Después de establecer una conexión de SSH a través del VS Code, no se realiza ninguna operación durante mucho tiempo y la ventana se mantiene abierta. Cuando se utiliza de nuevo la conexión, se encuentra que la conexión está desconectada y no se muestra ningún mensaje de error.
De acuerdo con los logs de VS Code Remote-SSH, la conexión se desconectó aproximadamente dos horas después de la configuración.
Causa posible
Después de que la interacción de SSH se detenga durante un período de tiempo, el servidor de seguridad desconecta las conexiones inactivas (http://bluebiu.com/blog/linux-ssh-session-alive.html). La configuración de SSH predeterminada no conduce a una desconexión proactiva tras el tiempo de espera. Dado que la instancia se ejecuta de forma estable en el backend, configure la conexión de nuevo para resolver este problema.
Solución
Para conservar las conexiones si no se realiza ninguna operación durante mucho tiempo, configure el envío periódico de mensajes con SSH. De esta manera, la conexión no quedará inactiva en el firewall.
- Configure el cliente según sea necesario. Si el cliente no está configurado, no se enviará ningún paquete de latidos al servidor de forma predeterminada.
Figura 1 Abrir el archivo de configuración de SSH de VS CodeFigura 2 Adición de configuraciones
La configuración es la siguiente:
Host ModelArts-xx ... ServerAliveInterval 3600 # Add this configuration in the unit of second, indicating that the client will actively send a heartbeat packet to the server every hour. ServerAliveCountMax 3 # Add this configuration, indicating that if the server does not respond after the heartbeat packet is sent for three times, the connection will be disconnected.
Por ejemplo, si el firewall está configurado para desconectar una conexión si la conexión está inactiva durante dos horas, establezca ServerAliveInterval en un valor inferior a dos horas (por ejemplo, una hora) en el cliente para evitar que el firewall desconecte la conexión.
- Configure el servidor de /home/ma-user/.ssh/etc/sshd_config (Se ha configurado el notebook y 24 horas es más que el tiempo configurado en el firewall para desconectar las conexiones. Esta configuración no necesita modificarse manualmente. Solo se utiliza para ayudar a entender la configuración de SSH.)
La configuración anterior muestra que el servidor envía activamente un paquete de latido al cliente cada 24 horas, y la conexión se desconectará si el cliente no responde después de que el paquete de latido se envíe tres veces.
Para obtener más información, véase https://unix.stackexchange.com/questions/3026/what-do-options-serveraliveinterval-and-clientaliveinterval-in-sshd-config-d.
- Si una conexión debe conservarse consistentemente, es una buena práctica escribir logs en un archivo de log separado y ejecutar el script en el backend. Por ejemplo:
nohup train.sh > output.log 2>&1 & tail -f output.log
Fallas en el acceso al entorno de desarrollo con VS Code Preguntas frecuentes
- ¿Cuándo lo hago si no se muestra la ventana de VS Code?
- What Do I Do If a Remote Connection Failed After VS Code Is Opened?
- ¿Qué hago si se muestra el mensaje de error "Could not establish connection to xxx" durante una conexión remota?
- ¿Qué hago si la conexión a un entorno de desarrollo remoto permanece en estado "Setting up SSH Host xxx: Downloading VS Code Server locally" por más de 10 minutos?
- ¿Qué debo hacer si la conexión a un entorno de desarrollo remoto permanece en el estado de "Setting up SSH Host xxx: Downloading VS Code Server locally" por más de 10 minutos?
- ¿Qué hago si la conexión a un entorno de desarrollo remoto permanece en el estado de "ModelArts Remote Connect: Connecting to instance xxx..." durante más de 10 minutos?
- ¿Qué hago si una conexión remota está en el estado de reintento?
- ¿Qué hago si se muestra el mensaje de error "The VS Code Server failed to start"?
- ¿Qué hago si se muestra el mensaje de error "Permissions for 'x:/xxx.pem' are too open"?
- ¿Qué hago si se muestra un mensaje de error Bad owner or permissions on C:\Users\Administrator/.ssh/config" o "Connection permission denied (publickey)"?
- ¿Qué hago si se muestra el mensaje de error "ssh: connect to host xxx.pem port xxxxx: Connection refused"?
- ¿Qué hago si se muestra el mensaje de error "ssh: connect to host ModelArts-xxx port xxx: Connection timed out"?
- What Do I Do If Error Message "Load key "C:/Users/xx/test1/xxx.pem": invalid format" Is Displayed?
- ¿Qué hago si se muestra el mensaje de error "An SSH installation couldn't be found" o "Could not establish connection to instance xxx: 'ssh' ..."?
- ¿Qué hago si se muestra un mensaje de error "no such identity: C:/Users/xx /test.pem: No such file or directory"?
- ¿Qué hago si se muestra el mensaje de error "Host key verification failed" o "Port forwarding is disabled"?
- ¿Qué hago si se muestra el mensaje de error "Failed to install the VS Code Server" o "tar: Error is not recoverable: exiting now"?
- ¿Qué hago si se muestra el mensaje de error "XHR failed" cuando se accede a una instancia de notebook remota a través de VS Code?
- ¿Qué hago para una conexión de VS Code desconectada automáticamente si no se realiza ninguna operación durante mucho tiempo?
- ¿Qué hago si toma mucho tiempo configurar una conexión remota después de actualizar automáticamente VS Code?
- ¿Qué hago si se muestra el mensaje de error "Connection reset" durante una conexión de SSH?
- ¿Qué puedo hacer si una instancia de Notebook se desconecta o se atasca con frecuencia después de usar MobaXterm para conectarme a la instancia de Notebook en modo SSH?
Comentarios
¿Le pareció útil esta página?
Deje algún comentariomore