
이런 분들께 추천합니다
- 본편 EP.01 / EP.02를 보고 서버는 띄웠지만, 매번 같은 서버 구동 명령어 치는 게 귀찮으신 분
- 더블클릭(혹은 한 줄 명령) 한 번에 서버를 켜고 싶은 분
- 메모리 설정을 한 번 해두고 잊고 싶은 분
- Windows / Ubuntu 환경 둘 다 정리된 가이드를 찾고 계신 분
요약
문제: 매번 콘솔 열고 java -Xms3G -Xmx3G -jar server.jar nogui 같은 긴 명령어 치기 귀찮다
시도: 한 번에 실행되는 스크립트 파일을 만들어두자
해결: Windows: run.bat 더블클릭 / Ubuntu: run.sh + tmux 백그라운드
이 글을 따라하면 한 번 만들어둔 스크립트로 서버를 빠르게 켤 수 있고, 메모리 설정이나 옵션을 매번 외울 필요가 없어집니다.
사전 준비
- 본편 EP.01 또는 EP.02를 따라 마인크래프트 서버를 한 번 이상 실행해본 상태
server.jar가 있고 EULA 동의(eula=true)까지 마친 상태
본인 환경에 맞춰서 둘 중 한 파트만 따라오시면 됩니다.
- Part 1. Windows 편: 본편 EP.01의
start.bat만들기 - Part 2. GCP Ubuntu 편: 본편 EP.02에서 매번 치던 명령어를 스크립트로 만들기
Part 1. Windows 편
본편 EP.01에서 이미 start.bat 같은 배치 파일로 서버를 켜는 방법을 다뤘습니다. 이번 외전에서는 그 스크립트를 좀 더 다듬고, 자주 쓰는 옵션들을 정리해보겠습니다.
1. start.bat 파일 만들기
1-1. 빈 텍스트 파일 만들기
server.jar가 있는 폴더에서 우클릭 → 새로 만들기 → 텍스트 문서를 클릭합니다.

1-2. start.bat으로 이름 변경
파일 이름을 start.bat으로 바꿉니다. 확장명 변경 경고가 뜨면 예(Y) 를 클릭합니다.

주의: 파일 탐색기에서 확장명이 안 보인다면 상단 보기 → 파일 확장명 체크를 켜주세요.
안 켜면start.bat.txt로 저장되는 경우가 있습니다.
1-3. 스크립트 내용 작성
start.bat을 우클릭 → 메모장에서 편집하고, 아래 내용을 붙여넣은 후 저장합니다.

@echo off
title Minecraft Server
java -Xms2G -Xmx4G -jar server.jar nogui
pause
각 줄 설명:
@echo off: 명령어 자체가 화면에 출력되는 걸 숨깁니다title Minecraft Server: 콘솔 창 제목을 "Minecraft Server"로 표시합니다java -Xms2G -Xmx4G -jar server.jar nogui: 서버를 메모리 2~4GB로 실행합니다pause: 서버가 꺼져도 창이 바로 닫히지 않습니다 (에러 확인용)
2. 더블클릭으로 서버 실행
이제 start.bat을 더블클릭하면 콘솔 창이 열리면서 서버가 켜집니다.

[Server thread/INFO]: Done (2.347s)! For help, type "help"
이런 메시지가 뜨면 서버가 정상적으로 열린 것입니다.
주의: 이 콘솔 창을 닫으면 서버도 같이 꺼집니다. 서버를 유지하려면 창을 켜둔 상태로 두세요.
서버를 안전하게 종료하려면 콘솔에 stop을 입력합니다.
stop
이렇게 하면 월드를 저장한 후 깔끔하게 종료됩니다. 그냥 X 버튼으로 닫으면 데이터 손상 위험이 있어요.
Part 2. GCP Ubuntu 편
본편 EP.02에서는 SSH 접속 후 매번 다음 명령어를 쳤습니다.
cd minecraft-server
java -Xms3G -Xmx3G -jar server.jar nogui
매번 두 줄을 치는 게 귀찮죠. 이걸 start.sh 스크립트 한 번 실행으로 줄여봅시다.
1. run.sh 파일 만들기
1-1. 서버 폴더로 이동
cd ~/minecraft-server
본편 EP.02에서 만든 폴더 이름과 동일합니다.
다른 이름으로 만들었다면 본인 환경에 맞춰주세요.
1-2. nano 에디터 확인 & 설치
run.sh 파일에는 여러 줄을 입력해야 하니 텍스트 에디터가 필요합니다. 이 시리즈에서는 nano를 사용할게요.
💡 nano란? 우분투용 텍스트 에디터예요. 터미널에서 GUI 없이 파일을 편집할 수 있습니다.
본편 EP.02에서는sed한 줄 명령으로 EULA 파일을 처리했지만, 여러 줄을 입력할 때는 nano가 훨씬 편해요.
외전 시리즈에서 자주 쓸 도구라 이번에 익혀두면 좋습니다.
먼저 nano가 설치되어 있는지 확인합니다. 본편 EP.02에서 Java 설치 후 java -version으로 확인했던 것과 같은 방식이에요.
nano --version
GNU nano, version X.X 같은 메시지가 뜨면 이미 설치되어 있는 것입니다. 1-3으로 넘어가세요.
command not found 메시지가 뜨면 아래 명령어로 설치합니다

