목차
계속 먼지만 쌓이고 있는 라즈베리파이4 8GB로 마크 서버나 만들어보자
그리고 계속 글이 날라가서 4번째 쓰는 중이다....tlqkf
SD카드 굽기
일단 하기 쉽게 라즈비안이 아닌 우분투를 설치할 예정이다
라즈베리파이에서 제공하는 imager를 사용하자
https://www.raspberrypi.com/software/
Raspberry Pi OS – Raspberry Pi
From industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody.
www.raspberrypi.com
CHOOSE OS - Other general purpose OS - Ubuntu - Ubuntu Desktop 21.10
근데 서버로 쓸거면 desktop이 아니라 server를 설치해야하는 거 아닐까...?
일단 해보자
CHOOSE STORAGE를 클릭하고 SD카드 리더기를 선택
이후 WRITE를 누르면 시작된다
생각보다 오래걸리네...
대충 1시간 정도 걸린 것 같다...
늦었으니 내일 다시...
Ubuntu 설정
어제 구워놨던 SD카드를 라즈베리파이에 꽂아주자
그리고 전원을 키면 Ubuntu가 실행 될 것.....이었으나 오류가 발생했다
Unable to read partition as FAT
아마 포맷할 때 FAT형식이 아닌 다른 형식으로 포맷했을 수 있으니 다시 포맷을... 해보자...
SD카드 다시 굽기
SD Card Formatter를 이용하여 다시 SD카드를 포맷하자
https://www.sdcard.org/downloads/formatter/
SD Memory Card Formatter | SD Association
SD Memory Card Formatter 5.0.1 for SD/SDHC/SDXC The SD Memory Card Formatter formats SD Memory Card, SDHC Memory Card and SDXC Memory Card (respectively SD/SDHC/SDXC Cards) complying with the SD File System Specification created by the SD Association (SDA)
www.sdcard.org
그리고 다시 Ubuntu를 설치해주자
생각보다 빠르다... 뭐지
대충 13시에서 16시 사이에 빠른 것 같다
Ubuntu 설정
이제 진짜로 설정을 해보자
이번에 바뀐 배경화면은 이렇다
모티브는 인드리, 가장 큰 여우 원숭이라고 한다
잠시 기다리면 창이 하나 뜨는데 기본적인 설정을 할 수 있다
언어는 밑으로 내려보면 한국어가 있다
키보드 레이아웃은 Korean - Korean(101/104key compatible)를 선택
무선 네트워크는 일단 연결해뒀다
거주 지역도 서울로 그대로 선택
마지막으로 계정 관련 설정을 해준다
그리고 기다리면 Ubunut 기본 설정 끝
원격접속 설정
나중을 위해 미리 원격접속 설정을 해두자
왜 스크린샷만 찍으면 멈추는 거지...
별거 없을테니 터미널로만 접속해도 되도록 SSH를 설정하자
ssh 설정
sudo apt-get install openssh-server
먼저 ssh를 설치해주자
설치가 끝나면 config 파일을 수정한다
기본 포트가 22이기 때문에 살짝 바꿔주자
sudo vi /etc/ssh/sshd_config
아니면 vim을 깔고 해도 된다
#Port 22를 Port 1414 같이 주석을 없애고 원하는 숫자로 변경
방화벽 설정
혹시 모르니 설정한 포트 말고는 방화벽을 설정하자
sudo ufw enable
sudo ufw allow [Port]
아까 설정했던 포트를 [Port]에 입력한다
바꾸지 않았다면 22로 allow
서비스 실행
설정이 끝났다면 실행해주자
sudo service ssh start
그리고 IP를 알아내자
hostname -I
원격접속
원격접속에 사용할 것은 Putty이다
Download PuTTY - a free SSH and telnet client for Windows
Is Bitvise affiliated with PuTTY? Bitvise is not affiliated with PuTTY. We develop our SSH Server for Windows, which is compatible with PuTTY. Many PuTTY users are therefore our users as well. From time to time, they need to find the PuTTY download link. W
www.putty.org
hostname -I로 알아낸 IP와 따로 설정한 Port를 Putty에 입력한다
아래와 같은 창이 뜨면 성공
처음에 만든 계정으로 로그인해주면 된다
외부 접속 허용
왜인지는 모르겠으나 갑자기 노트북의 와이파이가 제대로 안되길래 외부접속을 허용해버리기로 했다
간단하게 포트포워딩을 해주면 된다
포트포워딩은 각 공유기 모델마다 다르므로 딱히 적지는 않고 공유기모델+포트포워딩 하면 나온다
IP주소는 hostname -I로 나온 것으로 외부/내부 포트는 ssh에서 설정한 포트, 프로토콜은 둘다 로 설정
간단하다
마크 서버 패킷
이제 Ubuntu에 마크 서버를 만들어보자
자바 설치
마인크래프트는 자바로 돌아가고 서버 패킷도 마찬가지이기 때문에 자바를 먼저 설치해준다
sudo apt-get install default-jdk
약 402MB의 저장공간을 사용한다
SSH로 서버를 키고 끄면 SSH를 종료했을 때 터미널이 닫히면서 서버도 닫히게 된다
이를 방지하기 위해 screen이라는 것을 사용한다고 한다
sudo apt-get install screen
Screen 열기
먼저 minecraft server 관련 파일이 들어갈 폴더를 하나 만들자
mkdir minecraft
cd minecraft
만든 폴더로 이동한 뒤 아래 명령어를 입력하면 새로고침(?)된다
screen -S minecraft
BuildTools.jar
다음은 BuildTools를 다운로드한다
https://hub.spigotmc.org/jenkins/job/BuildTools/
BuildTools [Jenkins]
hub.spigotmc.org
이후 어떻게 달라질지 모르겠으나 일단 현재 기준으로 아래 명령어로 받을 수 있다
wget https://hub.spigotmc.org/jenkins/job/BuildTools/lastBuild/artifact/target/BuildTools.jar
그리고 실행한다
java -Xmx4G -jar BuildTools.jar --rev 1.17.1
1.17.1버전으로 실행한다는 것 같다
-Xmx뒤의 4G는 RAM을 얼마나 사용할 것인지로 알고 있다
환경에 맞춰 1G, 2G 500M 등으로 설정하자
그러나 오류 발생
git를 실행할 수 없다고 해서 git을 쳐보니 git이 설치되어 있지 않았다...
우분투면 기본 설치 아니었나...
git을 설치하고 다시 시도
뭔가 clone하고 있다
이번엔 자바 버전이 안맞는다...
Java 11이 아닌 Java16, Java 17을 사용하라고 한다
먼저 기존 자바를 삭제
sudo apt-get purge openjdk-\*
그리고 16버전을 설치해보자
sudo apt-get install openjdk-16-jdk
다시 버전을 확인해 보니 16버전이 잘 설치된 것을 볼 수 있다
다시 명령어를 실행
java -Xmx4G -jar BuildTools.jar --rev 1.17.1
왜인지 모르겠으나 계속 recompiling 하면서 오래 걸린다...
이후 work 폴더로 들어간다
이후 ls로 minecraft_server.1.17.1.jar 이 있는 것을 확인할 수 있다
이것을 아까와 같이 java로 실행해주자
java -Xmx4G -jar minecraft_server.1.17.1.jar
조금 기다리면 뭔가 뜬다
eula.txt와 server.properties를 수정해주어야 한다
eula는 End User License Agreement 의 약자로 소프트웨어 사용자 라이선스 계약이라고 한다
server.properties는 말 그대로 서버 관련 설정을 해준다
서버 설정
vim을 이용해 수정해주자
eula=false를 eula=true로 변경
아래 명령어로 서버를 다시 실행해 본다
java -Xmx4G -jar minecraft_server.1.17.1.jar
Done!이라는 게 보이면 /stop을 입력해 서버를 종료한다
다음은 server.properties를 수정한다
다른 건 크게 건드릴 필요 없고 server-ip만 공유기에서 받은 ip로 변경해주면 된다
아래 명령어로 나온 ip를 입력하자
curl ifconfig.me
외부접속 허용에 살짝 적혀있지만 포트포워딩은 따로 적지 않았으니 공유기마다 찾아야 한다
ip주소는 hostname -I에 나온 ip를 적으면 된다
단 마인크래프트 서버의 포트는 25565가 기본으로 설정되어 있기 때문에 외부/내부 포트를 25565로 설정해야 한다
이 파일을 수정하지 않으면 그냥 컴퓨터의 할당된 ip를 사용한다고 한다
할필요 없었네
괜히 삽질하고 있었다
포트포워딩 여부는 아래 사이트에서 확인할 수 있다
https://www.yougetsignal.com/tools/open-ports/
Open Port Check Tool - Test Port Forwarding on Your Router
www.yougetsignal.com
이런 식으로 나오면 된다
그러면 마인크래프트에서 IP만 입력하면 끝
마무리
라즈베리파이가 8GB RAM이라서 충분할 줄 알았는데 CPU가 딸리는지 서버 지연률이 90ms~200ms까지 나왔다
서버로 사용할 수 없었다
완벽한 삽질 끝!
'작업일지 > Raspberry PI' 카테고리의 다른 글
라즈베리파이 여러가지 자잘한 것들 (0) | 2021.07.11 |
---|---|
라즈베리파이4 원격접속 설정 (0) | 2021.05.30 |
라즈베리파이 cpu온도 모니터링 (0) | 2021.05.29 |
라즈베리파이4 한글 입력 설정 (0) | 2021.05.29 |
라즈베리파이4 설치기 (0) | 2021.05.26 |