파일 시스템 차이 비교

WSL2에서는 Ubuntu 기준으로 대소문자를 구분하므로 파일명을 정확히 입력해야 합니다.
항목 Ubuntu (WSL2) Windows
기본 구조 / 기반 단일 트리 드라이브 기반 (C:\, D:\)
경로 구분자 / (forward slash) \ (backslash)
드라이브 인식 /mnt/c, /mnt/d C:\, D:\
홈 디렉토리 /home/username C:\Users\username
환경 변수 $HOME, $PATH %USERPROFILE%, %PATH%
실행 여부 권한으로 판단 (chmod) 확장자 기반 (.exe, .bat)
대소문자 구분 구분함 (/home/user/home/User) 구분하지 않음 (C:\Data = C:\DATA)

리눅스의 기본 디렉토리 구조

Ubuntu의 루트 디렉토리(/)는 하나의 트리 구조로 구성되며, 모든 경로는 /에서부터 시작합니다. 주요 디렉토리의 역할은 다음과 같습니다:

디렉토리 설명
/ 루트 디렉토리. 최상위 경로로서 모든 경로의 시작점
/home 일반 사용자 계정의 홈 디렉토리 (/home/username)
/etc 설정 파일 및 시스템 환경 구성 파일
/var 로그 및 실행 중 생성되는 가변 데이터 (/var/log, /var/tmp 등)
/usr 사용자 공간 프로그램 및 라이브러리 (/usr/bin, /usr/lib 등)
/bin, /sbin 기본 명령어가 포함된 디렉토리 (ls, cp, sudo, mount 등)
/tmp 임시 파일 저장소 (재부팅 시 초기화됨)

예시: 사용자 홈 디렉토리

shell
pwd
# 출력 예: /home/devuser

Windows와 WSL2의 파일 경로 연동 (WSL2)

WSL2 환경에서는 Windows와 Linux 파일 시스템이 서로 접근 가능합니다. 이 구조를 이해하면, Windows에서 만든 파일을 Ubuntu에서 불러오거나, Ubuntu에서 처리한 결과를 바로 Windows에서 확인할 수 있습니다. WSL2 환경에서는 Windows 파일 시스템이 /mnt/ 하위 경로에 자동으로 마운트됩니다.

Windows 경로 Ubuntu (WSL2) 경로
C:\Users\Samlee\Desktop\test.txt /mnt/c/Users/Samlee/Desktop/test.txt
D:\data\model /mnt/d/data/model

① Linux에서 Windows 폴더 접근하기: /mnt/c/...

Ubuntu 내부에서 Windows 폴더에 접근하려면, /mnt/c/, /mnt/d/ 등의 마운트 지점을 이용합니다.

예:

shell
cd /mnt/c/Users/YourUser/Documents
ls
  • Windows의 C:\Users\YourUser\Documents 경로에 해당
  • 역슬래시()는 사용하지 않으며, 모두 슬래시(/)로 작성해야 함
  • 대소문자 구분에 유의할 것 (Documentsdocuments)

② Windows에서 Ubuntu 내부 접근하기: \\wsl$

반대로, Windows에서 Linux 파일 시스템에 접근하려면:

  1. Windows 파일 탐색기 실행
  2. 주소창에 다음 입력 후 Enter
  3. 설치된 WSL2 배포판 목록이 표시되며, 예를 들어 Ubuntu-24.04를 클릭하면 다음 경로로 이동 가능:
  • 여기서 youruser는 Ubuntu에서 설정한 사용자 계정 이름
  • 이 폴더 내부에 Ubuntu에서 만든 .py, .txt 파일이 나타납니다
  • 이 방식은 Windows GUI 기반 작업 중, Ubuntu 결과물을 열어보고자 할 때 매우 유용합니다.

실행 권한과 파일 속성 차이

Ubuntu에서는 파일이 존재한다고 해서 실행할 수 있는 것이 아닙니다. 파일은 읽기/쓰기/실행 권한을 별도로 관리합니다.

shell
ls -l script.sh
# 예: -rw-r--r-- 1 devuser devuser 2048 Jan 1 10:00 script.sh
  • chmod +x script.sh → 실행 권한 부여
  • 실행: ./script.sh 또는 bash script.sh

Windows에서는 .exe 또는 .bat 확장자로 실행 여부가 판단되지만, Ubuntu는 확장자에 구애받지 않고 권한에 따라 실행 가능 여부가 결정됩니다.