[Remote SSH]: Code server did not start successfully

Describe the Bug

Vscode is work fine, but cursor can not connet my server

 66700K .......... ..........
2025-06-16 14:50:14.266 [info] (ssh_tunnel) stdout:  .......... .......... .......... 99%  325K 0s
 66750K .......... .......... .......... .......... .         100%  109M=4m9s

2025-06-16 14:50:14 (268 KB/s) - ‘cursor-server-90254e93-f3f1-4169-8743-f8c24c8b8051.tar.gz’ saved [68394992/68394992]


2025-06-16 14:50:16.037 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ echo "Checking node executable"
Checking node executable
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<017:~$ if ! $SERVER_NODE_EXECUTABLE --version; then
> 
2025-06-16 14:50:16.037 [info] (ssh_tunnel) stdout: 
<DE_EXECUTABLE is not working, checking system node"
>     SYSTEM_NODE=$(which node)
>     if [[ -n "$SYSTEM_NODE" ]]; then
>         echo "System node version: $($SYSTEM_NODE --version)"
> 
<(parseInt(process.version.slice(1)) >= 20 ? 0 : 1)"
>         if [[ $? -eq 0 ]]; then
>             echo "System node version is 20 or higher, creating symlink"
>             ln -sf $SYSTEM_NODE $SERVER_NODE_EXECUTABLE
> 
<mlink from $SERVER_NODE_EXECUTABLE to $SYSTEM_NODE"
>         else
> 
<l NodeJS 20 or higher on your remote system" "true"
>         fi
>     else
> 
2025-06-16 14:50:16.043 [info] (ssh_tunnel) stdout: 
<l NodeJS 20 or higher on your remote system" "true"
>     fi
> fi
v20.18.2
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ # Clean up stale builds
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<ITS=$(ls -1 -t "$SERVER_DATA_DIR/bin" | tail -n +6)
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<rning-4801017:~$ for OLD_COMMIT in $OLD_COMMITS; do
> 
<_COMMIT | grep -v grep | wc -l | tr -d '[:space:]'`
>     if [[ $IS_RUNNING -eq 0 ]]; then
>         echo "Cleaning up stale build $OLD_COMMIT"
>         if [[ "$OLD_COMMIT" != "$SERVER_COMMIT" ]]; then
> 
</bin/$OLD_COMMIT" "$SERVER_DATA_DIR/.$OLD_COMMIT.*"
>         fi
>     else
>         echo "Build $OLD_COMMIT is still running, skipping"
>     fi
> done
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
Iyongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<01017:~$ # Try to find if server is already running
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<running multiplex server: $MULTIPLEX_SERVER_SCRIPT"
Checking for running multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<1017:~$ if [[ -f $MULTIPLEX_SERVER_PIDFILE ]]; then
>     MULTIPLEX_SERVER_PID="$(cat $MULTIPLEX_SERVER_PIDFILE)"
> 
<TIPLEX_SERVER_PID | grep $MULTIPLEX_SERVER_SCRIPT)"
> else
> 
<-A | grep $MULTIPLEX_SERVER_SCRIPT | grep -v grep)"
> fi

2025-06-16 14:50:16.257 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<ultiplex server: $MULTIPLEX_SERVER_RUNNING_PROCESS"

2025-06-16 14:50:16.258 [info] (ssh_tunnel) stdout: Running multiplex server: 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<OGFILE || ! -f $MULTIPLEX_SERVER_TOKENFILE ]]; then
>     if [[ -f $MULTIPLEX_SERVER_LOGFILE ]]; then
> 
2025-06-16 14:50:16.262 [info] (ssh_tunnel) stdout:         rm $MULTIPLEX_SERVER_LOGFILE
>     fi
>     if [[ -f $MULTIPLEX_SERVER_TOKENFILE ]]; then
>         rm $MULTIPLEX_SERVER_TOKENFILE
>     fi
> 
>     touch $MULTIPLEX_SERVER_TOKENFILE
>     chmod 600 $MULTIPLEX_SERVER_TOKENFILE
> 
<ECTION_TOKEN="d3a817fc-3771-4b6b-bee5-a594776b8024"
>     echo $MULTIPLEX_SERVER_CONNECTION_TOKEN > $MULTIPLEX_SERVER_TOKENFILE
> 
> 
<e manually inject it into the extension host later.
> 
<s from being used across ALL connections by default
> 
>     # Backing it up, NOT exporting it
>     if [[ -n "$SSH_AUTH_SOCK" ]]; then
>         ORIGINAL_SSH_AUTH_SOCK=$SSH_AUTH_SOCK
>         unset SSH_AUTH_SOCK
>     fi
> 
> 
<tiplex server: $(dirname $MULTIPLEX_SERVER_SCRIPT)"
>     mkdir -p $(dirname "$MULTIPLEX_SERVER_SCRIPT")
>     echo "Writing multiplex server script to $MULTIPLEX_SERVER_SCRIPT"
> 
2025-06-16 14:50:16.269 [info] (ssh_tunnel) stdout: 
<dev/null || base64 -D) > "$MULTIPLEX_SERVER_SCRIPT"

2025-06-16 14:50:16.270 [info] (ssh_tunnel) stdout: > 
> 
2025-06-16 14:50:16.272 [info] (ssh_tunnel) stdout: 
<X_SERVER_SCRIPT $MULTIPLEX_SERVER_CONNECTION_TOKEN"
> 
2025-06-16 14:50:16.272 [info] (ssh_tunnel) stdout: 
<R_CONNECTION_TOKEN"  &> $MULTIPLEX_SERVER_LOGFILE &
>     echo $! > $MULTIPLEX_SERVER_PIDFILE
> 
> 
2025-06-16 14:50:16.274 [info] (ssh_tunnel) stdout:     # Restoring the original SSH_AUTH_SOCK
>     if [[ -n "$ORIGINAL_SSH_AUTH_SOCK" ]]; then
>         export SSH_AUTH_SOCK=$ORIGINAL_SSH_AUTH_SOCK
>         unset ORIGINAL_SSH_AUTH_SOCK
>     fi
> else
> 
<ng processes are $MULTIPLEX_SERVER_RUNNING_PROCESS"

2025-06-16 14:50:16.276 [info] (ssh_tunnel) stdout: > fi

2025-06-16 14:50:16.279 [info] (ssh_tunnel) stdout: Creating directory for multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server

2025-06-16 14:50:16.284 [info] (ssh_tunnel) stdout: Writing multiplex server script to /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js

2025-06-16 14:50:16.287 [info] (ssh_tunnel) stdout: Starting multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/53b99ce608cba35127ae3a050c1738a959750860/node /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js d3a817fc-3771-4b6b-bee5-a594776b8024
[2] 3450397

2025-06-16 14:50:16.288 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
2025-06-16 14:50:16.288 [info] (ssh_tunnel) stdout: 
<plex server token file $MULTIPLEX_SERVER_TOKENFILE"
Reading multiplex server token file /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a9597508606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.token
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
2025-06-16 14:50:16.293 [info] (ssh_tunnel) stdout: 
<17:~$ if [[ -f $MULTIPLEX_SERVER_TOKENFILE ]]; then
>     echo "Multiplex server token file found"
>     MULTIPLEX_SERVER_CONNECTION_TOKEN="$(cat $MULTIPLEX_SERVER_TOKENFILE)"
> else
> 
< token file not found: $MULTIPLEX_SERVER_TOKENFILE"
> fi
Multiplex server token file found
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<ultiplex server log file $MULTIPLEX_SERVER_LOGFILE"
Reading multiplex server log file /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a9597508606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.log
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ for i in {1..20}; do
>     if [[ -f $MULTIPLEX_SERVER_LOGFILE ]]; then
> 
<listening on .+' | sed 's/Server listening on //')"
>         if [[ -n "$MULTIPLEX_LISTENING_ON" ]]; then
>             break

2025-06-16 14:50:16.293 [info] (ssh_tunnel) stdout: >         fi
>     fi
>     sleep 0.5
> done

2025-06-16 14:50:16.802 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<1017:~$ if [[ -z "$MULTIPLEX_LISTENING_ON" ]]; then
>     echo "Error multiplex server did not start successfully"
>     # Reading the logfile, to help with debugging
>     cat $MULTIPLEX_SERVER_LOGFILE || true
> 
<xit 1 "Multiplex server did not start successfully"

2025-06-16 14:50:16.803 [info] (ssh_tunnel) stdout: > fi
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<earning-4801017:~$ echo "Checking for code servers"
Checking for code servers
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<g-4801017:~$ if [[ -f $CODE_SERVER_PIDFILE ]]; then
>     CODE_SERVER_PID="$(cat $CODE_SERVER_PIDFILE)"
> 
<ep -w $CODE_SERVER_PID | grep $CODE_SERVER_SCRIPT)"
> else
> 
<args -A | grep $CODE_SERVER_SCRIPT | grep -v grep)"
> fi

2025-06-16 14:50:17.002 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<les exists; otherwise we need to start a new server
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<VER_TOKENFILE || ! -f $CODE_SERVER_LOGFILE ]]; then
>     echo "Code server script is not running"
> 
2025-06-16 14:50:17.002 [info] (ssh_tunnel) stdout:     if [[ -f $CODE_SERVER_LOGFILE ]]; then
>         rm $CODE_SERVER_LOGFILE
>     fi
>     if [[ -f $CODE_SERVER_TOKENFILE ]]; then
>         rm $CODE_SERVER_TOKENFILE
>     fi
> 
>     touch $CODE_SERVER_TOKENFILE

2025-06-16 14:50:17.002 [info] (ssh_tunnel) stdout: >     chmod 600 $CODE_SERVER_TOKENFILE
>     CODE_SERVER_CONNECTION_TOKEN="7176e82a-ae42-4877-bd95-5b2b223e0eaf"
>     echo $CODE_SERVER_CONNECTION_TOKEN > $CODE_SERVER_TOKENFILE
> 
> 
<e manually inject it into the extension host later.
> 
<s from being used across ALL connections by default
> 
>     # Backing it up, NOT exporting it
>     if [[ -n "$SSH_AUTH_SOCK" ]]; then
>         ORIGINAL_SSH_AUTH_SOCK=$SSH_AUTH_SOCK
>         unset SSH_AUTH_SOCK
>     fi
> 
> 
<ept-server-license-terms &> $CODE_SERVER_LOGFILE &"
> 
> 
<cept-server-license-terms &> $CODE_SERVER_LOGFILE &
>     echo $! > $CODE_SERVER_PIDFILE
> 
>     # Restoring the original SSH_AUTH_SOCK
>     if [[ -n "$ORIGINAL_SSH_AUTH_SOCK" ]]; then
>         export SSH_AUTH_SOCK=$ORIGINAL_SSH_AUTH_SOCK
>         unset ORIGINAL_SSH_AUTH_SOCK
>     fi
> else
> 
<Running processes are $CODE_SERVER_RUNNING_PROCESS"
> fi
Code server script is not running

2025-06-16 14:50:17.003 [info] (ssh_tunnel) stdout: Starting code server script /home/yongshuai_■■■■/.cursor-server/bin/53b99ce608cba35127ae3a050c1738a959750860/bin/cursor-server --start-server --host=127.0.0.1 --port 0  --connection-token-file /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a959750860.code.token --telemetry-level off --enable-remote-auto-shutdown --accept-server-license-terms &> /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a959750860.code.log &
[3] 3450539

2025-06-16 14:50:17.008 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<4801017:~$ if [[ -f $CODE_SERVER_TOKENFILE ]]; then
>     CODE_SERVER_CONNECTION_TOKEN="$(cat $CODE_SERVER_TOKENFILE)"
> else
> 
<erver token file not found: $CODE_SERVER_TOKENFILE"
> fi
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ for i in {1..20}; do
>     if [[ -f $CODE_SERVER_LOGFILE ]]; then
> 
<+' | sed 's/Extension host agent listening on //')"
>         if [[ -n "$CODE_LISTENING_ON" ]]; then
>             break
>         fi
>     fi
>     sleep 0.5
> done

2025-06-16 14:50:17.513 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ 
<g-4801017:~$ if [[ -z "$CODE_LISTENING_ON" ]]; then
>     echo "Error code server did not start successfully"
>     # Reading the logfile, to help with debugging
>     cat $CODE_SERVER_LOGFILE || true
> 
2025-06-16 14:50:17.514 [info] (ssh_tunnel) stdout: 
< 1 "Code server did not start successfully" "false"
> fi
yongshuai_■■■■@ubuntu-DeepLearning-4801017:~$ print_install_results_and_wait


Steps to Reproduce

Platform: windows
Remote-ssh: 1.0.12

Operating System

Windows 10/11

Current Cursor Version (Menu → About Cursor → Copy)

Version: 1.0.0
Vscode version: 1.99.3

~/.cursor-server/bin/multiplex-server$ ls
6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js

"use strict";var __assign=this&&this.__assign||function(){return __assign=Object.assign||function(e){for(var r,o=1,t=arguments.length;o<t;o++)for(var n in r=arguments[o])Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n]);return e},__assign.apply(this,arguments)};Object.defineProperty(exports,"__esModule",{value:!0});var net_1=require("net"),child_process_1=require("child_process"),crypto_1=require("crypto"),token=process.argv[2];token||(console.error("Token must be provided as the first argument"),process.exit(1));var inactivityTimer,server=(0,net_1.createServer)({keepAlive:!0},(function(e){console.log("Server received connection"),resetInactivityTimer();var r,o,t=Buffer.alloc(0);e.on("close",(function(){console.log("[remoteServer][".concat(o,"] Socket closed; killing child process")),r&&r.pid&&!r.killed&&((null==r?void 0:r.kill())||console.error("[remoteServer][".concat(o,"] Failed to kill child process")))})),e.on("data",(function(n){var i,s,c;if(t=Buffer.concat([t,n]),void 0===r){var a=t.indexOf(Buffer.from("\n"));if(-1===a)return;var d=t.subarray(0,a).toString();t=t.subarray(a+1);var l=void 0;try{l=JSON.parse(d)}catch(r){return console.error("Error parsing JSON command:",r),void e.destroy()}if(l.token!==token)return console.error("Invalid token:",l.token),e.write(JSON.stringify({type:"exit",code:401})+"\n"),void e.end();o=null!==(i=l.id)&&void 0!==i?i:(0,crypto_1.randomUUID)(),console.log("[command][".concat(o,"] Executing command: ").concat(l.command," ").concat((null!==(s=l.args)&&void 0!==s?s:[]).join(" "))),(r=(0,child_process_1.spawn)(l.command,null!==(c=l.args)&&void 0!==c?c:[],{env:__assign(__assign({},process.env),l.env),cwd:l.cwd,shell:!1,stdio:"pipe"})).stdout.on("data",(function(r){var o={type:"stdout",data:r.toString("base64")};e.write(JSON.stringify(o)+"\n")})),r.stdout.on("end",(function(){e.write(JSON.stringify({type:"stdout-end"})+"\n")})),r.stderr.on("data",(function(r){var o={type:"stderr",data:r.toString("base64")};e.write(JSON.stringify(o)+"\n")})),r.stderr.on("end",(function(){e.write(JSON.stringify({type:"stderr-end"})+"\n")}));var u=!1;r.on("error",(function(r){u?console.log("[command][".concat(o,"] Process exited with error but we already sent an exit message"),r):(u=!0,console.error("[command][".concat(o,"] Process error"),r),e.write(JSON.stringify({type:"exit",code:1})+"\n"),e.end())})),r.on("exit",(function(r){if(u)console.log("[command][".concat(o,"] Process exited with code ").concat(r," but we already sent an exit message"));else{u=!0,console.log("[command][".concat(o,"] Process exited with code ").concat(r,". Sending exit message"));var t={type:"exit",code:null!==r?r:0};e.write(JSON.stringify(t)+"\n"),e.end()}}))}var v=t.indexOf(0);if(-1!==v){var f=t.subarray(0,v);try{var g=Buffer.from(f.toString("utf-8"),"base64");r.stdin.write(g)}catch(o){return console.error("Error decoding base64 data:",o),e.destroy(),void r.kill("SIGKILL")}return r.stdin.end(),void(t=Buffer.alloc(0))}var y=4*Math.floor(t.length/4);if(0!==y){var p=t.subarray(0,y);t=t.subarray(y);try{g=Buffer.from(p.toString("utf-8"),"base64"),r.stdin.write(g)}catch(o){return console.error("Error decoding base64 data:",o),r.kill("SIGKILL"),void e.destroy()}}})),e.on("error",(function(e){console.error("[remoteServer][".concat(o,"] Socket error:"),e),r&&r.kill("SIGKILL")}))}));function resetInactivityTimer(){inactivityTimer&&clearTimeout(inactivityTimer),inactivityTimer=setTimeout((function(){console.error("No connections received for 5 minutes, shutting down..."),process.exit(0)}),3e5)}resetInactivityTimer(),server.listen({host:"127.0.0.1",port:0},(function(){var e=server.address();null===e&&(console.error("Failed to get server address"),process.exit(1)),"string"==typeof e&&(console.error("Invalid address: ".concat(e)),process.exit(1)),console.log("Server listening on ".concat(e.port))})),process.on("SIGINT",(function(){server.close((function(){console.log("Server closed"),process.exit(0)}))}));

Hi @HPUedCSLearner, thanks for reporting this issue and sharing the logs. However, the first set of logs look like they are mangled. Could you try sharing them again so we can take a look at what is happening? Thanks!

Thanks!


2025-06-18 10:09:40.166 [info] (ssh_tunnel) stdout: ........ .......... .......... 99%  285K 1s
 66300K .......... .......... .......... .......... .......... 99% 82.0M 1s
 66350K ..
2025-06-18 10:09:40.331 [info] (ssh_tunnel) stdout: ........ ........
2025-06-18 10:09:40.331 [info] (ssh_tunnel) stdout: .. .......... .......... .......... 99%  288K 1s
 66400K .......
2025-06-18 10:09:40.337 [info] (ssh_tunnel) stdout: ... .......... .......... .......... ........
2025-06-18 10:09:40.499 [info] (ssh_tunnel) stdout: .. 99%  291K 1s
 66450K .......... ....
2025-06-18 10:09:40.500 [info] (ssh_tunnel) stdout: ...... .......... ....
2025-06-18 10:09:40.501 [info] (ssh_tunnel) stdout: ...... .......... 99% 16.7M 0s
 66500K .......... 
2025-06-18 10:09:40.501 [info] (ssh_tunnel) stdout: .......... .......... .....
2025-06-18 10:09:40.505 [info] (ssh_tunnel) stdout: ..... ....
2025-06-18 10:09:40.696 [info] (ssh_tunnel) stdout: ...... 99%  292K 0s
 66550K ..........
2025-06-18 10:09:40.697 [info] (ssh_tunnel) stdout:  .......... .......... .......... .......... 99% 16.0M 0s
2025-06-18 10:09:40.701 [info] (ssh_tunnel) stdout: 
 66600K .......... .......... .......... ..........
2025-06-18 10:09:40.712 [info] (ssh_tunnel) stdout:  .......... 99% 1.33M 0s
 66650K ......
2025-06-18 10:09:40.901 [info] (ssh_tunnel) stdout: .... .......... .......... ........
2025-06-18 10:09:40.902 [info] (ssh_tunnel) stdout: .. .......... 99%  363K 0s
 66700K .......... .......... .......... .......... .......... 99% 95.4M 0s
 66750K ..
2025-06-18 10:09:41.106 [info] (ssh_tunnel) stdout: ........ .......... .......... ....
2025-06-18 10:09:41.106 [info] (ssh_tunnel) stdout: ...... .         100%  244K=1m54s

2025-06-18 10:07:14 (586 KB/s) - ‘cursor-server-a75f5d62-01a8-42d1-807d-d3512e3f8aba.tar.gz’ saved [68394992/68394992]


2025-06-18 10:09:42.491 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<Learning-4801031:~$ echo "Checking node executable" 

2025-06-18 10:09:42.492 [info] (ssh_tunnel) stdout: Checking node executable

2025-06-18 10:09:42.495 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<031:~$ if ! $SERVER_NODE_EXECUTABLE --version; then 

2025-06-18 10:09:42.495 [info] (ssh_tunnel) stdout: > 
2025-06-18 10:09:42.502 [info] (ssh_tunnel) stdout: 
<DE_EXECUTABLE is not working, checking system node"
>     SYSTEM_NODE=$(which node)
>     if [[ -n "$SYSTEM_NODE" ]]; then
>         echo "System node version: $($SYSTEM_NODE --version)"
> 
<(parseInt(process.version.slice(1)) >= 20 ? 0 : 1)"
>         if [[ $? -eq 0 ]]; then
>             echo "System node version is 20 or higher, creating symlink"
>             ln -sf $SYSTEM_NODE $SERVER_NODE_EXECUTABLE
> 
<mlink from $SERVER_NODE_EXECUTABLE to $SYSTEM_NODE"
>         else
> 
<l NodeJS 20 or higher on your remote system" "true"
>         fi
>     else
> 
<l NodeJS 20 or higher on your remote system" "true"
>     fi
> fi

2025-06-18 10:09:42.503 [info] (ssh_tunnel) stdout: v20.18.2

2025-06-18 10:09:42.503 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 

2025-06-18 10:09:42.504 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
2025-06-18 10:09:42.509 [info] (ssh_tunnel) stdout: # Clean up stale builds
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<ITS=$(ls -1 -t "$SERVER_DATA_DIR/bin" | tail -n +6) 

2025-06-18 10:09:42.509 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<rning-4801031:~$ for OLD_COMMIT in $OLD_COMMITS; do 

2025-06-18 10:09:42.509 [info] (ssh_tunnel) stdout: > 
2025-06-18 10:09:42.517 [info] (ssh_tunnel) stdout: 
<_COMMIT | grep -v grep | wc -l | tr -d '[:space:]'`
>     if [[ $IS_RUNNING -eq 0 ]]; then
>         echo "Cleaning up stale build $OLD_COMMIT"
>         if [[ "$OLD_COMMIT" != "$SERVER_COMMIT" ]]; then
> 
</bin/$OLD_COMMIT" "$SERVER_DATA_DIR/.$OLD_COMMIT.*"
>         fi
>     else
>         echo "Build $OLD_COMMIT is still running, skipping"
>     fi
> done
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<01031:~$ # Try to find if server is already running 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<running multiplex server: $MULTIPLEX_SERVER_SCRIPT" 
Checking for running multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<1031:~$ if [[ -f $MULTIPLEX_SERVER_PIDFILE ]]; then 
>     MULTIPLEX_SERVER_PID="$(cat $MULTIPLEX_SERVER_PIDFILE)"
> 
2025-06-18 10:09:42.517 [info] (ssh_tunnel) stdout: 
<TIPLEX_SERVER_PID | grep $MULTIPLEX_SERVER_SCRIPT)"
> else

