Zdalne wykonywanie kopii serwera Minecraft (lub czegokolwiek innego) na lokalny Linuxowy serwer domowy

artur9010 | 2020-04-10 13:53:03 UTC | #1

Sytuacja ma się tak, mamy sobie serwer VPS i mamy sobie mały domowy serwerek umieszczony w domu pod routerem (jak ten mój, taki maly dell lezacy pod routerem). VPS ma mało miejsca, serwer w domku ma potężne hdd PIEŃĆSET GIGA.

Zacznijmy od lognięcia się na nasz domowy serwerek i wygenerowania sobie klucza ssh poleceniem ssh-keygen -t rsa -b 4096.
Skopiujmy sobie nasz klucz publiczny: cat ~/.ssh/id_rsa.pub

Screenshot 2020-03-08 at 03.20.00|690x441

Klucz wygenerowalismy i skopiowalismy po to, byśmy nie musieli podawać hasła podczas logowania do serwera VPS.

Teraz pora zalogować się do naszego vpsa i otworzyć w naszym ulubionym edytorze plik ~/.ssh/authorized_keys, gdzie w nowej linii dopisujemy wypluty przez kota klucz publiczny.

Zapisujemy plik i w zasadzie możemy już się z vpsa wylogować.

Teraz możemy po prostu zdalnie spakować i umiejscowić na naszym dysku kopię nasego serwera majnkraft jednym prostym poleceniem!

ssh minecraft@f1.ucraft.pl tar czf - /home/minecraft/skyblock > ~/skyblock.tar.gz
````

**Zapytasz pewnie zaraz: Ej artur, a co to w ogole robi, co ty mi tu za jakies tarki wciskasz oszuscie jeden?**
Otoz tak, łączymy się do naszego serwera VPS, wywołujemy polecenie tar które spakuje nasz folder z serwerem a całość pipujemy (jest na to jakieś polskie slowo?) do pliku `skyblock.tar.gz` na naszym domowym serwerku.

I sobie jakos to leci, mozna dorzucic do crona czy coś.

PS. Tam w ostatnim poleceniu to pozmieniajcie sobie adres hosta i katalogi na wlasne.

**edit po chwili namysłu: W sumie, to zostawie jeszcze to jako ciekawostkę. Taką bardzo przydatną ciekawostkę, możecie wykluczyć poszczególne foldery podając parametr `exclude` między myśniczkiem a źródłem**
Przykładowo: 

ssh [email protected] tar czf - –exclude=’/home/minecraft/skyblock/worldtheend’ /home/minecraft/skyblock > ~/skyblock.tar.gz

Jeśli chcemy wykluczyć kilka katalogów, po prostu podajemy je jako kolejne paramentry `exclude`. np. 

–exclude=’/home/minecraft/skyblock/worldtheend’ –exclude=’/home/minecraft/skyblock/world’
```

|84x126Poradnik miesiąca: marzec 2020