https://gemini.google.com/share/bf92d0cb5040 참고

1. 시작하며: 왜 하필 Xubuntu였을까요?
안녕하세요! 저는 현재 메인 OS로 Windows 11을 사용하고 있는 개발자입니다. 물론 윈도우의 WSL2 기능도 훌륭하지만, OS 자체가 기본적으로 점유하는 메모리와 백그라운드 프로세스가 상당히 많다는 점은 늘 아쉬움으로 남았습니다. 특히 안드로이드 에뮬레이터와 브라우저를 동시에 띄우면 팬 소리가 거슬릴 정도로 커지곤 했죠.
저에게 필요한 건 화려한 애니메이션이나 투명 효과 같은 UI가 아니었습니다. **오직 내 코드가 0.1초라도 빨리 빌드되고, 에뮬레이터가 부드럽게 돌아가는 '쾌적한 성능'**이었습니다.
그래서 다음과 같은 이유로 새로운 환경을 구축하게 되었습니다.
- Native Linux: 가상화의 오버헤드 없이 하드웨어 성능을 100% 온전히 사용하고 싶었습니다.
- Xubuntu (Xfce): 예쁘지만 무거운 표준 우분투(GNOME) 대신, UI는 조금 투박해도 RAM을 적게 차지하는 가벼운 Xubuntu를 선택했습니다.
- 목표: 윈도우의 방해 없는 쾌적한 Flutter 개발 환경 구축입니다.
2. 준비하기: 안전한 설치를 위한 준비물
설치 전 가장 중요한 것은 '준비'입니다. 혹시 모를 상황에 대비해 윈도우의 중요 데이터는 꼭 백업해 주시길 바랍니다.
🛠 준비물
- USB 드라이브: 8GB 이상 (내부 데이터는 삭제되니 비어있는 것을 준비해주세요)
- Rufus: 부팅 USB를 만들기 위한 프로그램
- Xubuntu 25.10 LTS ISO: 공식 홈페이지에서 다운로드
Step 1: 윈도우에서 공간 확보하기
먼저 리눅스가 설치될 공간을 마련해 주어야 합니다.

Win + X키를 누르고 **'디스크 관리'**를 실행합니다.- 가장 용량이 큰(C:) 드라이브를 우클릭하여 **'볼륨 축소'**를 선택합니다.
- 저는 개발용으로 넉넉하게 100GB (약 102400MB) 정도를 할당했습니다.
- 축소 후 검은색으로 표시된 '할당되지 않음(Unallocated)' 공간이 생겼는지 확인하고 창을 닫습니다.

Step 2: 부팅 USB 제작

다운로드한 Xubuntu ISO 파일을 Rufus 프로그램을 이용해 USB에 굽습니다.
- 파티션 방식: GPT
- 대상 시스템: UEFI (윈도우 11은 대부분 이 환경입니다)
시작을 누르면 usb에 iso파일이 설치됩니다. (10분 정도 소요)
이때 usb 안의 모든 정보는 지워지니 사전에 usb가 비어있는지 확인하고 진행하는 것이 좋습니다.
3. 실행하기: 파티션 나누기 (가장 중요한 단계!)
Step 1: BIOS 설정 및 부팅
USB를 꽂고 재부팅하면서 BIOS 진입 키(F2 또는 Del)를 연타하여 설정 화면으로 들어갑니다.
- Secure Boot: 호환성 문제를 피하기 위해 **Disabled(끄기)**로 설정하는 것을 추천합니다.
- Boot Priority (부팅 순서): USB를 1순위로 올려줍니다.
Step 2: 설치 및 파티션 수동 설정
설치 화면에 진입하면 여러 설정 단계가 나오는데요, '설치 형식' 단계에서 집중해주셔야 합니다. 저는 파티션을 명확하게 관리하기 위해 **'기타(Something else)'**를 선택했습니다.
아까 윈도우에서 만들어둔 **'남은 공간(free space)'**을 선택하여 다음과 같이 두 개의 파티션으로 나누었습니다.
1. Swap 파티션 (가상 메모리)
- RAM이 부족할 때를 대비한 공간입니다.
- 크기: 8GB (제 컴퓨터의 물리 RAM 크기와 비슷하게 맞췄습니다)
- 용도:
swap area(스왑 영역)
2. Root 파티션 (/)
- 실질적으로 리눅스와 프로그램이 설치될 메인 공간입니다.
- 크기: 남은 공간 전체
- 용도:
Ext4 journaling file system - 마운트 위치:
/(슬래시 하나)
설정을 마치고 설치를 진행하니 약 10~15분 정도 소요되었습니다.
4. 환경 설정: Flutter 개발 준비 완료
설치가 끝나고 부팅을 하니, 투박하지만 굉장히 빠른 반응 속도의 Xfce 화면이 반겨줍니다. 바로 터미널(Ctrl+Alt+T)을 열고 개발 환경을 세팅했습니다.
1. 시스템 업데이트 & 필수 도구 설치
가장 먼저 패키지들을 최신 상태로 업데이트해주었습니다.
sudo apt update && sudo apt upgrade -y
sudo apt install git curl unzip build-essential -y
2. 한글 입력기 설정 (IBus)
설정 메뉴의 'Language Support'에서 한국어 패키지를 설치하고, 키보드 입력 시스템을 IBus로 확인했습니다. 이후 설정에서 Korean (Hangul)을 추가하니 한글 입력도 아주 잘 됩니다.


