[HowTo]Metin Server einrichten

02/27/2010 22:54 iMer#1
Hoi,
Hier nehme ich als Beispiel FreeBsd 7
Okey fangen wir an:
Wir nehmen mal an ihr habt den Server gemietet und der Server an sich ist schon fertig eingerichtet.
Dann müsst ihr als erstes portsnap installieren:
PHP Code:
portsnap fetch extract 
Nun wartet ihr bis das fertig ist
(Dauert je nach Leistung des Servers 20-40 Min)
Nun installieren wir Mysql:
PHP Code:
cd /usr/ports/databases/mysql50-server 
make WITH_XCHARSET
=all install clean 
Dies lasst ihr nun auchwieder durchlaufen.
Wenn es fertig ist müsst ihr noch den Autostart eintrag für MySQL anlegen
PHP Code:
ee /etc/rc.conf 
Hier schreibt ihr dann ganz unten rein:
PHP Code:
mysql_enable="YES" 
Dann noch ESC ENTER ENTER drücken und ihr habt es gespeichert
Server noch neustarten und MySQL ist fertig installiert :)
PHP Code:
reboot 
Okey:
Jetzt gibt es 3 Möglichkeiten:
1.Ihr habt noch die mysql dateien (.myd und so) von eurem Hamachiserver (findet ihr unter /var/db/mysql)
2. Ihr habt noch .sql dumps eurer Db
3. Ihr habt nichts (wollt neuen Server machen)
zu 1.:
Nun stoppt ihr MySQL mit:
PHP Code:
/usr/local/etc/rc.d/mysql-server stop 
Dann ladet ihr die .myd Dateien nach
PHP Code:
/var/db/mysql
(FTP und so)
Wenn alle oben sind gebt ihr den Dateien rechte und ordnet sie MySQL zu:
PHP Code:
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql 
Dann startet ihr MySQL wieder:
PHP Code:
/usr/local/etc/rc.d/mysql-server start 
zu 2.:
Ihr loggt euch per
[php]mysql -uroot -p[PHP]
ein
Bei Passwort einfach Enter drücken (=leeres Passwort)
dann erstellt ihr einen User , mit dem ihr per Navicat dann eure .sql Datei einspielen könnt.
PHP Code:
grant all on *.* to USERNAME@"%" identified by "PASSWORT"
USERNAME und PASSWORT natürlich durch den Usernamen und Passwort ersetzen.

zu 3.:
Sucht eine leere Db in E*PvP und tut diese mit Schritt 1/2 rein

Da nun die Datenbank oben ist, könnt ihr die Serverfiles draufklatschen.
Ihr empfehle euch die game0901.tar.gz zu laden.
Diese könnt ihr nämlich auf eurem Root entpacken.
PHP Code:
tar -xzvf game0901.tar.gz 
Tut die Sf am besten nach /home/game da auf /home am meisten Platz ist :)
Dann müsst ihr noch eure (evtl. vorhandenen) geänderten Quests/Maps whatever nach /home/game/channel/share_data packen

Nun kommen wir zum letzten Teil
Den lib Dateien.
Wenn ihr die game0901.tar.gz genommen habt, ist im game ordner ein Ordner "lib_old" den Inhalt ziehen wir auf unseren PC und laden ihn dann wieder nach /lib

!VORSICHT!
Nichts überschreiben!
Auch wenn es größer ist!
Wenn ihr etwas überschreibt kann das euer System töten!
!VORSICHT!

Als letztes erstellen wir noch einen MySQL-User für unseren Server.
In den Files die ich in den Tut hier 'benutzt' habe ist es standartmäßig als
User: mt2
Pw: mt2!@#
eingetragen
dies können wir auch beibehalten!
Ihr erstellt euch also einen User:
PHP Code:
mysql -uroot -p
grant all on 
*.* to mt2@"localhost" identified by "mt2!@#"
das @"localhost" ist hier besonders wichtig, da der User dann nur von localhost also von dem Server selbst aus auf die Db zugreifen kann.
Nun starten wir mal testweise "db"
PHP Code:
cd /home/game/db 
./db 
Wenn alles ohne Fehler durchläuft sieht das so aus:
Code:
asdfgh# ./db
METIN2_DB_CACHE: GERMANY
Real Server
Log OffSuccess PLAYER
Success ACCOUNT
Success COMMON
Success HOTBACKUP
Wenn es durchläuft könnt ihr Strg+C drücken, was db abbricht.
Nun könnt ihr euren Metin Server ganz starten
PHP Code:
cd /home/game
./start.sh 
Viel Spaß

iMer
PS: Tut funzt zu 101% :P

on english:

