WSL을 윈도우에 설치해서 사용하던 중 문제점이 발생했다.
1. WSL을 이용해 VSCode를 열고 파일을 수정할 때, 파일의 변경을 감지하지 못한다는 것
2. WSL을 이용해 VSCode를 열고 node 프로젝트를 npm 명령을 통해 실행시키는 경우, 시작시간이 매우 길어지는 것
3. 프로젝트를 실행시키면 CPU를 엄청 잡아먹는 프로세스가 작동하는 것
1. 파일 변경 감지 불가
파일의 변경을 감지하지 못하는 경우가 발생했다.
해결 방법은 프로젝트 디렉토리의 위치를 WSL에 설치한 리눅스 사용자의 디렉토리로 수정하는 것이다.
예를 들어, 윈도우 사용자 admin과 WSL에 설치한 Ubuntu의 사용자 hbsps가 있다고 가정하자. 현재 프로젝트 폴더는 admin의 바탕화면에 있다. (단순하게 우리가 사용하는 윈도우 바탕화면에 있다고 생각하면 된다)
현재 프로젝트의 경로는 /admin/Desktop/Project이다.
(세부적으로는 /mnt/c/Users/admin/Desktop/Project)
이 경우, WSL을 통해 해당 프로젝트에 접근하게 되면 파일의 변경을 실시간으로 감지하지 못한다.
따라서, 해당 프로젝트를 /home/hbsps로 옮겨야 한다.
(세부적으로는 /home/hbsps)
(그냥 해당 디렉토리에서 git clone을 하는 것이 간단하다)
WSL은 /mnt를 통해 윈도우(윈도우 사용자)에 접근할 수 있고, /home을 통해 리눅스 사용자에 접근할 수 있다
2. npm을 이용한 프로젝트 시작 속도 저하
NestJS 프로젝트를 실행시키기 위해 npm run start:dev를 입력했을 때, 속도가 지나치게 저하되는 현상이 발생했다.
기존에 사용하던 git bash를 이용해서 같은 명령어를 입력했을 때는 속도 저하 현상이 없는 것을 볼 때, WSL에서 발생한 오류로 판단되었다.
사실 첫번째 문제점과 해결 방법이 동일하다.
리눅스 사용자 디렉토리로 프로젝트를 옮기면 해결된다.
(오히려 속도가 더 빨라진 것 같다)
3. WSL에서 높은 비율의 CPU 사용
마찬가지로 NestJS 프로젝트를 실행시키면 특정 프로세스가 CPU를 30% 가까시 소모시키는 현상이 발견되었다.
이것 또한, 프로젝트를 리눅스 사용자 디렉토리로 이동시키면 해결된다.
사실 발생한 대부분의 문제점이 리눅스와 윈도우를 구분하지 않고 사용하기 때문에 발생하는 것 같다.
WSL을 사용해서 작업을 할 때는, 리눅스를 다루듯이 폴더 등을 리눅스의 영역에 둬야할 것 같다는 생각이 든다.
'개발 > 오류' 카테고리의 다른 글
[Flutter] Android toolchain 오류 (Android SDK) (0) | 2023.01.07 |
---|---|
React (+TypeScript, Styled-Component, ResetCSS) 프로젝트에 구글폰트 적용 안됨 및 해결법 (0) | 2022.11.27 |
WSL 설치 에러(error: 0x8007019e) (0) | 2022.06.30 |
'mysql'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 해결법 (0) | 2022.03.26 |
MySQL 최초 로그인 비밀번호 맞는데 오류나는 경우 (ERROR 1045) (0) | 2022.03.26 |