sudo apt update
sudo apt install nano -y

설치 후 다시 nano --version으로 확인합니다.

다른 편집기를 선호한다면?
편집만 하면 되기 때문에 다른 편집기인vim에 익숙하시면vim start.sh사용하셔도 됩니다.
1-3. nano로 파일 생성
nano start.sh

아래 내용을 입력합니다.
#!/bin/bash
java -Xms3G -Xmx3G -jar server.jar nogui
저장하고 빠져나오기: Ctrl + O → Enter → Ctrl + X


GCP 인스턴스
메모리에 맞춰 조정하세요:
e2-medium (4GB):-Xmx3G(본편 EP.02와 동일)
e2-standard-2 (8GB):-Xmx6G메모리 전부를 자바에 주면 OS가 죽을 수 있습니다. 항상 1GB 정도는 OS용으로 남겨두세요.
1-3. 실행 권한 부여
.sh 파일은 만들기만 하면 실행할 수 없습니다. 실행 권한을 줘야 합니다.

chmod +x start.sh

이제 ./start.sh로 실행할 수 있습니다.
./start.sh

본편 EP.02에서 매번 쳤던 두 줄이 이제 ./start.sh 한 줄로 줄었습니다.
2. tmux와 함께 사용하기
본편 EP.02에서 사용했던 tmux와 start.sh를 같이 쓰면 더 편해집니다. 복습 겸 정리해보겠습니다.
2-1. tmux 세션 만들기
tmux new -s mc
mc라는 이름으로 새 tmux 세션이 열립니다.

2-2. 세션 안에서 run.sh 실행
세션 안에서 서버 폴더로 이동한 뒤 스크립트를 실행합니다.
cd ~/minecraft-server
./start.sh
서버가 정상적으로 켜지면 다음 메시지가 보입니다.
[Server thread/INFO]: Done (X.XXXs)! For help, type "help"
2-3. 세션에서 빠져나오기
Ctrl + B를 누른 후 D 를 누릅니다.
[detached (from session mc)]
이런 메시지가 뜨면서 세션에서 빠져나옵니다. 서버는 백그라운드에서 계속 돌아가고 있습니다. 이제 SSH 창을 닫아도 서버는 안 꺼져요.
2-4. 다시 서버 콘솔로 들어가기
명령어를 입력하거나 로그를 보고 싶을 때 다시 세션으로 돌아갑니다.
tmux attach -t mc
원래 세션이 그대로 다시 나타납니다.
**자주 쓰는 tmux 명령어 정리:
tmux new -s mc:mc라는 이름으로 새 세션 만들기tmux attach -t mc:mc세션에 다시 접속tmux ls: 현재 실행 중인 세션 목록 보기Ctrl + B→D: 현재 세션에서 빠져나오기 (서버는 유지)
2-5. 서버 안전 종료
서버를 종료할 때는 tmux 세션 안에서 stop 명령어를 입력합니다.
stop
주의:
stop없이 VM을 바로 중지하면 월드 데이터가 손상될 수 있습니다.
마무리
전체 흐름을 정리하면 다음과 같습니다.
Windows:
start.bat파일 생성 (메모장)- 스크립트 작성 + 메모리 설정
- 더블클릭으로 실행
GCP Ubuntu:
start.sh파일 생성 (nano)- 실행 권한 부여 (
chmod +x) - tmux 세션에서
./start.sh로 실행 Ctrl + B → D로 세션 분리
이제 매번 긴 명령어를 외울 필요가 없습니다. 메모리 설정이나 옵션을 한 번 다듬어두고, 이후로는 한 번의 실행만 기억하면 됩니다!
다음 글에서는...
서버 켜기는 편해졌지만, 게임 모드나 인원 수 같은 설정은 어떻게 바꿀까요? 다음 글에서는 server.properties로 서버 설정하기를 다뤄보겠습니다.
References
'게임 > 마크빌드업' 카테고리의 다른 글
| [운영] 화이트리스트로 원하는 사람만 접속하게 하기 + OP 설정 | 마크빌드업 EP.09 (0) | 2026.04.27 |
|---|---|
| [운영] server.properties로 서버 설정하기 26.1+ | 마크빌드업 EP.08 (0) | 2026.04.27 |
| Paper API 핵심 개념 + 미니게임 플러그인 실습 | 마크빌드업 EP.06 (0) | 2026.02.27 |
| 마인크래프트 플러그인 만들기 – 환경 세팅부터 배포까지 (IntelliJ + Paper API) | 마크빌드업 EP.05 (0) | 2026.02.24 |
| 마인크래프트 Paper 서버 구축 + 플러그인 설치 방법 (2026) | 마크빌드업 EP.04 (0) | 2026.02.23 |