2025-06-18 10:09:42.522 [info] (ssh_tunnel) stdout: > 
<-A | grep $MULTIPLEX_SERVER_SCRIPT | grep -v grep)"
> fi

2025-06-18 10:09:42.634 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
2025-06-18 10:09:42.634 [info] (ssh_tunnel) stdout: 
<ultiplex server: $MULTIPLEX_SERVER_RUNNING_PROCESS" 
Running multiplex server: 

2025-06-18 10:09:42.635 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
2025-06-18 10:09:42.637 [info] (ssh_tunnel) stdout: 
<OGFILE || ! -f $MULTIPLEX_SERVER_TOKENFILE ]]; then 

2025-06-18 10:09:42.644 [info] (ssh_tunnel) stdout: >     if [[ -f $MULTIPLEX_SERVER_LOGFILE ]]; then
>         rm $MULTIPLEX_SERVER_LOGFILE
>     fi
>     if [[ -f $MULTIPLEX_SERVER_TOKENFILE ]]; then
>         rm $MULTIPLEX_SERVER_TOKENFILE
>     fi
> 
>     touch $MULTIPLEX_SERVER_TOKENFILE
>     chmod 600 $MULTIPLEX_SERVER_TOKENFILE
> 
<ECTION_TOKEN="aded87c4-66c3-4c47-bd0e-4c768d2766e2"
>     echo $MULTIPLEX_SERVER_CONNECTION_TOKEN > $MULTIPLEX_SERVER_TOKENFILE
> 
> 
2025-06-18 10:09:42.645 [info] (ssh_tunnel) stdout: 
<e manually inject it into the extension host later.
> 
<s from being used across ALL connections by default

