본문 바로가기

팰월드 (Palworld)

2. [Linux ubuntu] 팰월드(Palworld) 서버 생성 및 관리 - 백업 기능 만들기

반응형

Palworld의 세이브 파일 백업하는 방법을 알아봅시다.

 

현재 팔월드 서버가 간간히 튕기거나 꺼지는 현상이 발생하는데, 이때 세이브파일이 모두 초기화 되는 현상이 생깁니다.

그리고 제대로 종료해주지 않으면 역시 동일한 증상이 발생하죠. 이를 방지하기 위해 백업하는 방법을 소개합니다.

 

먼저 중요한 세이브파일 백업입니다.

세이브파일은 리눅스 기준 다음 경로에 있습니다.

$HOME/.steam/SteamApps/common/PalServer/Pal/Saved/SaveGames/0

 

보통 하나만 돌리실텐데, 하위 폴더에 0이라는 폴더가 있으니 그걸 통째로 복사해주는 스케쥴러를 만들어주시면 됩니다.

먼저 폴더 하나를 추가로 만들어 줍시다.

mkdir -p $HOME/.steam/SteamApps/common/PalServer/Pal/Saved/SaveGames/backup
cd
vi backup.sh

 

이제 홈 폴더에 백업 스크립트를 작성합니다.

#!/bin/bash
#backup.sh

SAVE=$HOME/.steam/SteamApps/common/PalServer/Pal/Saved/SaveGames/0
BACKUP=$HOME/.steam/SteamApps/common/PalServer/Pal/Saved/SaveGames/backup

TS=$(date +"20%y_%m_%d_%H_%M_%S")
TS_D=$(date +"20%y_%m_%d")
mkdir -p ${BACKUP}/${TS_D}
tar cf ${BACKUP}/${TS_D}/${TS}-backup.tar -C ${SAVE} .

 

이제 리눅스 스케쥴러인 cron을 통해서 정기적으로 해당 shell을 돌려주시면 됩니다.

간격은 자유롭게 조절해주시면 됩니다.

crontab -e

# 해당 라인 추가 (매 30분마다 실행)
*/30 * * * * $HOME/backup.sh

 

crontab의 자세한 사용방법은 

https://tecadmin.net/crontab-in-linux-with-20-examples-of-cron-schedule/

 

Crontab in Linux: 20 Useful Examples for Scheduling Tasks

20 Tips for running Jobs with crontabIn Linux. A Beginner’s Guide for understanding the Crontab cronfiguration and scheduling Job to run.

tecadmin.net

를 참조하세요.

 

이제 백업과정이 모두 끝났습니다. 제대로 되었다면 이제 30분마다 다음과 같이 파일이 생성됩니다.

 

만약 백업을 중단하고 싶으시면 crontab -e를 다시한번 해서 저 라인을 지워주기만 하면 됩니다.

 

복구할때는

tar -xf [원하는 파일의 이름]

 

한 다음에 해당 파일을 덮어씌우면 되겠죠.

 

다음으로 서버의 정기적인 리부트 / 업데이트 방법을 알아보겠습니다.

반응형