티스토리 뷰

WSL 쓰다 보면 이런 순간이 옵니다.
윈도우에서는 \\192.168.2.31\dataset이 잘 열리는데, WSL에서는 왜 //192.168.2.31/...가 안 될까요?

핵심은 “지원 여부”가 아니라 “접근 방식 차이”입니다.

 먼저 \\서버\공유폴더\경로 형태는 UNC(Universal Naming Convention) 라는 윈도우 네트워크 경로 문법입니다.
 이 경로를 실제 파일 접근으로 바꿔주는 게 SMB 리다이렉터(redirector) 입니다.

 SMB 리다이렉터는 쉽게 말해 윈도우 내부의 네트워크 파일 클라이언트입니다.
 앱이 UNC 경로를 열면, 리다이렉터가 아래 작업을 자동으로 처리합니다.

  1. UNC 경로 해석
  2. SMB 서버 연결 및 인증
  3. 읽기/쓰기 요청을 SMB 프로토콜로 전송
  4. 결과를 앱에 로컬 파일처럼 반환

  그래서 윈도우에서는 UNC를 “그냥 경로처럼” 사용할 수 있습니다.

  반면 WSL(리눅스)은 UNC 문법을 기본 경로 문법으로 쓰지 않습니다.
  리눅스에서는 원격 공유를 먼저 파일시스템에 마운트해야 /mnt/...처럼 접근할 수 있습니다.

  즉, IP만으로 바로 접근이 안 되는 이유는 간단합니다.

  1. IP는 네트워크 주소일 뿐 파일 경로가 아님
  2. 어떤 프로토콜(SMB/NFS/SSH)인지 정보가 없음
  3. 공유 이름과 인증 정보가 필요함

  실무에서는 보통 두 가지 방법을 씁니다.

  1. 윈도우에서 \\192.168.2.31\dataset을 Z:로 매핑하고 WSL에서 /mnt/z/... 사용
  2. WSL에서 직접 마운트

  sudo mkdir -p /mnt/dataset
  sudo mount -t drvfs '\\\\192.168.2.31\\dataset' /mnt/dataset

  이후에는 /mnt/dataset/... 경로로 일반 폴더처럼 접근하면 됩니다.

  정리하면,
  리눅스가 네트워크 공유를 못 쓰는 게 아니라,
  윈도우는 UNC+SMB 리다이렉터 방식, 리눅스는 마운트 방식이라는 차이입니다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/03   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함