2025-06-18 10:09:42.653 [info] (ssh_tunnel) stdout: > 
>     # Backing it up, NOT exporting it
>     if [[ -n "$SSH_AUTH_SOCK" ]]; then
>         ORIGINAL_SSH_AUTH_SOCK=$SSH_AUTH_SOCK
>         unset SSH_AUTH_SOCK
>     fi
> 
x> 
<tiplex server: $(dirname $MULTIPLEX_SERVER_SCRIPT)"
>     mkdir -p $(dirname "$MULTIPLEX_SERVER_SCRIPT")
>     echo "Writing multiplex server script to $MULTIPLEX_SERVER_SCRIPT"
> 
2025-06-18 10:09:42.693 [info] (ssh_tunnel) stdout: 
<dev/null || base64 -D) > "$MULTIPLEX_SERVER_SCRIPT"

2025-06-18 10:09:42.694 [info] (ssh_tunnel) stdout: > 
n> 
2025-06-18 10:09:42.694 [info] (ssh_tunnel) stdout: 
<X_SERVER_SCRIPT $MULTIPLEX_SERVER_CONNECTION_TOKEN"
> 
2025-06-18 10:09:42.695 [info] (ssh_tunnel) stdout: 
<R_CONNECTION_TOKEN"  &> $MULTIPLEX_SERVER_LOGFILE &

2025-06-18 10:09:42.701 [info] (ssh_tunnel) stdout: >     echo $! > $MULTIPLEX_SERVER_PIDFILE
> 
]>     # Restoring the original SSH_AUTH_SOCK
>     if [[ -n "$ORIGINAL_SSH_AUTH_SOCK" ]]; then
>         export SSH_AUTH_SOCK=$ORIGINAL_SSH_AUTH_SOCK
>         unset ORIGINAL_SSH_AUTH_SOCK
>     fi
> else
> 
<ng processes are $MULTIPLEX_SERVER_RUNNING_PROCESS"
> fi

2025-06-18 10:09:42.703 [info] (ssh_tunnel) stdout: Creating directory for multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server

2025-06-18 10:09:42.706 [info] (ssh_tunnel) stdout: Writing multiplex server script to /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js

2025-06-18 10:09:42.709 [info] (ssh_tunnel) stdout: Starting multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/53b99ce608cba35127ae3a050c1738a959750860/node /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js aded87c4-66c3-4c47-bd0e-4c768d2766e2

2025-06-18 10:09:42.709 [info] (ssh_tunnel) stdout: [2] 706587
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 

2025-06-18 10:09:42.710 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<plex server token file $MULTIPLEX_SERVER_TOKENFILE" 
Reading multiplex server token file /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a9597508606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.token
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<31:~$ if [[ -f $MULTIPLEX_SERVER_TOKENFILE ]]; then 
>     echo "Multiplex server token file found"
>     MULTIPLEX_SERVER_CONNECTION_TOKEN="$(cat $MULTIPLEX_SERVER_TOKENFILE)"
> else
> 
2025-06-18 10:09:42.715 [info] (ssh_tunnel) stdout: 
< token file not found: $MULTIPLEX_SERVER_TOKENFILE"
> fi
Multiplex server token file found
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<ultiplex server log file $MULTIPLEX_SERVER_LOGFILE" 
Reading multiplex server log file /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a9597508606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.log
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ for i in {1..20}; do
>     if [[ -f $MULTIPLEX_SERVER_LOGFILE ]]; then
> 
<listening on .+' | sed 's/Server listening on //')"
>         if [[ -n "$MULTIPLEX_LISTENING_ON" ]]; then
>             break
>         fi
>     fi
>     sleep 0.5
> done

2025-06-18 10:09:43.223 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 

2025-06-18 10:09:43.224 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<1031:~$ if [[ -z "$MULTIPLEX_LISTENING_ON" ]]; then 
> 
2025-06-18 10:09:43.224 [info] (ssh_tunnel) stdout:     echo "Error multiplex server did not start successfully"
> 
2025-06-18 10:09:43.230 [info] (ssh_tunnel) stdout:     # Reading the logfile, to help with debugging
>     cat $MULTIPLEX_SERVER_LOGFILE || true
> 
<xit 1 "Multiplex server did not start successfully"
> fi
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<earning-4801031:~$ echo "Checking for code servers" 
Checking for code servers
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<g-4801031:~$ if [[ -f $CODE_SERVER_PIDFILE ]]; then 
>     CODE_SERVER_PID="$(cat $CODE_SERVER_PIDFILE)"
> 
<ep -w $CODE_SERVER_PID | grep $CODE_SERVER_SCRIPT)"
> else
> 
<args -A | grep $CODE_SERVER_SCRIPT | grep -v grep)"
> fi

2025-06-18 10:09:43.351 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
2025-06-18 10:09:43.351 [info] (ssh_tunnel) stdout: 
<les exists; otherwise we need to start a new server 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
2025-06-18 10:09:43.351 [info] (ssh_tunnel) stdout: 
<VER_TOKENFILE || ! -f $CODE_SERVER_LOGFILE ]]; then 
> 
2025-06-18 10:09:43.358 [info] (ssh_tunnel) stdout:     echo "Code server script is not running"
>     if [[ -f $CODE_SERVER_LOGFILE ]]; then
>         rm $CODE_SERVER_LOGFILE
>     fi
>     if [[ -f $CODE_SERVER_TOKENFILE ]]; then
>         rm $CODE_SERVER_TOKENFILE
>     fi
> 
>     touch $CODE_SERVER_TOKENFILE
>     chmod 600 $CODE_SERVER_TOKENFILE
>     CODE_SERVER_CONNECTION_TOKEN="feec97fb-94cc-4f8d-9b6d-e39997d76b8d"
>     echo $CODE_SERVER_CONNECTION_TOKEN > $CODE_SERVER_TOKENFILE
> 
> 
<e manually inject it into the extension host later.
> 
<s from being used across ALL connections by default
> 
>     # Backing it up, NOT exporting it
>     if [[ -n "$SSH_AUTH_SOCK" ]]; then
>         ORIGINAL_SSH_AUTH_SOCK=$SSH_AUTH_SOCK
>         unset SSH_AUTH_SOCK
>     fi
> 
> 
2025-06-18 10:09:43.358 [info] (ssh_tunnel) stdout: 
<ept-server-license-terms &> $CODE_SERVER_LOGFILE &"

2025-06-18 10:09:43.359 [info] (ssh_tunnel) stdout: > 
> 
2025-06-18 10:09:43.359 [info] (ssh_tunnel) stdout: 
<cept-server-license-terms &> $CODE_SERVER_LOGFILE &

2025-06-18 10:09:43.361 [info] (ssh_tunnel) stdout: >     echo $! > $CODE_SERVER_PIDFILE
> 
>     # Restoring the original SSH_AUTH_SOCK
>     if [[ -n "$ORIGINAL_SSH_AUTH_SOCK" ]]; then
>         export SSH_AUTH_SOCK=$ORIGINAL_SSH_AUTH_SOCK
>         unset ORIGINAL_SSH_AUTH_SOCK
>     fi
> else
> 
2025-06-18 10:09:43.363 [info] (ssh_tunnel) stdout: 
<Running processes are $CODE_SERVER_RUNNING_PROCESS"

2025-06-18 10:09:43.363 [info] (ssh_tunnel) stdout: > fi
Code server script is not running

