이 영역을 누르면 첫 페이지로 이동
Coding Groot 블로그의 첫 페이지로 이동

Coding Groot

페이지 맨 위로 올라가기

[WSL1/WSL2] 홈 디렉터리 위치 :: WSL 홈으로 Windows 파일 옮기기

Coding Groot

[WSL1/WSL2] 홈 디렉터리 위치 :: WSL 홈으로 Windows 파일 옮기기

  • 2020.05.16 17:05
  • DevOps, Infra/Linux
글 작성자: Coding Groot

WSL1에서 C드라이브에 접근해보자

Windows의 드라이브들은 /mnt 디렉터리에 마운트되어 있다.

mnt를 살펴보자

C드라이브에 접근해보자.

cd /mnt/c
C드라이브 확인

OS Error 13은 파일 시스템의 권한 문제가 생겼을 때 발생합니다.

보시다시피 권한 문제가 발생할 수 있으니 조심해야 한다.

Windows에서 WSL1으로 접근해보자

Windows에서는 아래의 Packages 폴더 안의 어딘가에 WSL1이 위치한다.

C:\Users\[사용자명]\AppData\Local\Packages\

내가 깐 배포판명이 포함된 폴더가 그 배포판의 WSL이 실제로 위치하는 경로이다.

만약 Ubuntu 깔았다면 Packages폴더 아래에 Ubuntu라는 단어가 들어간 폴더명이 보일 것이다. 바로 그 폴더가 Ubuntu WSL의 위치다.

Ubuntu WSL의 위치

그 경로에서 LocalState 폴더 안의 rootfs 폴더가 바로 WSL1의 Root와 동일한 경로이다.

C:\Users\[사용자명]\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs
Ubuntu WSL의 Root

따라서 Ubuntu WSL1의 디렉터리는 윈도우의 아래의 경로에 있는 폴더와 같다.

C:\Users\[사용자명]\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\[우분투사용자명]

발생할 수 있는 파일의 권한 문제

WSL에서 C 드라이브로 접근했을 때처럼 권한 문제가 발생한다. Windows 폴더를 열어서 강제로 WSL1 경로에 파일을 붙여 넣으면 서로 다른 OS여서 그런지 권한이 자주 꼬인다. 그렇기 때문에 다른 파일 시스템을 쓰는 OS에서 (Windows가 예상하지 못하는 방법으로) 옮기는 경우 권한 문제를 주의하자.

Windows에서 생성한 파일을 Ubuntu WSL 경로로 Windows 탐색기를 이용해서 직접 옮겨보자

문제가 발생하는 상황
  1. Windows에서 텍스트 파일을 생성해보자
Window에서 NewFile.txt를 생성한다
  1. 생성한 파일을 Windows에서 Ubuntu WSL 홈 폴더 아래에 옮겨보자
NewFile.txt를 Window에서 WSL 홈 경로에 옮겼다

이때 Ubuntu WSL을 켜서 NewFile.txt의 권한을 확인해보면?

NewFile.txt의 권한이 이상하다!!

Windows 파일을 그냥 옮겨왔기 때문에 위와 같이 아무런 권한이 존재하지 않는다.

  1. 권한이 저렇기 때문에 WSL에서 그 파일을 열거나 수정하지 못한다.
권한이 거부된다
권한 문제의 해결법

꼬인 권한은 chmod 명령어로 다시 부여해서 해결할 수 있다.

한번 모든 권한을 부여하고 읽어보자.

  1. 777 권한 부여
모든 권한을 부여했다
NewFile.txt에 모든 권한을 부여했다
  1. 이제 NewFile.txt를 읽어보자!
성공적으로 읽었다.

출력된 텍스트 마지막에 "%"는 Windows의 Line Ending(CRLF)을 리눅스에서 읽으려고 해서 깨진 것이다.

이제는 NewFile.txt의 내용을 정상적으로 출력할 수 있다.

추천하는 방법

위와 같이 윈도우 상에서 그냥 WSL1 경로로 파일을 옮기면 권한이 이상해진다.

WSL1을 실행한 후에 마운트된 /mnt/c에서부터 WSL 홈으로 복사하자.

WSL에서 copy하면 큰 문제가 없다

WSL2의 경로를 Windows 탐색기로 열어보자

WSL1과 다르게 WSL2는 Windows에서 직접 이동해서 사용할 수 없다. 존재하는 위치는 위의 방법과 같은 방법으로 찾을 수 있지만 파일 공유 프로토콜이 달라져서 그런지 직접적으로 사용하진 못한다.

직접 이동해서는 사용하지 못하고 다른 방법을 사용해야 한다. 바로 네트워크 연결을 통해서 여는 방법이다. 윈도우의 파일탐색기(explorer.exe)를 호출해서 한방에 열 수 있다. 

현재 Working Directory를 네크워크를 통해 Windows 탐색기로 여는 방법

아래의 명령어를 WSL에서 실행하면 현재 작업 중인 위치를 네트워크 연결을 통해서 Windows에서 열어준다.

explorer.exe .

explorer.exe는 Windows 탐색기이고 그 옆에.은 현재 Directory를 뜻한다. 합하면 Windows 탐색기로 내 현재 작업 위치를 열어주라는 명령어이다.

반응형

댓글

댓글을 사용할 수 없습니다.

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

  • Terminal과 Shell

    Terminal과 Shell

    2022.04.08
  • Vim에서 Vundle 삭제하기

    Vim에서 Vundle 삭제하기

    2021.03.31
  • [리눅스] apt, apt-get의 사용법 비교

    [리눅스] apt, apt-get의 사용법 비교

    2020.05.01
  • [리눅스] scp 기본 사용법

    [리눅스] scp 기본 사용법

    2020.04.15
다른 글 더 둘러보기

정보

Coding Groot 블로그의 첫 페이지로 이동

Coding Groot

  • Coding Groot의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록
  • 소개
  • 블로그 저작권

카테고리

  • 분류 전체보기 (182)
    • Git (23)
      • Git Tutorial (9)
      • Git Note (7)
      • Git Lecture (7)
    • Programming Language (1)
      • C (2)
      • C Sharp (5)
      • Java (4)
      • JavaScript (7)
      • Julia (5)
      • Python (4)
    • Programming (8)
      • Algorithm (2)
      • Compiler (5)
      • Data Structure (0)
      • Web (12)
      • NestJS (2)
    • DevOps, Infra (36)
      • Apple (6)
      • Cloud (15)
      • Database (1)
      • Network (4)
      • Linux (8)
    • Game Programming (11)
      • Unity Tutorial (5)
      • Unity Note (6)
    • Hardware Design (1)
      • Digital Circuit (1)
    • Note (49)
      • Coffee (2)
      • Retrospect (15)
      • Reading List (14)
    • Mathematics (1)

인기 글

공지사항

태그

  • Github
  • javascript
  • tutorial
  • git
  • 서평
  • 한빛미디어
  • 회고
  • aws
  • 전체 보기…

정보

Coding Groot의 Coding Groot

Coding Groot

Coding Groot

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기

나의 외부 링크

  • GitHub
  • SlideShare
  • 유니티 2020 수업
  • TIL Blog
  • 모도코

방문자

  • 전체 방문자
  • 오늘
  • 어제
Powered by Tistory / Kakao. Copyright © Coding Groot.

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.