단, 한국어-hangul으로 설정되어야 한글/영어가 잘 바뀝니다. 한국어-korean 언어팩은 삭제했습니다.

또한, 저는 스크롤 방향이 윈도우가 익숙해서 스크롤 방향을 반대로 바꿔줬습니다. 설정-마우스와 터치패드-장치 선택 후, 스크롤 방향 반전을 눌러주면 됩니다.
3. Flutter & VS Code 설치
우분투 계열은 Snap을 이용하면 복잡한 설정 없이 한 번에 설치할 수 있어 정말 편리합니다.
# VS Code 설치
sudo snap install code --classic
# Flutter SDK 설치
sudo snap install flutter --classic
# 리눅스 데스크톱 앱 빌드 라이브러리 (선택 사항)
sudo apt install clang cmake ninja-build pkg-config libgtk-3-dev -y
5. 결과: 가벼움, 그 이상의 쾌적함
모든 세팅을 마치고 재부팅을 해보았습니다. 윈도우와 Xubuntu 중 선택할 수 있는 화면(GRUB)이 뜨네요. Xubuntu로 진입하여 시스템 모니터를 확인해 보았습니다.
📊 리소스 점유율 비교 (아무것도 안 켠 상태)
| 구분 | Windows 11 | Xubuntu (Xfce) |
|---|---|---|
| RAM 점유량 | 약 3.8 GB | 약 500 MB |
| 백그라운드 프로세스 | 100개 이상 | 30개 미만 |
🚀 직접 체감한 성능

- 기본적으로 flutter에서 초기 빌드시에 cpu와 메모리를 정말 많이 잡아먹는데, 빌드시에도 메모리 사용량이 절반을 넘어가지 않는 모습을 볼 수 있습니다.
- 또한 빌드 시간, 속도 모두 윈도우 환경보다 빠릅니다.
다만
- vscode을 킬 때마다 keytools을 사용할 수 없다는 에러가 있고
- 안드로이드 스튜디오에서 에뮬레이터를 생성해도 vscode에선 보이지 않는 문제가 있습니다. 아마 android studio 설치때 일부 라이브러리를 찾을 수 없다고 나와 공식 명령어 대신 다른 명령어를 사용했는데 이 때문인 것 같습니다.
💡 마무리하며
디자인이 조금 옛날 느낌이면 어떤가요? 테마는 나중에 원하면 언제든 예쁘게 꾸밀 수 있으니까요.
무엇보다 한정된 하드웨어 자원을 OS가 낭비하지 않고, 오로지 제가 작성하는 코드와 개발 도구에만 집중시킬 수 있다는 점이 정말 만족스럽습니다.
혹시 윈도우에서 개발 환경이 무겁게 느껴져서 고민이신 분들, 특히 Flutter나 모바일 앱 개발자분이시라면 가벼운 리눅스(Xubuntu) 듀얼 부팅 구성을 조심스럽게 추천해 드립니다.
'개인 프로젝트' 카테고리의 다른 글
| [web] 성적 예상 등수 계산기 개발 회고 (1) | 2025.05.02 |
|---|---|
| [WEB] 스도쿠 풀이 프로그램 #4 (2) | 2023.12.07 |
| [개인 프로젝트] Python으로 2048 게임 만들기 #2 (0) | 2022.02.28 |
| [Python] 스도쿠 풀이 프로그램 #3 (0) | 2022.02.20 |
| [Python] 스도쿠 풀이 프로그램 #2 (0) | 2022.01.13 |