2025-06-18 10:09:43.367 [info] (ssh_tunnel) stdout: Starting code server script /home/yongshuai_■■■■/.cursor-server/bin/53b99ce608cba35127ae3a050c1738a959750860/bin/cursor-server --start-server --host=127.0.0.1 --port 0  --connection-token-file /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a959750860.code.token --telemetry-level off --enable-remote-auto-shutdown --accept-server-license-terms &> /home/yongshuai_■■■■/.cursor-server/.53b99ce608cba35127ae3a050c1738a959750860.code.log &
[3] 706795

2025-06-18 10:09:43.368 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<4801031:~$ if [[ -f $CODE_SERVER_TOKENFILE ]]; then 
>     CODE_SERVER_CONNECTION_TOKEN="$(cat $CODE_SERVER_TOKENFILE)"
> else
> 
<erver token file not found: $CODE_SERVER_TOKENFILE"

2025-06-18 10:09:43.373 [info] (ssh_tunnel) stdout: > fi
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ for i in {1..20}; do
>     if [[ -f $CODE_SERVER_LOGFILE ]]; then
> 
<+' | sed 's/Extension host agent listening on //')"
>         if [[ -n "$CODE_LISTENING_ON" ]]; then
>             break
>         fi
>     fi
>     sleep 0.5
> done

