루트로 Visual Studio Code를 실행하는 방법


38

최근에 Visual Studio Code 편집기를 설치했습니다. 32 비트 .deb 패키지를 다운로드했습니다. 정상적으로 설치되고 실행되지만 프로젝트 폴더에 파일을 저장하려고하면 권한 거부가 반환됩니다. 그래서 코드를 다시 실행합니다.

sudo code .

그리고 그것은 반환

It is recommended to start vscode as a normal user.
To run as root, you must specify an alternate user data directory with the --user-data-dir argument.

--user-data-dir인수 로 대체 사용자 데이터 디렉토리를 지정하는 방법을 찾았 지만 많이 찾지 못했습니다.

그렇다면 우분투 16.04에서 루트로 Visual Studio Code를 어떻게 실행합니까?

편집 : 디렉토리 권한 변경을 피하는 솔루션을 선호합니다.

edit2 : 프로젝트 디렉토리 : /var/www/project(vhost와 함께 Apache를 사용하고 있습니다)


6
프로젝트 폴더에 대한 권한을 설정하여 저장할 수있는 이유는 무엇입니까?
TheWanderer

2
왜 루트로 코드를 실행하고 싶은지 이해가되지 않습니다. 이것은 잠재적으로 위험합니다. 파일을 저장할 수없는 실제 이유를 파악해야합니다.
edwinksl

1
프로젝트 폴더는 어디에?
Nuwan Thisara

1
@Nuwan /var/www/project(vhost와 함께 Apache를 사용하고 있습니다)
wdarking

답변:


52

그러나 VScode를 다른 응용 프로그램처럼 루트로 실행하는 것은 매우 위험합니다.

코드를 실행할 때 사용할 사용자 데이터 디렉토리를 지정해야합니다.

sudo code --user-data-dir="~/.vscode-root"

그런 다음 창에서 프로젝트 폴더를 열 수 있습니다

다시 : 권장하지 않습니다. 즐기세요

2018 년 5 월 업데이트

이것이 권장되지 않는 이유를 묻는 모든 사람들에게 왜 sudo존재 하는지 이해하지 못합니다 . 에서 이 AskUbuntu 질문 :

수년 동안 존재 해 온 보안 모델을 물리칩니다. 응용 프로그램은 비 관리 보안 (또는 단순한 필사자)으로 실행되므로 기본 시스템을 수정하려면 해당 권한을 상승시켜야합니다. 예를 들어, 버그로 인해 최근에 발생한 Rhythmbox 충돌로 인해 전체 / usr 디렉토리가 지워지는 것을 원하지 않을 것입니다. 또는 공격자가 ROOT 셸을 얻을 수 있도록 ProFTPD에 게시 된 취약점.

모든 운영 체제에서 응용 프로그램을 사용자 수준에서 실행하고 관리 작업을 루트 사용자에게 맡기고 필요한 경우에만 사용하는 것이 좋습니다.

나는 VSCode를 루트로 사용해서는 안된다고 말하는 것이 아닙니다.

가장 좋은 방법은 제한된 파일의 복사본을 만들어 편집 한 다음 파일이 끝났 으면 다시 복사하는 것입니다.

또한 사용자에게 권한이없는 파일을 편집하려면 파일을 저장할 때마다 권한을 묻는 Talha Junaid의 답변을 권장합니다. 이 답변을 쓸 때 루트 액세스에 대한 프롬프트가 없었습니다.


4
VScode를 루트로 실행하지 않는 이유는 무엇입니까? 예를 들어 호스트에서 무언가를 변경하는 방법은 무엇입니까? 루트 권한이 필요하지 않습니까?
zwitterion

1
감사합니다 : 이제 루트로 실행중인 하나의 VSCode 창이 있고 루트로 다른 vscode 창을 시작하고 싶습니다. 가능합니까?
RLaaa

1
가능합니다. 다른 터미널을여십시오.
Lucas DAW

3
@MarcoDufal 절대로 아닙니다. 이것은 끔찍한 생각입니다. 특히 OS 파일로 작업 할 때는 권한을 절대로 777로 설정하지 않아야합니다. 즉, 시스템을 시작한 사람 / 대상 또는 수행 할 수있는 대상에 관계없이 시스템의 모든 항목이 해당 파일 및 폴더 세트를 수정할 권한이 있음을 의미합니다. 기껏해야 파일을 "소유"해야하므로 755 권한에 가까운 권한으로 파일을 편집 할 수 있습니다.
zawata

3
@zawata 당신은 완벽하게 맞아요! 실례합니다 고마워요!
Marco Dufal

13

단일 파일을 변경하려는 경우 다음 방법을 선호합니다.

  • 일반 사용자로 vs 코드를 실행하십시오.
  • 파일을 변경하다
  • File -> Save 또는 Ctrl + S
  • 오른쪽 하단에 vs 코드가 오류를 표시합니다.

    'grub'을 (를) 저장하지 못했습니다 : 권한이 충분하지 않습니다. '관리자로 다시 시도'를 선택하여 관리자로 다시 시도하십시오.

    여기에 이미지 설명을 입력하십시오

  • 를 클릭하십시오 Retry as Admin. 관리자 자격 증명을 요구합니다

    여기에 이미지 설명을 입력하십시오

  • 자격 증명을 입력하고 vs 코드로 파일 저장을 즐기십시오.


1
모든 단일 파일에 대해 매번이 작업을 수행하지 않고도이 작업을 수행 할 수있는 방법이 있습니까? 변경해야 할 수백 개의 파일이 있으며 VS 코드가 계속 암호를 요구합니다. 랩탑을 벽에 댈 준비가되었습니다.
Joshua Kemmerer

그런 다음 위에 주어진 허용 된 답변을 따를 수 있습니다. askubuntu.com/a/820205/367228
Talha Junaid

4

html 폴더에 권한을 부여해야합니다.

터미널에서 사용해보십시오.

sudo chmod -R 777 /var/www/html/

기존 프로젝트 파일 및 폴더의 권한을 확인하십시오.


9
이것은 가장 어리석은 조언입니다. 악의적 인 프로세스가 시스템을 수정하거나 파괴하는 것을 막을 수있는 제한된 권한이 있습니다. 제한된 파일의 사본을 작업 한 다음 완료되면 파일을 복사하거나 설치 스크립트를 작성하여 설치하십시오. 디렉토리와 파일을 소유 한 그룹에 사용자를 추가 할 수도 있습니다.
Soren A

프로젝트 폴더로 cd하고 sudo chmod -R 777 <project_dir_name>을 실행하고 완료
lilhamad

1
프로젝트 폴더에 cd하고 sudo chmod -R 777 <project_dir_name>을 실행하고 완료
lilhamad
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.