Skip to content

Instantly share code, notes, and snippets.

@Curookie
Last active June 22, 2023 09:13
Show Gist options
  • Save Curookie/350a38af8054f410fb58cca7353b0e3b to your computer and use it in GitHub Desktop.
Save Curookie/350a38af8054f410fb58cca7353b0e3b to your computer and use it in GitHub Desktop.
Synology(NAS)로 마인크래프트 (Minecraft) 24시간 서버열기

Synology(NAS)로 마인크래프트 Minecraft 24시간 서버 열기

Realms과 비교했을 때 장점은 최대 10명의 플레이어 이상 가능, OP(오피, 관리자) 권한을 설정하거나 해제 부분, 자유로운 백업기능, 초대개념이 아닌 서버 연결개념
사양 DS218+ RAM 4GB (DS918+ 이면 더 좋을 듯)

  1. NAS에 JAVA8과 Docker설치
  2. Docker Hub에서 itzg/minecraft-server 받는다.
  3. 포트 설정 로컬/컨테이너 포트 25565 / 25565 / TCP로 (변경)
  4. 옵션 설정
  • 컨테이너 실행한다음 잘 실행되면 메모리 설정하기 위해 JVM_XX_OPTS(변경) / -Xms4G -Xmx4G -XX:+UseG1GC

다른 옵션1 -Xms4G -Xmx4G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
다른 옵션2 -Xms4G -Xmx4G -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:MaxGCPauseMillis=100 -XX:+DisableExplicitGC -XX:TargetSurvivorRatio=90 -XX:G1NewSizePercent=50 -XX:G1MaxNewSizePercent=80 -XX:G1MixedGCLiveThresholdPercent=35 -XX:+AlwaysPreTouch -XX:+ParallelRefProcEnabled -Dusing.aikars.flags=mcflags.emc.gs

  • 환경 > 변수 추가 한 다음 EULA(추가) / true
  • MEMORY(변경) / 4G
  • ENABLE_RCON(변경) / false 비번 연결 설정여부
  • SERVER_NAME(변경) / 서버 이름 수정
  • MOTD(추가) / 서버설명
  • DIFFICULTY(추가) / normal
  1. putty로 SFTP 들어가서
    sudo su -
    관리자 권한 얻은 후
    cd /volume1/@docker/volumes/ 여기서 볼륨 바로가기 주소 기억 (ex - 7b9ba849e3199a23ce8a3dc24fc4147357b871ca89b68a4eaefbb84f6b8b064c, ls -al로 최근 생성된 거 찾으면 찾기 쉬움)
    7z 명령어로 zip 압축 풀수 있다. ex) 7z x ex.zip -o원하는 폴더명/
  2. 도커 키면 끝
  3. 백업설정 backup.sh를 만들어서 crontab에 추가

backup.sh 내가 만든거

#!/bin/bash
date=$(date "+%Y%m%d-%HH")
backup="backup-${date}.tar.gz"
tar -zcvf /volume2/homes/admin/minecraft_backupfiles/$backup /volume2/@docker/volumes/7ddc2a66c6f6531886234a34b0fe8cfde804ea85d3bb5502f0140802d44b4453/_data/world /volume2/@docker/volumes/7ddc2a66c6f6531886234a34b0fe8cfde804ea85d3bb5502f0140802d44b4453/_data/world_nether /volume2/@docker/volumes/7ddc2a66c6f6531886234a34b0fe8cfde804ea85d3bb5502f0140802d44b4453/_data/world_the_end
find /volume2/homes/admin/minecraft_backupfiles -mtime +30 -name "backup*.tar.gz" -exec rm -rf {} \;
echo "$backup file is dones."

한달 간 백업파일을 저장하는 백업 코드

vi /etc/crontab 에서 추가하면 된다.

#Minecraft Data Backup
0   19  *   *   *   root    sh /volume1/@docker/volumes/7b9ba849e3199a23ce8a3dc24fc4147357b871ca89b68a4eaefbb84f6b8b064c/_data/backup.sh
30  20  *   *   *   root    sh /volume1/@docker/volumes/7b9ba849e3199a23ce8a3dc24fc4147357b871ca89b68a4eaefbb84f6b8b064c/_data/backup.sh
0   22  *   *   *   root    sh /volume1/@docker/volumes/7b9ba849e3199a23ce8a3dc24fc4147357b871ca89b68a4eaefbb84f6b8b064c/_data/backup.sh
30  23  *   *   *   root    sh /volume1/@docker/volumes/7b9ba849e3199a23ce8a3dc24fc4147357b871ca89b68a4eaefbb84f6b8b064c/_data/backup.sh

저장 후 synoservicectl --restart crond 명령어로 지정
그리고 보안으로 자동으로 차단되는 경우있는데 이때 이거 예외처리하면 됨.

tar -zxvf 파일명.tar.gz

ex) aaa.tar.gz라는 tar.gz파일 압축을 풀고자 한다면

tar -zxvf aaa.tar.gz