2025-06-18 10:09:43.882 [info] (ssh_tunnel) stdout: (base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
2025-06-18 10:09:43.884 [info] (ssh_tunnel) stdout: 
<g-4801031:~$ if [[ -z "$CODE_LISTENING_ON" ]]; then 
> 
2025-06-18 10:09:43.884 [info] (ssh_tunnel) stdout:     echo "Error code server did not start successfully"
>     # Reading the logfile, to help with debugging
> 
2025-06-18 10:09:43.894 [info] (ssh_tunnel) stdout:     cat $CODE_SERVER_LOGFILE || true
> 
< 1 "Code server did not start successfully" "false"
> fi
(base) yongshuai_■■■■@ubuntu-DeepLearning-4801031:~$ 
<pLearning-4801031:~$ print_install_results_and_wait 

cursor about

Version: 1.0.0 (user setup)
VSCode Version: 1.96.2
Commit: 53b99ce608cba35127ae3a050c1738a959750860
Date: 2025-06-04T19:44:25.253Z
Electron: 34.5.1
Chromium: 132.0.6834.210
Node.js: 20.19.0
V8: 13.2.152.41-electron.0
OS: Windows_NT x64 10.0.26100

Remote ssh: latest

Hi @HPUedCSLearner, I still am unable to parse the logs – it appears to be the source code for some sections, and many line are truncated. I’ll take a guess that this might be because of some flag set in a ~/.bashrc, ~/.bash_profile, or ~/.profile on your remote machine. Could you try restoring these files to the defaults?

Hi!


yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ cp .bash_history .bash_history.bk
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ cp  .bash_logout .bash_logout.bk
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ cp  .bashrc  .bashrc.bk
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ cp .profile .profile.bk
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ echo "debug" > .bash_history
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ echo "debug" > .bash_logout
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ echo "debug" > .bashrc
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ echo "debug" > .profile

This is the ssh log. Because the log is too long, I only posted the first half of the log downloaded from the server through wget. The second half of the log is what I posted before. Please forgive me.

2025-06-19 14:36:19.714 [info] Resolving ssh remote authority '10.48.2.112-l40s' (Unparsed 'ssh-remote+7b22686f73744e616d65223a2231302e34382e322e3131322d6c343073227d') (attempt #1)
2025-06-19 14:36:19.792 [info] SSH askpass server listening on port 60994
2025-06-19 14:36:19.794 [info] Using askpass script: c:\Users\yongshuai_■■■■\.cursor\extensions\anysphere.remote-ssh-1.0.14\dist\scripts\launchSSHAskpass.bat with javascript file c:\Users\yongshuai_■■■■\.cursor\extensions\anysphere.remote-ssh-1.0.14\dist\scripts\sshAskClient.js. Askpass handle: 60994
2025-06-19 14:36:19.812 [info] Launching SSH server via shell with command: type "C:\Users\YONGSH~1\AppData\Local\Temp\cursor_remote_install_93985.sh" | ssh -v -T -D 60995 10.48.2.112-l40s bash --login -c bash
2025-06-19 14:36:19.812 [info] Started installation script. Waiting for it to finish...
2025-06-19 14:36:19.812 [info] Waiting for server to install via process(31132)...
2025-06-19 14:36:19.919 [info] (ssh_tunnel) stderr: OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2

2025-06-19 14:36:19.921 [info] (ssh_tunnel) stderr: debug1: Reading configuration data C:\\Users\\yongshuai_■■■■/.ssh/config

2025-06-19 14:36:19.921 [info] (ssh_tunnel) stderr: debug1: C:\\Users\\yongshuai_■■■■/.ssh/config line 28: Applying options for 10.48.2.112-l40s

2025-06-19 14:36:19.947 [info] (ssh_tunnel) stderr: debug1: Connecting to d1000.intsig.net [106.75.209.254] port 38222.

2025-06-19 14:36:19.992 [info] (ssh_tunnel) stderr: debug1: Connection established.

2025-06-19 14:36:19.994 [info] (ssh_tunnel) stderr: debug1: identity file C:\\Users\\yongshuai_■■■■\\.ssh\\jumper-key.pem type -1

2025-06-19 14:36:19.995 [info] (ssh_tunnel) stderr: debug1: identity file C:\\Users\\yongshuai_■■■■\\.ssh\\jumper-key.pem-cert type -1

2025-06-19 14:36:19.995 [info] (ssh_tunnel) stderr: debug1: Local version string SSH-2.0-OpenSSH_for_Windows_9.5

2025-06-19 14:36:20.009 [info] (ssh_tunnel) stderr: debug1: Remote protocol version 2.0, remote software version JumpServer

2025-06-19 14:36:20.009 [info] (ssh_tunnel) stderr: debug1: compat_banner: no match: JumpServer

2025-06-19 14:36:20.009 [info] (ssh_tunnel) stderr: debug1: Authenticating to d1000.intsig.net:38222 as 'yongshuai_■■■■@yongshuai_■■■■@10.48.2.112'

2025-06-19 14:36:20.010 [info] (ssh_tunnel) stderr: debug1: load_hostkeys: fopen C:\\Users\\yongshuai_■■■■/.ssh/known_hosts2: No such file or directory

2025-06-19 14:36:20.011 [info] (ssh_tunnel) stderr: debug1: load_hostkeys: fopen __PROGRAMDATA__\\ssh/ssh_known_hosts: No such file or directory

2025-06-19 14:36:20.011 [info] (ssh_tunnel) stderr: debug1: load_hostkeys: fopen __PROGRAMDATA__\\ssh/ssh_known_hosts2: No such file or directory

2025-06-19 14:36:20.011 [info] (ssh_tunnel) stderr: debug1: SSH2_MSG_KEXINIT sent

2025-06-19 14:36:20.018 [info] (ssh_tunnel) stderr: debug1: SSH2_MSG_KEXINIT received

2025-06-19 14:36:20.018 [info] (ssh_tunnel) stderr: debug1: kex: algorithm: curve25519-sha256

2025-06-19 14:36:20.019 [info] (ssh_tunnel) stderr: debug1: kex: host key algorithm: rsa-sha2-512

2025-06-19 14:36:20.019 [info] (ssh_tunnel) stderr: debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none

2025-06-19 14:36:20.019 [info] (ssh_tunnel) stderr: debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none

2025-06-19 14:36:20.021 [info] (ssh_tunnel) stderr: debug1: expecting SSH2_MSG_KEX_ECDH_REPLY

2025-06-19 14:36:20.033 [info] (ssh_tunnel) stderr: debug1: SSH2_MSG_KEX_ECDH_REPLY received

2025-06-19 14:36:20.033 [info] (ssh_tunnel) stderr: debug1: Server host key: ssh-rsa SHA256:YEv59DUXo0iRh88lqPXp2DK0ruwGpLmZpGZ7RhAkJfw

2025-06-19 14:36:20.034 [info] (ssh_tunnel) stderr: debug1: load_hostkeys: fopen C:\\Users\\yongshuai_■■■■/.ssh/known_hosts2: No such file or directory

2025-06-19 14:36:20.034 [info] (ssh_tunnel) stderr: debug1: load_hostkeys: fopen __PROGRAMDATA__\\ssh/ssh_known_hosts: No such file or directory

2025-06-19 14:36:20.035 [info] (ssh_tunnel) stderr: debug1: load_hostkeys: fopen __PROGRAMDATA__\\ssh/ssh_known_hosts2: No such file or directory

2025-06-19 14:36:20.035 [info] (ssh_tunnel) stderr: debug1: Host '[d1000.intsig.net]:38222' is known and matches the RSA host key.

2025-06-19 14:36:20.035 [info] (ssh_tunnel) stderr: debug1: Found key in C:\\Users\\yongshuai_■■■■/.ssh/known_hosts:1

2025-06-19 14:36:20.036 [info] (ssh_tunnel) stderr: debug1: ssh_packet_send2_wrapped: resetting send seqnr 3

2025-06-19 14:36:20.037 [info] (ssh_tunnel) stderr: debug1: rekey out after 134217728 blocks

2025-06-19 14:36:20.038 [info] (ssh_tunnel) stderr: debug1: SSH2_MSG_NEWKEYS sent

2025-06-19 14:36:20.038 [info] (ssh_tunnel) stderr: debug1: expecting SSH2_MSG_NEWKEYS

2025-06-19 14:36:20.038 [info] (ssh_tunnel) stderr: debug1: ssh_packet_read_poll2: resetting read seqnr 3

2025-06-19 14:36:20.038 [info] (ssh_tunnel) stderr: debug1: SSH2_MSG_NEWKEYS received

2025-06-19 14:36:20.038 [info] (ssh_tunnel) stderr: debug1: rekey in after 134217728 blocks

2025-06-19 14:36:20.038 [info] (ssh_tunnel) stderr: debug1: get_agent_identities: ssh_get_authentication_socket: No such file or directory

2025-06-19 14:36:20.039 [info] (ssh_tunnel) stderr: debug1: Will attempt key: C:\\Users\\yongshuai_■■■■\\.ssh\\jumper-key.pem  explicit

2025-06-19 14:36:20.039 [info] (ssh_tunnel) stderr: debug1: SSH2_MSG_EXT_INFO received

2025-06-19 14:36:20.039 [info] (ssh_tunnel) stderr: debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,[email protected],[email protected],ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-256,rsa-sha2-512,ssh-rsa,ssh-dss>

2025-06-19 14:36:20.039 [info] (ssh_tunnel) stderr: debug1: kex_ext_info_check_ver: [email protected]=<0>

2025-06-19 14:36:20.112 [info] (ssh_tunnel) stderr: debug1: SSH2_MSG_SERVICE_ACCEPT received

2025-06-19 14:36:20.121 [info] (ssh_tunnel) stderr: Welcome to JumpServer SSH Server

2025-06-19 14:36:20.122 [info] (ssh_tunnel) stderr: debug1: Authentications that can continue: password,publickey

2025-06-19 14:36:20.122 [info] (ssh_tunnel) stderr: debug1: Next authentication method: publickey

2025-06-19 14:36:20.122 [info] (ssh_tunnel) stderr: debug1: Trying private key: C:\\Users\\yongshuai_■■■■\\.ssh\\jumper-key.pem

2025-06-19 14:36:20.620 [info] (ssh_tunnel) stderr: Authenticated to d1000.intsig.net ([106.75.209.254]:38222) using "publickey".

2025-06-19 14:36:20.620 [info] (ssh_tunnel) stderr: debug1: Local connections to LOCALHOST:60995 forwarded to remote address socks:0

2025-06-19 14:36:20.620 [info] (ssh_tunnel) stderr: debug1: Local forwarding listening on ::1 port 60995.

2025-06-19 14:36:20.621 [info] (ssh_tunnel) stderr: debug1: channel 0: new port-listener [port listener] (inactive timeout: 0)

2025-06-19 14:36:20.621 [info] (ssh_tunnel) stderr: debug1: Local forwarding listening on 127.0.0.1 port 60995.

2025-06-19 14:36:20.621 [info] (ssh_tunnel) stderr: debug1: channel 1: new port-listener [port listener] (inactive timeout: 0)

2025-06-19 14:36:20.621 [info] (ssh_tunnel) stderr: debug1: channel 2: new session [client-session] (inactive timeout: 0)

2025-06-19 14:36:20.622 [info] (ssh_tunnel) stderr: debug1: Entering interactive session.

2025-06-19 14:36:20.622 [info] (ssh_tunnel) stderr: debug1: pledge: filesystem

2025-06-19 14:36:20.630 [info] (ssh_tunnel) stderr: debug1: Sending command: bash --login -c bash

2025-06-19 14:36:22.961 [info] (ssh_tunnel) stdout: /home/yongshuai_■■■■/.bashrc: line 1: debug: command not found

2025-06-19 14:36:22.963 [info] (ssh_tunnel) stdout: 
TMP_DIR="${XDG_RUNTIME_DIR:-"/tmp"}"
SERVER_COMMIT="979ba33804ac150108481c14e0b5cb970bda3260"
SERVER_LINE="production"
SERVER_DATA_DIR="$HOME/.cursor-server"
SERVER_DIR="$SERVER_DATA_DIR/bin/979ba33804ac150108481c14e0b5cb970bda3260"
SERVER_NODE_EXECUTABLE="$SERVER_DIR/node"
CODE_SERVER_SCRIPT="$SERVER_DIR/bin/cursor-server"
CODE_SERVER_LOGFILE="$SERVER_DATA_DIR/.$SERVER_COMMIT.code.log"
CODE_SERVER_TOKENFILE="$SERVER_DATA_D
2025-06-19 14:36:22.964 [info] (ssh_tunnel) stdout: IR/.$SERVER_COMMIT.code.token"
CODE_SERVER_PIDFILE="$SERVER_
2025-06-19 14:36:22.971 [info] (ssh_tunnel) stdout: DATA_DIR/.$SERVER_COMMIT.code.pid"
CODE_SERVER_PROCESS_ALL_VERSIONS_GREP_PATTERN="$SERVER_DATA_DIR/bin/.*/out/server-main.js"
CODE_LISTENING_ON=
CODE_SERVER_CONNECTION_TOKEN=
MULTIPLEX_SERVER_SCRIPT="$SERVER_DATA_DIR/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js"
MULTIPLEX_SERVER_LOGFILE="$SERVER_DATA_DIR/.979ba33804ac150108481c14e0b5cb970bda32606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.log"
MULTIPLEX_SERVER_TOKENFILE="$SERVER_DATA_DIR/.979ba33804ac150108481c14e0b5cb970bda32606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.token"
MULTIPLEX_SERVER_PIDFILE="$SERVER_DATA_DIR/.979ba33804ac150108481c14e0b5cb970bda32606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.pid"
MULTIPLEX_SERVER_PROCESS_ALL_VERSIONS_GREP_PATTERN="$SERVER_DATA_DIR/bin/multiplex-server/.*.js"
MULTIPLEX_LISTENING_ON=
SERVER_ARCH=
SERVER_DOWNLOAD_URL=
# This is a magic variable
export VSCODE_AGENT_FOLDER="$SERVER_DATA_DIR"
OS_RELEASE_ID=
ARCH=
PLATFORM=
print_install_results_and_exit() {
    echo "428b23c198586cd7b7f418de: start"
    echo "exitCode==$1=="
    echo "nodeExecutable==$SERVER_NODE_EXECUTABLE=="
    echo "multiplexListeningOn==$MULTIPLEX_LISTENING_ON=="
    echo "multiplexConnectionToken==$MULTIPLEX_SERVER_CONNECTION_TOKEN=="
    echo "codeListeningOn==$CODE_LISTENING_ON=="
    echo "errorMessage==$2=="
    echo "isFatalError==$3=="
    echo "codeConnectionToken==$CODE_SERVER_CONNECTION_TOKEN=="
    echo "detectedPlatform==$PLATFORM=="
    echo "arch==$SERVER_ARCH=="
    echo "SSH_AUTH_SOCK==$SSH_AUTH_SOCK=="
    echo "428b23c198586cd7b7f418de: end"
    exit $1
}

print_install_results_and_wait() {
    # Try to get PIDs from PID files first, fallback to extracting from running processes
    if [[ -f $CODE_SERVER_PIDFILE ]]; then
        CODE_SERVER_PID="$(cat $CODE
2025-06-19 14:36:22.972 [info] Server install command exit code:  NaN
2025-06-19 14:36:22.973 [error] Error installing server: Cannot read properties of undefined (reading 'includes')
2025-06-19 14:36:22.973 [info] Deleting local script C:\Users\YONGSH~1\AppData\Local\Temp\cursor_remote_install_93985.sh
2025-06-19 14:36:22.974 [error] Error resolving SSH authority Cannot read properties of undefined (reading 'includes')
2025-06-19 14:36:22.975 [info] (ssh_tunnel) stdout: _SERVER_PIDFILE)"
    else
        # PID file doesn't exist, try to extract PID from running process
        CODE_SERVER_RUNNING_PROCESS="$(ps -o pid,args -A | grep $CODE_SERVER_SCRIPT | grep -v grep | head -1)"
        if [[ -n "$CODE_SERVER_RUNNING_PROCESS" ]]; then
            CODE_SERVER_PID="$(echo "$CODE_SERVER_RUNNING_PROCESS" | awk '{print $1}')"
        else
            print_install_results_and_exit 1 "Code server PID file not found and no running code server process detected" "false"
        fi
    fi

    if [[ -f $MULTIPLEX_SERVER_PIDFILE ]]; then
        MULTIPLEX_SERVER_PID="$(cat $MULTIPLEX_SERVER_PIDFILE)"
    else
        # PID file doesn't exist, try to extract PID from running process
        MULTIPLEX_SERVER_RUNNING_PROCESS="$(ps -o pid,args -A | grep $MULTIPLEX_SERVER_SCRIPT | grep -v grep | head -1)"
        if [[ -n "$MULTIPLEX_SERVER_RUNNING_PROCESS" ]]; then
            MULTIPLEX_SERVER_PID="$(echo "$MULTIPLEX_SERVER_RUNNING_PROCESS" | awk '{print $1}')"
        else
            print_install_results_and_exit 1 "Multiplex server PID file not found and no running multiplex server process detected" "false"
        fi
    fi

    echo "428b23c198586cd7b7f418de: start"
    echo "exitCode==0=="
    echo "nodeExecutable==$SERVER_NODE_EXECUTABLE=="
    echo "errorMessage===="
    echo "isFatalError==false=="
    echo "multiplexListeningOn==$MULTIPLEX_LISTENING_ON=="
    echo "multiplexConnectionToken==$MULTIPLEX_SERVER_CONNECTION_TOKEN=="
    echo "codeListeningOn==$CODE_LISTENING_ON=="
    echo "codeConnectionToken==$CODE_SERVER_CONNECTION_TOKEN=="
    echo "detectedPlatform==$PLATFORM=="
    echo "arch==$SERVER_ARCH=="
    echo "SSH_AUTH_SOCK==$SSH_AUTH_SOC/home/yongshuai_■■■■/.profile: line 1: debug: command not found
bash: debug: command not found
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
Kyongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<40S-4802112:~$ TMP_DIR="${XDG_RUNTIME_DIR:-"/tmp"}"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<R_COMMIT="979ba33804ac150108481c14e0b5cb970bda3260"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ SERVER_LINE="production"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<S-4802112:~$ SERVER_DATA_DIR="$HOME/.cursor-server"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<A_DIR/bin/979ba33804ac150108481c14e0b5cb970bda3260"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<802112:~$ SERVER_NODE_EXECUTABLE="$SERVER_DIR/node"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
< CODE_SERVER_SCRIPT="$SERVER_DIR/bin/cursor-server"
Syongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<LOGFILE="$SERVER_DATA_DIR/.$SERVER_COMMIT.code.log"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<NFILE="$SERVER_DATA_DIR/.$SERVER_COMMIT.code.token"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<PIDFILE="$SERVER_DATA_DIR/.$SERVER_COMMIT.code.pid"
}
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<ATTERN="$SERVER_DATA_DIR/bin/.*/out/server-main.js"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ CODE_LISTENING_ON=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ CODE_SERVER_CONNECTION_TOKEN=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:36:22.979 [info] (ssh_tunnel) stdout: 
<80182a74799f35540e2d611693e0d8ecb19f.multiplex.log"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<182a74799f35540e2d611693e0d8ecb19f.multiplex.token"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<80182a74799f35540e2d611693e0d8ecb19f.multiplex.pid"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<TTERN="$SERVER_DATA_DIR/bin/multiplex-server/.*.js"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ MULTIPLEX_LISTENING_ON=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ SERVER_ARCH=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ SERVER_DOWNLOAD_URL=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ # This is a magic variable
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<12:~$ export VSCODE_AGENT_FOLDER="$SERVER_DATA_DIR"
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ OS_RELEASE_ID=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ ARCH=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ PLATFORM=
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ print_install_results_and_exit() {
>     echo "428b23c198586cd7b7f418de: start"
>     echo "exitCode==$1=="
>     echo "nodeExecutable==$SERVER_NODE_EXECUTABLE=="
>     echo "multiplexListeningOn==$MULTIPLEX_LISTENING_ON=="
e>     echo "multiplexConnectionToken==$MULTIPLEX_SERVER_CONNECTION_TOKEN=="
>     echo "codeListeningOn==$CODE_LISTENING_ON=="
>     echo "errorMessage==$2=="
>     echo "isFatalError==$3=="
 >     echo "codeConnectionToken==$CODE_SERVER_CONNECTION_TOKEN=="
>     echo "detectedPlatform==$PLATFORM=="
>     echo "arch==$SERVER_ARCH=="
al>     echo "SSH_AUTH_SOCK==$SSH_AUTH_SOCK=="
>     echo "428b23c198586cd7b7f418de: end"
>     exit $1
R> }
_Dyongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
Ayongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ print_install_results_and_wait() {
> 
<irst, fallback to extracting from running processes
>     if [[ -f $CODE_SERVER_PIDFILE ]]; then
R>         CODE_SERVER_PID="$(cat $CODE_SERVER_PIDFILE)"
>     else
>         # PID file doesn't exist, try to extract PID from running process
> 
<grep $CODE_SERVER_SCRIPT | grep -v grep | head -1)"
>         if [[ -n "$CODE_SERVER_RUNNING_PROCESS" ]]; then
> 
<"$CODE_SERVER_RUNNING_PROCESS" | awk '{print $1}')"
>         else
.> 
<nd no running code server process detected" "false"
>         fi
>     fi
g > 
>     if [[ -f $MULTIPLEX_SERVER_PIDFILE ]]; then
>         MULTIPLEX_SERVER_PID="$(cat $MULTIPLEX_SERVER_PIDFILE)"
>     else
>         # PID file doesn't exist, try to extract PID from running process
l> 
<$MULTIPLEX_SERVER_SCRIPT | grep -v grep | head -1)"
>         if [[ -n "$MULTIPLEX_SERVER_RUNNING_PROCESS" ]]; then
> 
<TIPLEX_SERVER_RUNNING_PROCESS" | awk '{print $1}')"
>         else
> 
< running multiplex server process detected" "false"
>         fi
 >     fi
