
0. 이 매뉴얼의 전제와 목적
이 문서는 다음의 목적을 가진 사용자를 대상으로 작성:
- WSL2 환경에서 사용 중인 Linux 배포판을 안전하게 백업하고 복원하려는 경우
- 기존 사용자 환경(홈 디렉터리, 설정, 권한)을 유지하고 싶은 경우
- 또는 기존 환경과 분리된 새로운 사용자 계정을 만들고 싶은 경우
wsl --export/wsl --import를 사용하면서 발생하기 쉬운 문제(systemd, root 로그인 등)를 피하고 싶은 경우
이 매뉴얼에서 사용하는 사용자 이름 ds31x 와 배포판 Debian은 예시이며,
모든 명령에서 이를 각각의 실제 계정명 과 배포판 명으로 변경해서 사용해야 함.
1. 배포판 백업 (Export)
1-1. 설치된 배포판 확인
wsl -l -v
- 이 명령은 현재 시스템에 등록된 WSL 배포판과 각 배포판이 WSL1인지 WSL2인지 확인하기 위한 것임.
- 백업 대상 배포판의 정확한 이름을 알아야 이후 과정을 진행할 수 있음.
1-2. 실행 중인 배포판 종료
wsl --shutdown
- 실행 중인 상태에서도 export는 가능하기 하나..,
- 파일 시스템 일관성과 안정성을 위해 모든 WSL 인스턴스를 종료한 상태에서 백업하는 것을 권장.
1-3. 배포판 전체 백업
wsl --export Debian D:\backup\Debian.tar
이 명령은 다음을 모두 포함하여 백업을 진행:
- 루트 파일 시스템 전체
/home아래 사용자 홈 디렉터리/etc의 사용자 및 시스템 설정- UID/GID, 그룹(sudo 포함) 정보
즉, 단순한 파일 백업이 아니라 사용자 계정과 환경을 그대로 보존하는 이미지 백업 에 해당함.
때문에 이전 사용자 계정을 그대로 복원 가능함.
2. 복원 전 준비 작업
2-1. import 대상 디렉터리 생성
mkdir C:\WSL
mkdir C:\WSL\Debian
- 주의할 점은
wsl --import명령은ext4.vhdx가 저장될 대상 디렉터리를 자동으로 생성하지 않음. - 따라서 반드시 사전에 디렉터리를 생성해 둬야 함
참고로 일반적으로 wsl --install 로 특정 배포판을 설치되는 경우는 다음 경로에 저장됨:
%USERPROFILE%\AppData\Local\Packages\
<배포판_패키지_ID>\LocalState\ext4.vhdx
2-2. ext4.vhdx 파일
ext4.vhdx 파일은 Linux 파일 시스템이 저장되는 하나의 가상 디스크 파일임.
- 가급적, 용량과 관리 편의성을 고려해 로컬 NTFS 디스크 경로를 사용하는 것이 편함.
- 동일한 wsl2 환경과 windows 환경에서는 이 파일만 있어도 복원 가능
- 하지만 권장되는 백업은 아님.
3. 배포판 복원 (Import)
wsl --import Debian C:\WSL\Debian D:\backup\Debian.tar --version 2
이 명령은 백업된 tar 파일을 기반으로 새로운 WSL 배포판을 등록.
다음을 주의할 것:
- 복원 직후 기본 로그인 사용자는 항상
root - 이는 오류가 아니라
wsl --import의 기본 동작 - 이후 단계에서 일반 사용자로 전환해야 정상적인 사용 환경이 됨.
4. 복원 후 사용자 설정 방법 개요
복원 이후에는 두 가지 선택지가 있음:
- 선택지 A: 기존 사용자 계정을 그대로 사용하는 경우
- 선택지 B: 새로운 사용자 계정을 추가해서 사용하는 경우
두 방식은 목적이 다르므로, 상황에 맞게 하나만 선택해서 진행하는게 좋음.
보통은 기존 사용자 계정을 그대로 쓰는게 제일 편함.
선택지 A. 기존 사용자 계정을 그대로 사용하는 경우
이 방법은 이전 WSL 환경을 최대한 동일하게 복원하고 싶을 때 적합함.
A-1. root로 배포판에 진입
wsl -d Debian -u root
- 복원 직후에는 기본 사용자가 root
- 때문에, 설정 작업은 root 권한에서 진행.
A-2. 기존 사용자 계정 확인
다시 한 번 더 애기하지만
아래에서 ds31x는 예시 계정명임.
각 복원한 시스템에서 백업 전 사용하던 계정명으로 대체할 것.
id ds31x
groups ds31x
여기서 확인하는 사항은 다음과 같음:
- 사용자가 실제로 존재하는지
UID/GID가 이전과 동일한지 (보통1000)sudo그룹에 포함되어 있는지
만약, sudu 그룹이 없다면, 일반 사용자로서 시스템 관리 작업이 불가능함.
A-3. sudo 그룹이 없는 경우 추가
usermod -aG sudo ds31x
- 이 명령은 기존 그룹을 유지한 채 sudo 그룹만 추가.
추가 후 반드시 다음의 명령어로 sudo 그룹이 추가되었는지 확인할 것:
groups ds31x
A-4. systemd 설정 점검
cat /etc/wsl.conf
복원된 환경에 다음 설정이 있다면 문제가 됨:
[boot]
systemd=true
이 설정은 import 로 복원된 환경에서 사용자 로그인 실패를 유발하는 대표적인 원인임.
기존 환경에서는 문제가 없었더라도, import 후 기본 사용자 전환 시 처음으로 활성화되어 오류를 일으킴.
A-5. 안전한 기본 사용자 설정
[user]
default=ds31x
/etc/wsl.conf에는 위 내용만 남기고[boot] systemd=true는 삭제할 것.
A-6. WSL 재시작
wsl --shutdown
wsl.conf변경 사항은 재시작 이후에만 반영됨.
A-7. 정상 동작 확인
wsl
Linux 안에서 다음을 확인할 것:
whoami
pwd
groups
정상이라면 다음과 같은 상태임:
- 사용자: ds31x
- 홈 디렉터리:
/home/ds31x - 그룹에
sudo포함
선택지 B. 새로운 사용자 계정을 추가해서 사용하는 경우
이 방법은 기존 환경과 분리된 깨끗한 사용자 환경이 필요할 때 적합.
설치하다가 root만 만들어지고 사용자 계정이 없는 경우에 대한 해법과 같음:
2023.09.19 - [Errors] - [WSL] root계정으로만 로그인 되는 경우.
[WSL] root계정으로만 로그인 되는 경우.
WSL로 ubuntu등을 설치할 때, 중간에 해당 배포판의 계정을 입력하라는 다음의 문구가 나온다.Installing: Ubuntu 20.04 LTSUbuntu 20.04 LTS has been installed.Launching Ubuntu 20.04 LTS...Installing, this may take a few minutes...
ds31x.tistory.com
B-1. root로 진입
wsl -d Debian -u root
B-2. 새 사용자 생성
예시로 newuser를 사용.
adduser newuser
이 과정에서 홈 디렉터리가 자동으로 생성되며, 비밀번호도 설정하게 됨.
B-3. sudo 권한 부여
usermod -aG sudo newuser
앞서 설명과 같음.
B-4. 기본 사용자 변경
[user]
default=newuser
앞서 설명과 같음.
B-5. systemd 설정 재확인
이 경우에도 /etc/wsl.conf에 systemd=true가 없어야 함.
필요하지 않은 경우 제거하는 것이 안정적.
B-6. WSL 재시작 및 확인
wsl --shutdown
wsl
Linux 안에서 다음을 확인할 것:.
whoami
pwd
groups
새 사용자와 해당 홈 디렉터리로 정상 진입해야 함.
5. 두 방식의 선택 기준 요약
| 구분 | 기존 계정 유지 | 새 계정 추가 |
| 이전 환경 그대로 사용 | 가능 | 불가 |
| 설정/히스토리 유지 | 가능 | 불가 |
| 깨끗한 시작 | 불가 | 가능 |
| 권한 관리 | 그대로 유지 | 새로 설정 |
| 권장 상황 | 환경 이전 | 새 프로젝트/실습 |
같이보면 좋은 자료들
2026.01.05 - [Linux] - WSL (WSL2 포함) 정리
WSL (WSL2 포함) 정리
WSL(Windows Subsystem for Linux)Windows 환경에서 GNU/Linux 실행 환경을 제공가상 머신이나 듀얼 부팅 없이 Linux용 개발 도구와 소프트웨어를 사용할 수 있게 해주는 Windows의 하위 시스템.기존의 가상화, 듀
ds31x.tistory.com
'Linux' 카테고리의 다른 글
| Linux 커널 관점에서 이해하는 Session, Process Group, Process, Thread와 Job Control의 실제 동작 (0) | 2026.01.09 |
|---|---|
| [zsh] zsh-vi-mode 설치 및 사용법 (0) | 2026.01.06 |
| WSL (WSL2 포함) 정리 (0) | 2026.01.05 |
| WSL 을 winget으로 설치 및 제거하기 (1) | 2026.01.05 |
| [Ubuntu] /var/lib/apt/lists 디렉터리의 용도 (1) | 2025.08.10 |