본문으로 건너뛰기

Cursor WSL 연결 오류 수정

Cursor WSL Fix

Cursor 3.0.9부터 많은 사용자가 Directory not found: --classic이라는 성가신 WSL 연결 오류를 경험했습니다. 이는 Glass(에이전트) 인터페이스 업데이트 후 Cursor가 사용하는 WSL shim이 손상되기 때문에 발생합니다. 이 가이드는 안정적인 해결 방법을 제공합니다.

문제 이해하기

터미널에서 Cursor로 WSL 폴더를 열려고 할 때 다음과 같은 메시지가 표시될 수 있습니다:

Directory not found: --classic

이는 다음과 같은 이유로 발생합니다:

  • Cursor 3.0.9+에서 Glass(에이전트) 인터페이스가 도입됨
  • WSL shim 스크립트가 제대로 업데이트되지 않음
  • --classic 플래그가 폴더 이름으로 잘못 해석됨

해결 방법: 스마트 래퍼 스크립트 만들기

1단계: Cursor 실행 파일 찾기

Windows에서 Cursor가 설치된 위치를 찾습니다:

# 일반적인 위치:
C:\Users\<username>\AppData\Local\Programs\cursor\Cursor.exe
# 또는
C:\Program Files\Cursor\Cursor.exe

2단계: 래퍼 스크립트 만들기

WSL 홈 디렉터리(~/.local/bin/)에 cursor-wsl이라는 파일을 만듭니다:

mkdir -p ~/.local/bin
cat > ~/.local/bin/cursor-wsl << 'EOF'
#!/bin/bash
# Smart wrapper for Cursor WSL connection
# Fixes the --classic directory error

WINDOWS_CURSOR="/mnt/c/Users/$(cmd.exe /c 'echo %USERNAME%' 2>/dev/null | tr -d '\r')/AppData/Local/Programs/cursor/Cursor.exe"

if [ ! -f "$WINDOWS_CURSOR" ]; then
WINDOWS_CURSOR="/mnt/c/Program Files/Cursor/Cursor.exe"
fi

if [ ! -f "$WINDOWS_CURSOR" ]; then
echo "Error: Could not find Cursor.exe"
echo "Please update WINDOWS_CURSOR path in this script"
exit 1
fi

# Convert WSL path to Windows path
WSL_PATH="$(wslpath -w "$PWD")"

# Launch Cursor with the correct path
"$WINDOWS_CURSOR" --classic "$WSL_PATH" "$@"
EOF

chmod +x ~/.local/bin/cursor-wsl

3단계: PATH에 추가

이것을 ~/.bashrc 또는 ~/.zshrc에 추가합니다:

export PATH="$HOME/.local/bin:$PATH"

그런 다음 다시 로드합니다:

source ~/.bashrc  # 또는 ~/.zshrc

4단계: 편리한 별칭 만들기

셸 설정에 추가합니다:

alias cursor='cursor-wsl'
alias c.='cursor-wsl .'

대체 해결 방법: 직접 Windows 경로 방식

래퍼가 작동하지 않으면 이 직접적인 방법을 사용하세요:

# ~/.bashrc에 추가
cursor() {
local win_path
win_path=$(wslpath -w "${1:-$PWD}")
/mnt/c/Users/$(cmd.exe /c 'echo %USERNAME%' | tr -d '\r')/AppData/Local/Programs/cursor/Cursor.exe --classic "$win_path"
}

수정 사항 확인

설정을 테스트합니다:

# 프로젝트로 이동
cd ~/my-project

# Cursor에서 열기
cursor .

# 또는 별칭 사용
c.

이제 Cursor가 --classic 오류 없이 열려야 합니다.

추가 팁

Cursor 경로 자동 업데이트

Windows 사용자 이름이 변경되거나 Cursor가 이동된 경우:

# Cursor 자동 찾기
find /mnt/c -name "Cursor.exe" -type f 2>/dev/null | head -1

경로의 공백 처리

Windows 사용자 이름에 공백이 있는 경우 경로를 따옴표로 묶습니다:

"$WINDOWS_CURSOR" --classic "$WSL_PATH"

WSL2 특정 설정

WSL2의 경우 /etc/wsl.conf에서 Windows 상호 운용성을 허용하는지 확인하세요:

[interop]
enabled = true
appendWindowsPath = true

그런 다음 WSL을 다시 시작합니다:

wsl --shutdown

문제 해결

문제해결 방법
command not found: cursor-wsl~/.local/bin이 PATH에 있는지 확인하세요
Cursor.exe not found설치 위치와 일치하도록 스크립트의 경로를 업데이트하세요
느린 시작WSL→Windows 상호 운용성의 경우 이는 정상입니다. VS Code Remote WSL 사용을 고려하세요
파일 감시기 문제Cursor 설정에 "files.watcherExclude" 패턴을 추가하세요

관련 리소스