> 
>     echo "428b23c198586cd7b7f418de: start"
>     echo "exitCode==0=="
> 
2025-06-19 14:36:22.980 [info] (ssh_tunnel) stdout:     echo "nodeExecutable==$SERVER_NODE_EXECUTABLE=="
>     echo "errorMessage===="
>     echo "isFatalError==false=="
>     echo "multiplexListeningOn==$MULTIPLEX_LISTENING_ON=="
>     echo "multiplexConnectionToken==$MULTIPLEX_SERVER_CONNECTION_TOKEN=="
>     echo "codeListeningOn==$CODE_LISTENING_ON=="
>     echo "codeConnectionToken==$CODE_SERVER_CONNECTION_TOKEN=="
 >     echo "detectedPlatform==$PLATFORM=="
>     echo "arch==$SERVER_ARCH=="
>     echo "SSH_AUTH_SOCK==$SSH_AUTH_SOCK=="
>     echo "428b23c198586cd7b7f418de: end"
>     unlock
qu>     trap - EXIT
> 
<r over ssh, the code server won't have a connection
>     while ps -o pid -A | grep -w $CODE_SERVER_PID >/dev/null 2>&1
>     do
>         sleep 10
>     done
>     echo "Code server process $CODE_SERVER_PID died"
> 
2025-06-19 14:36:22.980 [info] (ssh_tunnel) stdout:     while ps -o pid -A | grep -w $MULTIPLEX_SERVER_PID >/dev/null 2>&1

>     do
 >         sleep 10
>     done
>     echo "Multiplex server process $MULTIPLEX_SERVER_PID died"
>     exit 0
> }
  yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
 yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ get_lockfile() {

2025-06-19 14:36:22.981 [info] (ssh_tunnel) stdout: > 
< | (md5sum 2>/dev/null || md5) | awk '{print $1}')"
> }
c/
2025-06-19 14:36:22.981 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ if [[ "true" == "true" ]]; then
>     echo "Killing all running Cursor servers"
> 
<_ALL_VERSIONS_GREP_PATTERN | grep -v grep || true)"
>     if [[ -z "$CODE_SERVER_RUNNING_PROCESS" ]]; then
>         echo "No running code servers found"
>     fi
>     echo "Killing running code servers: $CODE_SERVER_RUNNING_PROCESS"

2025-06-19 14:36:22.982 [info] (ssh_tunnel) stdout: >     echo "$CODE_SERVER_RUNNING_PROCESS" | while read -r line; do
>         pid=$(echo "$line" | awk '{print $1}')
>         if [[ -n "$pid" ]]; then
>             echo "Killing server process with PID: $pid"
>             kill -9 "$pid"
>         fi
>     done
>     CODE_SERVER_RUNNING_PROCESS=""
>     echo "Killing all running multiplex servers"

2025-06-19 14:36:22.982 [info] (ssh_tunnel) stdout: > 
<_ALL_VERSIONS_GREP_PATTERN | grep -v grep || true)"
> 
2025-06-19 14:36:22.983 [info] (ssh_tunnel) stdout:     if [[ -z "$MULTIPLEX_SERVER_RUNNING_PROCESS" ]]; then
>         echo "No running multiplex servers found"
S>     fi
> 
<ltiplex servers: $MULTIPLEX_SERVER_RUNNING_PROCESS"
>     echo "$MULTIPLEX_SERVER_RUNNING_PROCESS" | while read -r line; do
>         pid=$(echo "$line" | awk '{print $1}')
>         if [[ -n "$pid" ]]; then
> 
2025-06-19 14:36:23.025 [info] (ssh_tunnel) stdout:             echo "Killing server process with PID: $pid"
>             kill -9 "$pid"
67>         fi
>     done
>     MULTIPLEX_SERVER_RUNNING_PROCESS=""
> fi
Killing all running Cursor servers

2025-06-19 14:36:23.062 [info] (ssh_tunnel) stdout: No running code servers found
Killing running code servers: 

2025-06-19 14:36:23.062 [info] (ssh_tunnel) stdout: Killing all running multiplex servers

2025-06-19 14:36:23.126 [info] (ssh_tunnel) stdout: No running multiplex servers found
Killing running multiplex servers: 

2025-06-19 14:36:23.130 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 

2025-06-19 14:36:23.131 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ if [[ 'true' == "true" ]]; then
>     echo "Removing all existing Cursor installations"
> 
2025-06-19 14:36:23.133 [info] (ssh_tunnel) stdout: 
<     $(get_lockfile)         $(get_lockfile).target
> 
N> 
2025-06-19 14:36:23.133 [info] (ssh_tunnel) stdout:     # Don't delete the server we just copied
> 
2025-06-19 14:36:23.133 [info] (ssh_tunnel) stdout: 
<server-461e1891-14a3-473c-b93e-7a79963067bc.tar.gz"
> 
2025-06-19 14:36:23.134 [info] (ssh_tunnel) stdout: 
<14a3-473c-b93e-7a79963067bc.tar.gz)" -delete -print

2025-06-19 14:36:23.135 [info] (ssh_tunnel) stdout: >     echo "Done deleting left behind cursor servers"
> fi
Removing all existing Cursor installations

2025-06-19 14:36:23.147 [info] (ssh_tunnel) stdout: removed '/run/user/2258/cursor-remote-lock.250b54ef7bccab723c0484c84fda78fb'
removed '/run/user/2258/cursor-remote-lock.250b54ef7bccab723c0484c84fda78fb.target'

2025-06-19 14:36:23.147 [info] (ssh_tunnel) stdout: Deleting left behind cursor servers, execpt for /home/yongshuai_■■■■/.cursor-server/cursor-server-461e1891-14a3-473c-b93e-7a79963067bc.tar.gz

2025-06-19 14:36:23.150 [info] (ssh_tunnel) stdout: find: ‘/home/yongshuai_■■■■/.cursor-server’: No such file or directory

2025-06-19 14:36:23.150 [info] (ssh_tunnel) stdout: Done deleting left behind cursor servers
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:36:23.151 [info] (ssh_tunnel) stdout: unlock() {
>     lockfile=$(get_lockfile)
> 
2025-06-19 14:36:23.151 [info] (ssh_tunnel) stdout:     if [ -n "$LOCK_PID" ]; then
>         kill $LOCK_PID 2>/dev/null
>     fi
> 
2025-06-19 14:36:23.152 [info] (ssh_tunnel) stdout:     echo "Unlocking $lockfile"
>     rm -f "$lockfile"
>     rm -f "$lockfile.target"
> }
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
"yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ lock() {
> 
2025-06-19 14:36:23.152 [info] (ssh_tunnel) stdout:     lockfile=$(get_lockfile)
> 
2025-06-19 14:36:23.152 [info] (ssh_tunnel) stdout:     echo "Locking $lockfile"
>     lockAcquired=0
>     for i in {1..30}; do
> 
2025-06-19 14:36:23.152 [info] (ssh_tunnel) stdout:         if [ -f "$lockfile" ]; then
> 
2025-06-19 14:36:23.153 [info] (ssh_tunnel) stdout:             # Check if lock is stale (older than 10 seconds)
>             current_time=$(date +%s)
> 
2025-06-19 14:36:23.153 [info] (ssh_tunnel) stdout:             lock_time=$(cat "$lockfile" 2>/dev/null || echo 0)

2025-06-19 14:36:23.155 [info] (ssh_tunnel) stdout: >             if [ $((current_time - lock_time)) -gt 10 ]; then
> 
2025-06-19 14:36:23.155 [info] (ssh_tunnel) stdout:                 echo "Found stale lock, removing..."
>                 rm -f "$lockfile"
>             fi
>         fi
>         touch "$lockfile.target"
>         ln "$lockfile.target" "$lockfile"
>         if [ $? -eq 0 ]; then
>             lockAcquired=1
> 
2025-06-19 14:36:23.159 [info] (ssh_tunnel) stdout:             # Start a background process to update timestamp
>             while true; do
>                 date +%s > "$lockfile"
>                 sleep 1
>             done &
>             LOCK_PID=$!
>             break
>         fi
>         echo "Install in progress, sleeping for a bit..."
>         sleep 1
>     done
>     if [ $lockAcquired -eq 0 ]; then
> 
< 1 "Could not acquire lock after multiple attempts"

2025-06-19 14:36:23.159 [info] (ssh_tunnel) stdout: >     fi
>     trap unlock EXIT
> }
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
Nyongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ KERNEL="$(uname -s)"

