본문으로 건너뛰기

Cursor 터미널 중단 및 멈춤 문제 해결

Cursor Terminal Hang

Cursor의 통합 터미널은 때때로 중단되거나 멈추거나 명령 실행에 응답하지 않을 수 있습니다. 이 가이드는 체계적인 진단 및 수정 방법을 제공합니다.

일반적인 증상​

증상설명
터미널 무응답명령을 입력해도 출력이 없음
명령 중단명령이 시작되었지만 완료되지 않음
커서 멈춤터미널 커서가 깜박이지 않음
셸 시작 실패터미널이 열리지만 셸이 로드되지 않음
높은 CPU 사용량터미널 프로세스가 많은 CPU를 소비함

빠른 수정​

방법 1: 터미널 다시 시작​

# Cursor에서
1. 터미널 패널 오른쪽 상단의 휴지통 아이콘 클릭
2. 또는 단축키 Cmd/Ctrl + Shift + P
3. "Terminal: Kill Terminal" 입력
4. Ctrl + `로 터미널 다시 열기

방법 2: 셸 유형 전환​

# 명령 팔레트 열기 (Cmd/Ctrl + Shift + P)
# "Terminal: Select Default Profile" 입력
# 다른 셸 선택:
# - Windows: PowerShell -> Git Bash -> CMD
# - macOS: zsh -> bash
# - Linux: bash -> zsh

방법 3: 셸 통합 비활성화​

// 설정 열기 (Cmd/Ctrl + ,)
// "terminal integrated shell integration" 검색
{
"terminal.integrated.shellIntegration.enabled": false
}

심층 진단​

확인 1: 문제가 되는 셸 식별​

# 현재 사용 중인 셸 확인
echo $SHELL

# 셸 버전 확인
$SHELL --version

# 셸이 응답하는지 테스트
$SHELL -c "echo test"

확인 2: 셸 구성 파일 확인​

# 구성 파일에 오류가 없는지 확인
# Bash
bash -n ~/.bashrc
bash -n ~/.bash_profile

# Zsh
zsh -n ~/.zshrc
zsh -n ~/.zprofile

# PowerShell
# PowerShell에서 실행:
Test-Path $PROFILE

확인 3: 최소 환경 테스트​

# 깨끗한 환경에서 셸 시작
# Bash
env -i HOME=$HOME TERM=$TERM bash --norc --noprofile

# Zsh
env -i HOME=$HOME TERM=$TERM zsh -f

# 최소 환경에서 정상 작동하면 구성 파일에 문제가 있음

셸별 수정​

Bash 수정​

# 문제: .bashrc에 중단 명령이 있음
# 수정: 의심스러운 줄을 주석 처리

# ~/.bashrc 편집
# 다음을 찾아서 주석 처리:
# - 대화형 명령(vim, nano 등)
# - 입력이 필요한 명령
# - 장기 실행 명령
# - 문제가 있는 별칭

# 일반적인 문제 구성:
# ❌ .bashrc에 넣지 마세요:
# eval "$(ssh-agent -s)" # 중단될 수 있음
# some-command & # 백그라운드 프로세스가 문제를 일으킬 수 있음
# read -p "Press enter" # 대화형 입력은 터미널을 중단시킴

# ✅ 안전한 대안:
# 대화형 명령은 .bash_profile에 넣으세요
# 또는 조건문 사용:
if [ -z "$PS1" ]; then
# 비대화형, 건너뛰기
return
fi

Zsh 수정​

# 문제: Oh-My-Zsh 플러그인이 중단 유발
# 수정: 문제가 있는 플러그인 비활성화

# ~/.zshrc 편집
plugins=(
git
# 다음 문제가 있는 플러그인 비활성화:
# nvm # Node가 설치되지 않은 경우 중단될 수 있음
# pyenv # Python이 설치되지 않은 경우 중단될 수 있음
# rbenv # Ruby가 설치되지 않은 경우 중단될 수 있음
)

# 문제: 프롬프트 테마 실행이 느림
# 수정: 간단한 테마로 전환
ZSH_THEME="robbyrussell" # 빠른 테마
# ZSH_THEME="powerlevel10k/powerlevel10k" # 느릴 수 있음

# 문제: nvm 자동 로드가 느림
# 수정: 지연 로드
lazy_load_nvm() {
unset -f npm node nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
}
npm() { lazy_load_nvm; npm "$@"; }
node() { lazy_load_nvm; node "$@"; }

PowerShell 수정​

# 문제: Profile 스크립트가 중단됨
# 수정: PowerShell Profile 확인

# 현재 프로필 확인
$PROFILE

# 프로필이 원인인지 테스트
pwsh -NoProfile

# 프로필 없이 정상 작동하면,
# 프로필을 편집하여 문제가 있는 줄을 주석 처리:
# notepad $PROFILE

# 일반적인 문제 구성:
# ❌ 프로필에 넣지 마세요:
# Start-SomeLongCommand
# 문제가 있는 모듈 Import-Module
# 실행이 느린 사용자 지정 프롬프트 함수

# ✅ 지연 로드 사용
function prompt {
# 지연 초기화
if (-not $global:PromptInitialized) {
$global:PromptInitialized = $true
# 느린 작업은 여기에
}
"> "
}

Cursor 특정 수정​

수정 1: Cursor 업데이트​

# 최신 버전을 사용하고 있는지 확인
# 도움말 -> 업데이트 확인
# 또는 단축키 Cmd/Ctrl + Shift + P -> "Check for Updates"

수정 2: 터미널 캐시 지우기​

# 모든 터미널 닫기
# Cursor 캐시 지우기:

# macOS
rm -rf ~/Library/Application\ Support/Cursor/Cache

# Windows
# %APPDATA%\Cursor\Cache 삭제

# Linux
rm -rf ~/.config/Cursor/Cache

수정 3: 터미널 설정 재설정​

// settings.json 열기 (Cmd/Ctrl + Shift + P -> "Preferences: Open Settings JSON")
// 터미널 관련 설정 재설정:
{
"terminal.integrated.shellIntegration.enabled": true,
"terminal.integrated.defaultProfile.osx": "zsh",
"terminal.integrated.defaultProfile.windows": "PowerShell",
"terminal.integrated.defaultProfile.linux": "bash",
"terminal.integrated.enablePersistentSessions": false,
"terminal.integrated.gpuAcceleration": "off"
}

수정 4: GPU 가속 비활성화​

// 터미널 렌더링에 문제가 있는 경우 GPU 가속 비활성화
{
"terminal.integrated.gpuAcceleration": "off"
}

수정 5: 터미널 시간 초과 조정​

// 명령 시간 초과 시간 증가
{
"terminal.integrated.shellIntegration.commandTimeout": 5000,
"terminal.integrated.shellIntegration.commandFinishedTimeout": 5000
}

환경별 문제​

Windows 특정 문제​

# 문제: Windows Defender가 스크립트 검색
# 수정: 제외 항목 추가
# Windows 보안 -> 바이러스 및 위협 방지 -> 제외
# Cursor 설치 디렉터리 추가

# 문제: ConPTY 문제
# 수정: 레거시 콘솔 사용
{
"terminal.integrated.windowsEnableConpty": false
}

# 문제: PowerShell 실행 정책
# 수정: 실행 정책 확인
Get-ExecutionPolicy
# 필요한 경우 RemoteSigned로 설정(관리자로):
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

macOS 특정 문제​

# 문제: macOS 터미널 권한
# 수정: 터미널 권한 확인
# 시스템 환경 설정 -> 보안 및 개인정보 보호 -> 개인정보 보호 -> 전체 디스크 접근 권한
# Cursor가 추가되었는지 확인

# 문제: Rosetta 변환 문제 (Apple Silicon)
# 수정: 네이티브 아키텍처 사용
# Cursor에서 x86_64 버전의 Node/도구 사용 시
arch -x86_64 zsh

# 문제: zsh 권한
# 수정: zsh 권한 확인
chmod 755 /bin/zsh
chmod 755 /usr/local/bin/zsh # Homebrew로 설치한 경우

Linux 특정 문제​

# 문제: 종속성 누락
# 수정: 필요한 패키지 설치
# Ubuntu/Debian
sudo apt-get install -y libnss3 libgtk-3-0 libxss1 libasound2

# Fedora
sudo dnf install -y nss gtk3 libXScrnSaver alsa-lib

# 문제: Wayland 문제
# 수정: X11 사용
# Cursor 시작 시:
CURSOR_USE_WAYLAND=0 cursor

# 또는 settings.json에서:
{
"terminal.integrated.gpuAcceleration": "off"
}

고급 진단​

디버그 로그 활성화​

// 터미널 디버깅 활성화
{
"terminal.integrated.logLevel": "trace"
}

# 로그 확인
# 도움말 -> 개발자 도구 전환 -> Console 탭
# [terminal]로 시작하는 메시지 찾기

프로세스 트리 확인​

# 중단된 터미널 프로세스 찾기
# macOS/Linux
ps aux | grep -i cursor
pstree -p | grep cursor

# Windows (PowerShell)
Get-Process | Where-Object { $_.ProcessName -like "*cursor*" }
# 또는 Process Explorer 사용

# 특정 프로세스 강제 종료
kill -9 <PID> # macOS/Linux
Stop-Process -Id <PID> # Windows

파일 설명자 확인​

# 터미널이 입력 대기로 중단되지 않았는지 확인
# macOS/Linux
lsof -p <PID> | grep -E "(FIFO|PIPE)"

# 열린 TTY 확인
ls -la /proc/<PID>/fd/ | grep tty

예방 조치​

구성 모범 사례​

# 셸 구성에서 시간 초과 사용
# Bash
timeout_cmd() {
timeout 5s "$@" || echo "Command timed out"
}

# Zsh
set -o pipefail
set -e

# 재귀 별칭 피하기
alias ls='ls --color=auto' # 안전
# alias ls='ls -la' # 위험! 재귀

정기 유지 관리​

# 월별 정리
# 1. 터미널 기록 지우기
history -c && history -w

# 2. 임시 파일 삭제
rm -rf /tmp/*
rm -rf ~/.cache/cursor/*

# 3. 도구 업데이트
# macOS (Homebrew)
brew update && brew upgrade

# Ubuntu/Debian
sudo apt-get update && sudo apt-get upgrade

# 4. 구성 파일 구문 확인
bash -n ~/.bashrc
zsh -n ~/.zshrc

버그 보고 시기​

위의 방법이 모두 효과가 없으면 Cursor 팀에 보고하세요:

  1. 정보 수집:

    # Cursor 버전
    # 도움말 -> 정보

    # 운영 체제 버전
    # macOS: sw_vers
    # Windows: winver
    # Linux: lsb_release -a

    # 셸 버전
    $SHELL --version

    # 터미널 디버그 로그
    # 활성화 후 문제를 재현하고 로그를 내보내기
  2. GitHub에 이슈 제출:

    • 재현 단계 포함
    • 관련 구성 첨부
    • 운영 체제 정보 제공
    • 오류 스크린샷 포함

관련 리소스​