i take freebsd 7,1 for this example
Okey let's go:
first you have to install portsnap:
PHP Code:
portsnap fetch extract 
wait until it's finished
(~20-40 min)
now we install MySQL:
PHP Code:
cd /usr/ports/databases/mysql50-server 
make WITH_XCHARSET
=all install clean 
wait until it's finished~
now you have to make an entry in the rc.conf to start mysql when the server starts
PHP Code:
ee /etc/rc.conf 
That you write:
PHP Code:
mysql_enable="YES" 
in it
after that press ESC ENTER ENTER
So you only have to reboot and mysql is ready
PHP Code:
reboot 
There are 3 ways to put the database in it:
1.you have the .myd (and so on) files from your server or so (you can find them at /var/db/mysql)
2. you have mysql dumps from your database
3. You have nothing (you want to make a new server)

~> 1.:
You stop mysql:
PHP Code:
/usr/local/etc/rc.d/mysql-server stop 
Upload the .myd and so on files to
PHP Code:
/var/db/mysql
(FTP~)
if they all are uploadet give them chmod rights:
PHP Code:
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql 
now you can start mysql:
PHP Code:
/usr/local/etc/rc.d/mysql-server start 
~> 2.:
log in per:
[php]mysql -uroot -p[PHP]

he wants a password from you
press enter ;) (=empty password)
then you create a user to batch in your .sql files.
PHP Code:
grant all on *.* to USERNAME@"%" identified by "PASSWORD"

zu 3.:Look for an empty database in e*pvp and look at 1./2.

The database is ready and now you upload the serverfiles
i took the "game0901.tar.gz" (link ~> pn)
This you can extract on your server
PHP Code:
tar -xzvf game0901.tar.gz 
Put the archive to /home/game
you only have to put your modified quest files (and so on) to /home/game/channel/share_data/

the last thing you have to do is to upload the lib files
if you took the "game0901.tar.gz", you will find the need lib files in "/home/game/lib_old"
download them on to your pc and upload them to /lib


!ATTENTION!
Don't overwrite anything!
it could damage your root!
!ATTENTION!

last step:
we make another mysql user for the metin2server
in the files i used for this tutorial the user is allways:
User: mt2
Pw: mt2!@#

So you make a user:
PHP Code:
mysql -uroot -p
grant all on 
*.* to mt2@"localhost" identified by "mt2!@#"
the @"localhost" is very important. the user only can login from "localhost" (your server)
now we run "db" to test the databases
PHP Code:
cd /home/game/db 
./db 
when it starts without errors it looks like:
Code:
# ./db
METIN2_DB_CACHE: GERMANY
Real Server
Log OffSuccess PLAYER
Success ACCOUNT
Success COMMON
Success HOTBACKUP
if there are no errors you can press ctrl+c to abort it

now you can start your own server
PHP Code:
cd /home/game
./start.sh 
have fun
02/27/2010 22:54 Painless#2
N1

Danke^^

iMer ftw
02/27/2010 22:55 Imaginär#3
Vom Inhalt her ist es doch eig. like das Tutorial von Garuga?
02/27/2010 22:56 Luna.Host#4
nice guid alles ncie beschrieben weiter so thxxs wet :-)
02/27/2010 22:56 тrαder#5
Thx fürs tut Ausführlich
02/27/2010 22:58 iMer#6
Quote:
Originally Posted by _DownTime View Post
Vom Inhalt her ist es doch eig. like das Tutorial von Garuga?
Kann sein.
Du kannst mir glauben
es is 0 abgeguckt ich mache des immer so.
02/27/2010 22:58 .Böser~Affe.#7
Also nach Garugas tut habe ich es auch hin bekommen beim 1. mal!....
02/27/2010 22:59 GulliGeorg#8
Ja inhaltlich wie von Garuga aber meiner Meinung nach leichter zu verstehen
02/27/2010 23:00 .Klebestreifen#9
N1 iMer*-* FTW!
02/27/2010 23:01 michi304#10
nich schlecht
02/27/2010 23:02 D4rkEffect#11
Wo bekomme ich *hust* die game Datei her?*keine anfrage* :D
02/27/2010 23:05 Athenar#12
nice!

THX!
02/27/2010 23:54 IgorGlock#13
LöL ich kenn's auswenig... aber ich mach auch immer IP Sperre+Kernel dazu... dann passt schon.. und die Libs??? Verlinkte mein TuT mit Libs! Oder für FreeBSD 8.0 dein TuT
02/27/2010 23:59 .Marcel'#14
Quote:
Originally Posted by IgorGlock View Post
LöL ich kenn's auswenig... aber ich mach auch immer IP Sperre+Kernel dazu... dann passt schon.. und die Libs??? Verlinkte mein TuT mit Libs! Oder für FreeBSD 8.0 dein TuT
Genau Garuga hat auch das TuT mit den Libs vergessen :rolleyes:
Diese blöden Lib files ;)
Aber nice TuT
02/28/2010 00:08 .achi#15
Ich hab nichts anderes von iMer erwartet :D Nice...^^