2025-06-19 14:36:23.161 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:36:23.162 [info] (ssh_tunnel) stdout: case $KERNEL in
>     Darwin)
>         PLATFORM="darwin"
>         ;;
>     Linux)
>         PLATFORM="linux"
>         ;;
> 
2025-06-19 14:36:23.162 [info] (ssh_tunnel) stdout:     *)
> 
<and_exit 1 "Platform not supported: $KERNEL" "true"
>         ;;
> esac
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
 yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ ARCH="$(uname -m)"

2025-06-19 14:36:23.163 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:36:23.163 [info] (ssh_tunnel) stdout: case $ARCH in
>     x86_64 | amd64)
>         SERVER_ARCH="x64"
>         ;;
> 
2025-06-19 14:36:23.164 [info] (ssh_tunnel) stdout:     arm64 | aarch64)
>         SERVER_ARCH="arm64"
>         ;;
 >     *)
> 
2025-06-19 14:36:23.164 [info] (ssh_tunnel) stdout: 
<d_exit 1 "Architecture not supported: $ARCH" "true"
>         ;;
> esac
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
Ayongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:36:23.164 [info] (ssh_tunnel) stdout: 
<ase 2>/dev/null | sed 's/^ID=//gi' | sed 's/"//g')"

2025-06-19 14:36:23.169 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ if [[ -z $OS_RELEASE_ID ]]; then
> 
2025-06-19 14:36:23.169 [info] (ssh_tunnel) stdout: 
<ase 2>/dev/null | sed 's/^ID=//gi' | sed 's/"//g')"
>     if [[ -z $OS_RELEASE_ID ]]; then
>         OS_RELEASE_ID="unknown"
>     fi

2025-06-19 14:36:23.175 [info] (ssh_tunnel) stdout: > fi
intyongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
_yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ # Create installation folder
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ mkdir -p $SERVER_DIR

2025-06-19 14:36:23.175 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ if (( $? > 0 )); then
> 
<rror creating server install directory $SERVER_DIR"
> fi
yyongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
syongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<alpine (musl-libc based binary) download, if needed
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<S-4802112:~$ if [[ $OS_RELEASE_ID = alpine ]]; then
>     PLATFORM=$OS_RELEASE_ID
> fi
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<m}/$PLATFORM/g" | sed "s/\${arch}/$SERVER_ARCH/g")"

2025-06-19 14:36:23.178 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ lock

2025-06-19 14:36:23.182 [info] (ssh_tunnel) stdout: Locking /run/user/2258/cursor-remote-lock.250b54ef7bccab723c0484c84fda78fb

2025-06-19 14:36:23.185 [info] (ssh_tunnel) stdout: [1] 740182
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:36:23.185 [info] (ssh_tunnel) stdout: 
<12:~$ # Check if server script is already installed
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:36:23.186 [info] (ssh_tunnel) stdout: 
<-4802112:~$ if [[ ! -f $CODE_SERVER_SCRIPT ]]; then
> 
2025-06-19 14:36:23.186 [info] (ssh_tunnel) stdout:     pushd $SERVER_DIR > /dev/null
> 
<server-1dbfb6d1-5ff1-4266-aab1-1d73866a19e4.tar.gz"
> 
2025-06-19 14:36:23.187 [info] (ssh_tunnel) stdout: 
<1e1891-14a3-473c-b93e-7a79963067bc.tar.gz" ]]; then
> 
2025-06-19 14:36:23.187 [info] (ssh_tunnel) stdout: 
<79963067bc.tar.gz, using it instead of downloading"
> 
2025-06-19 14:36:23.188 [info] (ssh_tunnel) stdout: 
<4a3-473c-b93e-7a79963067bc.tar.gz" $RANDOM_FILENAME
>     else
> 
2025-06-19 14:36:23.188 [info] (ssh_tunnel) stdout:         if [[ 'false' == 'true' ]]; then
> 
<a79963067bc.tar.gz, and local download is disabled"

2025-06-19 14:36:23.189 [info] (ssh_tunnel) stdout: > 
2025-06-19 14:36:23.190 [info] (ssh_tunnel) stdout: 
<ed: Failed to copy server from local client" "true"
>         fi
> 
2025-06-19 14:36:23.190 [info] (ssh_tunnel) stdout:         if [[ ! -z $(which wget) ]]; then
> 
<wget from $SERVER_DOWNLOAD_URL to $RANDOM_FILENAME"
> 
<ogress=dot -O $RANDOM_FILENAME $SERVER_DOWNLOAD_URL
>         elif [[ ! -z $(which curl) ]]; then

2025-06-19 14:36:23.190 [info] (ssh_tunnel) stdout: > 
2025-06-19 14:36:23.191 [info] (ssh_tunnel) stdout: 
<curl from $SERVER_DOWNLOAD_URL to $RANDOM_FILENAME"

2025-06-19 14:36:23.191 [info] (ssh_tunnel) stdout: > 
<-bar --output $RANDOM_FILENAME $SERVER_DOWNLOAD_URL

2025-06-19 14:36:23.191 [info] (ssh_tunnel) stdout: >         else
> 
2025-06-19 14:36:23.192 [info] (ssh_tunnel) stdout: 
< server binary. Please install wget or curl" "true"
>         fi
>         if (( $? > 0 )); then

2025-06-19 14:36:23.192 [info] (ssh_tunnel) stdout: > 
2025-06-19 14:36:23.192 [info] (ssh_tunnel) stdout:             if [[ "$OS_RELEASE_ID" == 'alpine' && 'false' = 'true' ]]; then
> 
2025-06-19 14:36:23.193 [info] (ssh_tunnel) stdout: 
<y fails, and we know that the version is pre-Alpine
> 
2025-06-19 14:36:23.193 [info] (ssh_tunnel) stdout: 
< download to fail if it actually would have worked!
> 
2025-06-19 14:36:23.194 [info] (ssh_tunnel) stdout: 
<n to connect to Alpine-based remote servers" "true"
>             fi
> 
2025-06-19 14:36:23.195 [info] (ssh_tunnel) stdout: 
<wnloading server from $SERVER_DOWNLOAD_URL" "false"
>         fi
>     fi
> 
2025-06-19 14:36:23.195 [info] (ssh_tunnel) stdout:     tar -xf $RANDOM_FILENAME --strip-components 1
>     if (( $? > 0 )); then
> 
2025-06-19 14:36:23.195 [info] (ssh_tunnel) stdout: 
<ract server contents from $RANDOM_FILENAME" "false"

2025-06-19 14:36:23.196 [info] (ssh_tunnel) stdout: >     fi
>     if [[ ! -f $CODE_SERVER_SCRIPT ]]; then
> 
2025-06-19 14:36:23.196 [info] (ssh_tunnel) stdout: 
<ct code server script: $CODE_SERVER_SCRIPT" "false"

2025-06-19 14:36:23.197 [info] (ssh_tunnel) stdout: >     fi
>     rm -f $RANDOM_FILENAME
>     popd > /dev/null
> else
> 
2025-06-19 14:36:23.198 [info] (ssh_tunnel) stdout:     echo "Server script already installed in $CODE_SERVER_SCRIPT"

2025-06-19 14:36:23.198 [info] (ssh_tunnel) stdout: > fi

2025-06-19 14:36:23.199 [info] (ssh_tunnel) stdout: Downloading server via wget from https://cursor.blob.core.windows.net/remote-releases/979ba33804ac150108481c14e0b5cb970bda3260/vscode-reh-linux-x64.tar.gz to cursor-server-1dbfb6d1-5ff1-4266-aab1-1d73866a19e4.tar.gz

2025-06-19 14:36:23.204 [info] (ssh_tunnel) stdout: --2025-06-19 14:36:23--  https://cursor.blob.core.windows.net/remote-releases/979ba33804ac150108481c14e0b5cb970bda3260/vscode-reh-linux-x64.tar.gz

2025-06-19 14:36:23.207 [info] (ssh_tunnel) stdout: Resolving cursor.blob.core.windows.net (cursor.blob.core.windows.net)... 
2025-06-19 14:36:23.283 [info] (ssh_tunnel) stdout: 20.209.35.129
Connecting to cursor.blob.core.windows.net (cursor.blob.core.windows.net)|20.209.35.129|:443... 
2025-06-19 14:36:23.461 [info] (ssh_tunnel) stdout: connected.

2025-06-19 14:36:23.839 [info] (ssh_tunnel) stdout: HTTP request sent, awaiting response... 
2025-06-19 14:36:24.214 [info] (ssh_tunnel) stdout: 200 OK
Length: 68421323 (65M) [application/x-tar]
Saving to: ‘cursor-server-1dbfb6d1-5ff1-4266-aab1-1d73866a19e4.tar.gz’

2025-06-19 14:36:24.215 [info] (ssh_tunnel) stdout: 
     0K .......... .....
2025-06-19 14:36:24.393 [info] (ssh_tunnel) stdout: ..... .......... .......... .......
2025-06-19 14:36:24.574 [info] (ssh_tunnel) stdout: ...  0%  139K 8m1s
    50K .......... .......... .......... .......... ...


part 2 logs:


5-06-19 14:50:55.203 [info] (ssh_tunnel) stdout: ...... .......... 99% 50.0K 0s
2025-06-19 14:50:55.204 [info] (ssh_tunnel) stdout: 
 66800K .......... ......
2025-06-19 14:50:55.438 [info] (ssh_tunnel) stdout: .                                    100% 30.9K=14m31s

2025-06-19 14:50:55 (76.7 KB/s) - ‘cursor-server-1dbfb6d1-5ff1-4266-aab1-1d73866a19e4.tar.gz’ saved [68421323/68421323]