모드 설치를 원하면
위에 4번에 TYPE / VANILLA -> FORGE(원하는 모드환경 BUKKIT 등등) 변경하고
FORGE는 mods 폴더에 모드 파일(.jar파일) 넣으면 됨.
BUKKIT은 plugins 폴더
난 permission설치를 위해서 BUKKIT 사용
cp -rp 옵션 디렉토리랑 파일권한옵션까지 복사
session.lock 에러뜨면 파일권한옵션 777로 바꾸면 됨


마인크래프트 쉐이더 설치하기

  1. JRE가 설치되어 있어야 한다. (jar파일 실행하기 위해)
    체크하는 방법은 cmd창(도스창)에서 java -version 이라고 치면 버전 정보가 나와야한다.
    JAVA 다운 링크 https://www.java.com/ko/download/
  2. OptiFine > Preview Versions 에서 가장 최신 버전 다운 받아서 설치한다. ex) OptiFine 1.14.2 HD U F1 pre13.jar
    OptiFine 링크 https://optifine.net/downloads
    최신버전이라면 마인크래프트 런처 열고 최신 릴리즈 다운받은 상태 == 최소 한번은 실행해놓은 상태여야함
    만약에 알집, 반디집으로 열리면 [ 연결 프로그램 ] 을 [ JAVA Platform TM Binary ] 로 변경하면 됨
    만약에 jar실행이 도스창 뜨고 실행이 안 된다면 cmd로 직접 실행하면 된다.
    cmd에서 실행하는 방법 https://zetawiki.com/wiki/%EC%9C%88%EB%8F%84%EC%9A%B0_JRE_%EC%84%A4%EC%B9%98
  3. 마인크래프트 런처 껐다가 다시 열고 > 최신 릴리즈 말고 > release -OptiFine 붙어있는거로 실행하기 (만약에 메모리 올리려면 아래의 설정 더보기 눌러서 JVM인수에 -Xmx8G같이 바꿔주면 됨)
  4. 이제 내가 원하는 쉐이더 다운 받아서 비디오설정 > 셰이더... > 세이더 폴더 클릭한다음 쉐이더 파일(ex- ComplementaryShaders_v4.1.zip) 집어넣고 쉐이더 선택하면 된다.

내 설정은
Sildur Medium 쓰고
[ 비디오 설정 ] - 밝기: 밝게, 그래픽: 빠르게, 부드러운 조명 효과: 최소, 렌더 거리: 청크 24-29개, 동적 조명: 빠르게, 화면 흔들림: 꺼짐
[ 셰이더 ] - 렌더 품질: 0.9x, 그림자 품질: 0.75x
[ 품질 설정 ] - 텍스처 연결: 꺼짐

Complementary Shaders 쓰고
[ 비디오 설정 ] - 밝기: 밝게, 그래픽: 빠르게, 부드러운 조명 효과: 최소, 렌더 거리: 청크 24-29개, 최대 프레임률: VSync, 동적 조명: 빠르게, 화면 흔들림: 꺼짐,
[ 셰이더 ] - 렌더 품질: 1.0x, 그림자 품질: 1.00x
[ 품질 설정 ] - 텍스처 연결: 꺼짐

그냥 여기들어가서 가장 인기많은 최신꺼가 최적화 가장 잘되어 있는 것 같다. https://shadersmods.com/category/shaderpacks/

Complementary Shaders 이거 받으셈 다운 링크 https://shadersmods.com/complementary-shaders/

Sildur 쉐이더 다운 링크 https://sildurs-shaders.github.io/downloads/

물도 양호하고 밤에 별이 많은 편, 밝기는 적당한 것 같다. 사양에 맞게 버전이 여러가지가 있으며 개인적으로 현재(2019.06) 최고의 쉐이더
(2021.7 너무 무거워졌다. 비추)

BSL 쉐이더 다운 링크 https://bitslablab.com/

물도 양호하고 밤에 매우 밝은 편, 밤에 매우 밝은 걸 선호한다면 나쁘지 않음. 좀 무거운 쉐이더
2021. 7 이게 더 좋아보인다 (사양좋으면 이거 추천 https://shadersmods.com/capttatsus-bsl-shaders-mod/)

SEUS 쉐이더 다운 링크 https://sonicether.com/download/seus-v11-0/

물 들어갔을 때 시야가 별로고 너무 어두운 면이 있음. 가벼운 쉐이더이긴 함.

쉐이더 폴더 경로 Ex) C:\Users\Curookie-PC\AppData\Roaming\.minecraft\shaderpacks


마인크래프트 실행 시 컴퓨터 램 사용량 늘리는 법

  1. Minecraft 런처 > 설치 설정 > 최신 릴리즈 선택 (Optifine 쓰면 Optifine 선택) > 실행할 설정에 들어가서 JVM 인수 키고 > 원하는 기가 만큼 아래 내용 수정 -Xmx?G
    ex) -Xmx8G 8기가 쓰는것
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment