Visual Studio Code를 열 수 없습니다


10

Ubuntu 16.04 LTS가 설치된 랩톱에 VS Code를 설치했습니다. 동일한 결과로 여러 설치 방법을 시도했습니다. 가장 최근에는 Cactux의 "new"지침을 따르고 있습니다 . 응용 프로그램을 두 가지 방법으로 열어 보았습니다.

  • '응용 프로그램'에서 프로그램을 열면 아이콘이 약 15 초 동안 실행기에 표시되고 사라집니다. 오류가 나타나지 않습니다.
  • 터미널을 열고 type을 입력 code하면 명령이 아무 것도 수행하지 않고 1 초 안에 새 프롬프트가 표시됩니다.

Linux를 처음 접한 이후로 무엇을 시도해야하는지 고민하고 있습니다. which codeyield /usr/bin/code, 이것은 bash 스크립트입니다. 이곳은 내가 깊이 벗어난 곳입니다.

스크립트의 내용

/usr/bin$ cat code
#!/usr/bin/env bash
#
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.

# If root, ensure that --user-data-dir or --file-write is specified
if [ "$(id -u)" = "0" ]; then
    for i in $@
    do
        if [[ $i == --user-data-dir || $i == --user-data-dir=* || $i == --file-write ]]; then
            CAN_LAUNCH_AS_ROOT=1
        fi
    done
    if [ -z $CAN_LAUNCH_AS_ROOT ]; then
        echo "You are trying to start vscode as a super user which is not recommended. If you really want to, you must specify an alternate user data directory using the --user-data-dir argument." 1>&2
        exit 1
    fi
fi

if [ ! -L $0 ]; then
    # if path is not a symlink, find relatively
    VSCODE_PATH="$(dirname $0)/.."
else
    if which readlink >/dev/null; then
        # if readlink exists, follow the symlink and find relatively
        VSCODE_PATH="$(dirname $(readlink -f $0))/.."
    else
        # else use the standard install location
        VSCODE_PATH="/usr/share/code"
    fi
fi

ELECTRON="$VSCODE_PATH/code"
CLI="$VSCODE_PATH/resources/app/out/cli.js"
ELECTRON_RUN_AS_NODE=1 "$ELECTRON" "$CLI" "$@"
exit $?

다른 디렉토리의 디버그 출력

~$ bash -x code
++ id -u
+ '[' 1000 = 0 ']'
+ '[' '!' -L code ']'
++ dirname code
+ VSCODE_PATH=./..
+ ELECTRON=./../code
+ CLI=./../resources/app/out/cli.js
+ ELECTRON_RUN_AS_NODE=1
+ ./../code ./../resources/app/out/cli.js
/usr/bin/code: line 35: ./../code: No such file or directory
+ exit 127

/usr/bin$ bash -x code
++ id -u
+ '[' 1000 = 0 ']'
+ '[' '!' -L code ']'
+ which readlink
+++ readlink -f code
++ dirname /usr/share/code/bin/code
+ VSCODE_PATH=/usr/share/code/bin/..
+ ELECTRON=/usr/share/code/bin/../code
+ CLI=/usr/share/code/bin/../resources/app/out/cli.js
+ ELECTRON_RUN_AS_NODE=1
+ /usr/share/code/bin/../code /usr/share/code/bin/../resources/app/out/cli.js
+ exit 0

PATH의 내용

~$ $PATH
bash: /home/adam/anaconda3/bin:/home/adam/anaconda3/bin:/home/adam/bin:/home/adam/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin: No such file or directory

도움이나 제안을 부탁드립니다.


1
패키지를 업데이트했는지 확인하십시오. 다음 명령으로이를 확인할 수 있습니다. 1) sudo apt update 2) sudo apt upgrade . 오류가 발생하면 오류를 해결하십시오. 그런 다음 터미널에서 apt를 실행하고 오류가 있는지 확인하십시오.
LD James

만이````코드를 실행 스냅``나를 위해 일한
토마스 G.

답변:


14

여기에 설명 된 것과 동일한 문제가 있습니다. Ubuntu 18.04 LTS를 새로 설치했습니다. 콘다에서 VS 코드를 설치했습니다.