2025-06-19 14:50:56.525 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ echo "Checking node executable"
Checking node executable
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
2025-06-19 14:50:56.539 [info] (ssh_tunnel) stdout: 
<112:~$ if ! $SERVER_NODE_EXECUTABLE --version; then
> 
<DE_EXECUTABLE is not working, checking system node"
>     SYSTEM_NODE=$(which node)
>     if [[ -n "$SYSTEM_NODE" ]]; then
>         echo "System node version: $($SYSTEM_NODE --version)"
> 
<(parseInt(process.version.slice(1)) >= 20 ? 0 : 1)"
>         if [[ $? -eq 0 ]]; then
>             echo "System node version is 20 or higher, creating symlink"
>             ln -sf $SYSTEM_NODE $SERVER_NODE_EXECUTABLE
> 
<mlink from $SERVER_NODE_EXECUTABLE to $SYSTEM_NODE"
>         else
> 
<l NodeJS 20 or higher on your remote system" "true"
>         fi
>     else
> 
<l NodeJS 20 or higher on your remote system" "true"
>     fi
> fi
v20.18.2
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ # Clean up stale builds
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<ITS=$(ls -1 -t "$SERVER_DATA_DIR/bin" | tail -n +6)
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ for OLD_COMMIT in $OLD_COMMITS; do
> 
<_COMMIT | grep -v grep | wc -l | tr -d '[:space:]'`
>     if [[ $IS_RUNNING -eq 0 ]]; then
>         echo "Cleaning up stale build $OLD_COMMIT"
>         if [[ "$OLD_COMMIT" != "$SERVER_COMMIT" ]]; then
> 
</bin/$OLD_COMMIT" "$SERVER_DATA_DIR/.$OLD_COMMIT.*"
>         fi
>     else
>         echo "Build $OLD_COMMIT is still running, skipping"
>     fi
> done
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
Iyongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<02112:~$ # Try to find if server is already running
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<running multiplex server: $MULTIPLEX_SERVER_SCRIPT"
Checking for running multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<2112:~$ if [[ -f $MULTIPLEX_SERVER_PIDFILE ]]; then
>     MULTIPLEX_SERVER_PID="$(cat $MULTIPLEX_SERVER_PIDFILE)"
> 
<TIPLEX_SERVER_PID | grep $MULTIPLEX_SERVER_SCRIPT)"
> else
> 
<-A | grep $MULTIPLEX_SERVER_SCRIPT | grep -v grep)"
> fi

2025-06-19 14:50:56.605 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<ultiplex server: $MULTIPLEX_SERVER_RUNNING_PROCESS"
Running multiplex server: 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
hyongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<OGFILE || ! -f $MULTIPLEX_SERVER_TOKENFILE ]]; then
>     if [[ -f $MULTIPLEX_SERVER_LOGFILE ]]; then
>         rm $MULTIPLEX_SERVER_LOGFILE
>     fi
> 
2025-06-19 14:50:56.612 [info] (ssh_tunnel) stdout:     if [[ -f $MULTIPLEX_SERVER_TOKENFILE ]]; then
>         rm $MULTIPLEX_SERVER_TOKENFILE
>     fi
> 
>     touch $MULTIPLEX_SERVER_TOKENFILE
>     chmod 600 $MULTIPLEX_SERVER_TOKENFILE
> 
<ECTION_TOKEN="798f093c-0069-499c-8047-44db0a04bf4d"
>     echo $MULTIPLEX_SERVER_CONNECTION_TOKEN > $MULTIPLEX_SERVER_TOKENFILE
> 
V> 
<e manually inject it into the extension host later.
> 
<s from being used across ALL connections by default
> 
1>     # Backing it up, NOT exporting it
>     if [[ -n "$SSH_AUTH_SOCK" ]]; then
>         ORIGINAL_SSH_AUTH_SOCK=$SSH_AUTH_SOCK
>         unset SSH_AUTH_SOCK
>     fi
> 
x> 
<tiplex server: $(dirname $MULTIPLEX_SERVER_SCRIPT)"
>     mkdir -p $(dirname "$MULTIPLEX_SERVER_SCRIPT")
>     echo "Writing multiplex server script to $MULTIPLEX_SERVER_SCRIPT"
> 
2025-06-19 14:50:56.706 [info] (ssh_tunnel) stdout: 
<dev/null || base64 -D) > "$MULTIPLEX_SERVER_SCRIPT"
> 
n> 
2025-06-19 14:50:56.706 [info] (ssh_tunnel) stdout: 
<X_SERVER_SCRIPT $MULTIPLEX_SERVER_CONNECTION_TOKEN"

2025-06-19 14:50:56.719 [info] (ssh_tunnel) stdout: > 
<R_CONNECTION_TOKEN"  &> $MULTIPLEX_SERVER_LOGFILE &
>     echo $! > $MULTIPLEX_SERVER_PIDFILE
> 
>     # Restoring the original SSH_AUTH_SOCK
>     if [[ -n "$ORIGINAL_SSH_AUTH_SOCK" ]]; then
>         export SSH_AUTH_SOCK=$ORIGINAL_SSH_AUTH_SOCK
>         unset ORIGINAL_SSH_AUTH_SOCK
>     fi
> else
> 
<ng processes are $MULTIPLEX_SERVER_RUNNING_PROCESS"
> fi
Creating directory for multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server
Writing multiplex server script to /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js
Starting multiplex server: /home/yongshuai_■■■■/.cursor-server/bin/979ba33804ac150108481c14e0b5cb970bda3260/node /home/yongshuai_■■■■/.cursor-server/bin/multiplex-server/6f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.js 798f093c-0069-499c-8047-44db0a04bf4d
[2] 751451
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<plex server token file $MULTIPLEX_SERVER_TOKENFILE"
Reading multiplex server token file /home/yongshuai_■■■■/.cursor-server/.979ba33804ac150108481c14e0b5cb970bda32606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.token
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<12:~$ if [[ -f $MULTIPLEX_SERVER_TOKENFILE ]]; then
>     echo "Multiplex server token file found"
>     MULTIPLEX_SERVER_CONNECTION_TOKEN="$(cat $MULTIPLEX_SERVER_TOKENFILE)"
> else
> 
< token file not found: $MULTIPLEX_SERVER_TOKENFILE"
> fi
Multiplex server token file found
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<ultiplex server log file $MULTIPLEX_SERVER_LOGFILE"
Reading multiplex server log file /home/yongshuai_■■■■/.cursor-server/.979ba33804ac150108481c14e0b5cb970bda32606f1b3e4b3170f5c7e88d1a15ae5c80182a74799f35540e2d611693e0d8ecb19f.multiplex.log
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ for i in {1..20}; do
>     if [[ -f $MULTIPLEX_SERVER_LOGFILE ]]; then
> 
<listening on .+' | sed 's/Server listening on //')"
>         if [[ -n "$MULTIPLEX_LISTENING_ON" ]]; then
>             break
>         fi
>     fi
>     sleep 0.5
> done

2025-06-19 14:50:57.331 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<2112:~$ if [[ -z "$MULTIPLEX_LISTENING_ON" ]]; then
>     echo "Error multiplex server did not start successfully"
>     # Reading the logfile, to help with debugging
>     cat $MULTIPLEX_SERVER_LOGFILE || true
> 
<xit 1 "Multiplex server did not start successfully"
> fi
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ echo "Checking for code servers"
Checking for code servers
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<S-4802112:~$ if [[ -f $CODE_SERVER_PIDFILE ]]; then
>     CODE_SERVER_PID="$(cat $CODE_SERVER_PIDFILE)"
> 
<ep -w $CODE_SERVER_PID | grep $CODE_SERVER_SCRIPT)"
> else
> 
<args -A | grep $CODE_SERVER_SCRIPT | grep -v grep)"
> fi
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<les exists; otherwise we need to start a new server
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<VER_TOKENFILE || ! -f $CODE_SERVER_LOGFILE ]]; then
>     echo "Code server script is not running"
>     if [[ -f $CODE_SERVER_LOGFILE ]]; then
>         rm $CODE_SERVER_LOGFILE
>     fi
>     if [[ -f $CODE_SERVER_TOKENFILE ]]; then
>         rm $CODE_SERVER_TOKENFILE
>     fi
> 
>     touch $CODE_SERVER_TOKENFILE
>     chmod 600 $CODE_SERVER_TOKENFILE
>     CODE_SERVER_CONNECTION_TOKEN="f9823edc-1d39-4103-9237-7572b81d3c53"
>     echo $CODE_SERVER_CONNECTION_TOKEN > $CODE_SERVER_TOKENFILE
> 
> 
<e manually inject it into the extension host later.
> 
<s from being used across ALL connections by default
> 
>     # Backing it up, NOT exporting it
>     if [[ -n "$SSH_AUTH_SOCK" ]]; then
>         ORIGINAL_SSH_AUTH_SOCK=$SSH_AUTH_SOCK
>         unset SSH_AUTH_SOCK
>     fi
> 
> 
<ept-server-license-terms &> $CODE_SERVER_LOGFILE &"
> 
> 
<cept-server-license-terms &> $CODE_SERVER_LOGFILE &
>     echo $! > $CODE_SERVER_PIDFILE
> 
>     # Restoring the original SSH_AUTH_SOCK
>     if [[ -n "$ORIGINAL_SSH_AUTH_SOCK" ]]; then
>         export SSH_AUTH_SOCK=$ORIGINAL_SSH_AUTH_SOCK
>         unset ORIGINAL_SSH_AUTH_SOCK
>     fi
> else
> 
<Running processes are $CODE_SERVER_RUNNING_PROCESS"
> fi
Code server script is not running
Starting code server script /home/yongshuai_■■■■/.cursor-server/bin/979ba33804ac150108481c14e0b5cb970bda3260/bin/cursor-server --start-server --host=127.0.0.1 --port 0  --connection-token-file /home/yongshuai_■■■■/.cursor-server/.979ba33804ac150108481c14e0b5cb970bda3260.code.token --telemetry-level off --enable-remote-auto-shutdown --accept-server-license-terms &> /home/yongshuai_■■■■/.cursor-server/.979ba33804ac150108481c14e0b5cb970bda3260.code.log &
[3] 751481
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<4802112:~$ if [[ -f $CODE_SERVER_TOKENFILE ]]; then
>     CODE_SERVER_CONNECTION_TOKEN="$(cat $CODE_SERVER_TOKENFILE)"
> else
> 
<erver token file not found: $CODE_SERVER_TOKENFILE"
> fi
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ for i in {1..20}; do
>     if [[ -f $CODE_SERVER_LOGFILE ]]; then
> 
<+' | sed 's/Extension host agent listening on //')"
>         if [[ -n "$CODE_LISTENING_ON" ]]; then
>             break
>         fi
>     fi
>     sleep 0.5
> done

2025-06-19 14:50:57.765 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ 
<S-4802112:~$ if [[ -z "$CODE_LISTENING_ON" ]]; then

2025-06-19 14:50:57.765 [info] (ssh_tunnel) stdout: >     echo "Error code server did not start successfully"
>     # Reading the logfile, to help with debugging
>     cat $CODE_SERVER_LOGFILE || true
> 
< 1 "Code server did not start successfully" "false"
> fi

2025-06-19 14:50:57.773 [info] (ssh_tunnel) stdout: yongshuai_■■■■@ubuntu-GPU-L40S-4802112:~$ print_install_results_and_wait


Anybody can help me!!! THKs

Hi @HPUedCSLearner – it still looks like the logs are getting malformed. They should look something like this: https://forum.cursor.com/uploads/short-url/zqytJjlK77AOVrHR1fli6vNV8w3.txt

It’s possible that something is intercepting the bash commands, which is preventing the server from starting.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.