다음을 실행하면

code --verbose

Code로 무슨 일이 일어나고 있는지 알려줄 것입니다. 나의 경우에는

code --verbose
[main 20:19:26] Startup error: 
Error: EACCES: permission denied, mkdir '/home/<user>/.config/Code/CachedData'

~ / .config / Code 폴더에 어떤 이유로 루트 액세스 권한이 있는지 확인하십시오. sudo를 사용하여 폴더를 삭제했습니다.

rm -rf /home/<user>/.config/Code 

코드를 실행하기 위해 다시 시도했지만 정상적으로 작동합니다.


4

나는 같은 문제가 있었다. Robin G와 Nezir이 제안한 것처럼 /home/user/.config/Code driectory의 소유자는 "루트"임을 깨달았습니다. 그러나 디렉토리를 제거하는 대신 해당 디렉토리의 소유권을 변경할 수 있습니다.

sudo chown -R user /home/user/.config/Code

대상 디렉토리 아래의 모든 파일 및 디렉토리의 소유권을 재귀 적으로 변경하려면 "-R"옵션이 필요합니다.

이 후 우분투 18.04의 Visual Studio Code v. 1.27은 내 컴퓨터에서와 같이 작동합니다.


최소한 새로운 것을 배웠습니다 : chowncommand
Soma Mbadiwe

2

올바른 명령으로 bash를 디버그하십시오.

디버깅하려면 다음 명령을 사용해야합니다.

bash --debugger `which code`

이것은 라인 당 bash 스크립트 라인을 실행합니다. 다음 줄로 가려면 간단히 n을 입력 하고를 반환하십시오 . 우리가 볼 수있는 것보다 출력을 게시하십시오.

스냅을 통해 설치 (Ubuntu 버전> 18.04)

BTW Ubuntu 18.04 LTS (Long term release)는 이제 코드를 직접 지원하며 스냅 패키지를 통해 코드를 설치할 수 있습니다.

우분투 지원 스냅의 버전 및 정보 표시 :

snap info code

설치

sudo snap install code 

나는 개인적으로 apt를 통해 설치 하는 것을 선호 합니다. 따라서 Microsoft의이 지침을 따르십시오.

VS 코드 설치

curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'

이것은 gpg 키를 다운로드하고 apt 파일을 복사하고 만듭니다. 그런 다음 단순히 코드 를 업데이트하고 설치할 수 있습니다 .

sudo apt-get update
sudo apt-get install code
  • 이 설치 방법의 장점은 apt-get update 명령을 사용하여 간단한 업데이트 vscode를 수행 할 수 있다는 것 입니다. 잘 작동 하고 2 년 이상 vim 플러그인 과 함께 vs 코드를 사용합니다 (c, c ++, python, md, latex, html, javascript ...).

주사위가 없습니다. 이 시점에서 나는 실제로 18.04를 기다릴 수 있습니다. 팁 고마워.
Adam



1

터미널을 열고 다음 명령을 실행하십시오.

  1. sudo rm -rf /home/your_username/.config/Code

    your_username실제 사용자 이름으로 바꿉니다 .

    그런 다음 비밀번호를 입력하고을 누릅니다 Enter.

  2. code --verbose



0
code --verbose

X 시스템 충돌 후 코드 시작에 실패했을 때 혼자 나를 위해 트릭을 수행했습니다. 그러나 열린 파일은 가장 최신이 아니라 일부 오래된 파일이었습니다.


0

내 경우 code --verbose오류를 실행했을 때 :

오류 : ENOSPC : 파일 감시자 수에 대한 시스템 제한에 도달했습니다. '/ snap / code'감시

그래서 파일 /etc/sysctl.conf끝에 이것을 수정 하고 추가하여 파일 감시자 수를 최대로 늘 렸습니다 .

fs.inotify.max_user_watches=524288

그런 다음이 명령을 실행하여 시스템에 값을로드해야했습니다.

sudo sysctl -p

이제 아무런 문제없이 VScode를 실행할 수 있습니다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.