Guida [STARTARE DEDICATO] REV_40250, Guida per startare con FreeBSD 9.3 64 bit.

Stato
Discussione chiusa ad ulteriori risposte.

Nirkaja

Utente Silver
16 Aprile 2013
21
7
7
51
Ultima modifica da un moderatore:
Salve a tutti,

Oggi parleremo di come startare i nuovi file in FreeBSD 9.x, premetto che ho seguito io stesso altre guide, ma senza successo, in quanto peccavano in alcuni passaggi, per questo motivo ho trovato una guida, l'ho reinterpretata e tradotta, aggiustando anche qualche problema che era presente anche in quella guida; tengo a precisare che la guida non è mia, aggiungerò i crediti alla fine, anche se io l'ho tradotta, paragonandola anche con alcuni passaggi che usualmente facciamo.

La guida è indicata a chi si è almeno cimentato una volta con lo starting di un server, almeno con Hamachim cercherò di essere più chiaro possibile, ma per chi comincia da zero dovrebbe consultare più guide; spero di farne una in futuro che spieghi tutto nel dettaglio

Iniziamo:

La prima cosa che ci serve, ovviamente, è un dedicato, molti chiedono se anche su un VPS può funzionare, la risposta è si, se ne trovano molti in giro, ma pochi per come servono a noi, descriverò quelli, a mio avviso, i più versatili:



kimsufi.com
: servizio abbastanza carino, rapporto qualità prezzo, una buona gestione della piattaforma, spesso però non si trova il server richiesto, in quanto ne esauriscono la quantità, questo è un dedicato, e permette l'installazione di più distribuzioni di FreeBSD.

worldstream.nl: non ho mai usato questo servizio di hosting, ma molti ne parlano; la fascia di prezzo, a mio avviso, non è indicata per cominciare a smanettare e/o testare.

tilaa.com: è un servizio hosting VPS, non molto performante, ma perfetto per testare i vostri file, o smanettarci sopra, permette anche una gestione macchina da browser, senza l'utilizzo di Putty, un po' come avere un virtualbox nel nostro browser.

Ecco il materiale che ci serve:

Fileserver:
potete trovarli ovunque (Voglio ricordare, che l'uso del file "Game" per intenderci, è vietato poiché protetto da copyright, il resto dei file potete utilizzarli a vostro piacimento, l'unico e solo file ad essere protetto, è il file "Game")

FileZilla, o WinSCP (meglio entrambi). Per la gestione SFTP del server.

LIBS ottenibili >>> QUI <<< sono librerie da aggiungere al nostro OS.

Navicat, per gestire il nostro DB (Esiste anche una versione per iOS).
per una maggiore sicurezza, si consiglia l'utilizzo dell'SSH Tunnel @xXIntelXx

Putty, terminale per gestire il server. Ne esistono altri? Certo! Possiamo gestire il nostro terminale anche dal software WinSCP, o da quegli hosting che hanno un Video Display.

NB. Da WinSCP possiamo solo dare comandi che non richiedono l'input dell'utente, quindi comandi come reboot, o et simila.

Cominciamo:

1. Ogni servizio di Hosting ha la sua gestione software, in genere, una volta che vi viene consegnato, vi vengono fornite le credenziali per accedere (su FreeBSD 10 viene fornito anche il nome utente). Noi abbiamo bisogno di accedere con il nostro terminale, che in questo caso è Putty.

2. Normalmente, i file rev_40250, hanno questo percorso /usr/home/game. Gli archivi tar.gz che troverete in rete, contenente questi file. hanno già impostate le cartelle per seguire questo percorso, quindi, voi dovete inserire l'archivio nella radice /
per radice si intende quella cartella che non ha "livello superiore" appunto, radice. Una volta uploadato il file al nostro server, tramite WinSCP, o FileZilla (consiglio di usare WinSCP per i singoli file, e FileZilla per più file). Digitiamo quanto segue:

Codice:
tar -zxvf nomefile.tar.gz

aspettiamo l'estrazione e accantoniamo momentaneamente questi file per configurare il nostro server.


3. Updating Ports

Codice:
portsnap fetch extract
portsnap update
#Questi comandi servono a estrarre ed aggiornare tutto ciò che ci serve (e anche di più) nel nostro server.


4. Installare Python 2.7

Codice:
cd /usr/ports/lang/python27
make -DBATCH install clean
#Il comando -DBATCH, è utile nel caso in cui vogliamo evitare fastidiose domande fatte all'utente.


5. Librerie standard c++

Codice:
fetch ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/9.1-RELEASE/lib32.txz
tar Jxpvf lib32.txz -C /
rm lib32.txz
#Notate quella parte alla fine nella prima riga di comando? /9.1-RELEASE/lib32.txz; 
poiché noi stiamo usando una versione 9.3, voi dovrete cambiare il 9.1 in 9.3, se avete dubbi sul percorso
dei file, potrete trovare questi link sul sito freebsd.org.

Una volta finito tutto il procedimento 5, caricate le LIBS, quelle ottenibili >>>QUI<<< sulla cartella /usr/lib32.


6. Compat 7x


Codice:
poiché Metin2 è nato girando su FreeBSD 7, noi dobbiamo rendere il nostro sistema FreeBSD, compatibile con quella versione.

cd /usr/ports/misc/compat7x && make -DBATCH install clean
pkg_add -r compat7x-amd64


7. Installare e configurare il MySQL 5.6 Server.

ATTENZIONE, questa è una parte delicata, e discutibile dell'installazione. Ho notato che in alcune guide, gli autori fanno installare la versione 5.5, personalmente, con la versione FreeBSD 9.3, i file game_40250, e il MySQL 5.5, non sono riuscito a startare nulla, il procedimento di installazione infatti, è più lungo, e anche un po' più complicato, ma con la giusta attenzione configureremo tutto a dovere.

Codice:
cd /usr/ports/databases/mysql56-server
make BUILD_OPTIMIZED=yes BUILD_STATIC=yes
make WITH_XCHARSET=all install clean
#Il procedimento di installazione vi porrà alcune domande, voi digitate "Invio" o "Enter" fino ad installazione finita.

Una volta che l'installazione sarà finita, date un bel reboot.

A server avviato, effettuate l'accesso, e digitate i comandi a seguire:

Codice:
ee /etc/rc.conf

Si aprirà un editor, voi dovete aggiungere, alla fine del documento (di solito di poche righe) il comando sotto:

Codice:
mysql_enable="YES"

Una volta fatto premete ESC, Leave Editor, e fate Save.

A questo punto, digitate quanto segue:

Codice:
service mysql-server start
/usr/local/bin/mysqladmin -uroot password 'enterpassword'
Il primo comando starterà il vostro servizio mysql, questa parte in molte guide non è presente, 
ed è facile cadere in errore durante la configurazione del DB.
Il secondo comando vu farà spostare dentro al servizio mysql,  a 'enterpassword' voi dovete inserire 
la vostra password; rendetela più sicura possibile, non usate parole presenti in dizionario, 
non usate password che utilizzate abitualmente. 
Una volta fatto ciò, il sistema lancerà un msg, nulla di preoccupante, 
vi sta avvisando che non è consigliabile digitare password da terminale.

Alcuni utenti che acquistano i servizi OVH, riscontrano alcuni problemi in
questa installazione, se si dovesse presentare digitate quanto segue:

Codice:
pwd_mkdb -p /etc/master.passwd
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql
#Una volta fatto, ripetete lo step di sopra.

8. Caricare il Database del vostro Server Privato, anche questo lo dovete trovare in rete.
"Attenzione, attenzione, moltissimi file tar.gz che contenevano il DB, avevano al suo interno anche la cartella mysql, la cartella test, e altre cartelle che sono uniche in ogni server, sono parte dell'installazione che effettuiamo al punto 7, quello che consiglio di fare è, estrarre il contenuto del Database che vi siete procurati dentro una cartella nel vostro PC, e aggiungere SOLO le cartelle, con i file al suo interno, nel nostro Server, ovvero nel percorso /var/db/mysql. Usate FileZilla per quest'operazione.
I databases MySQL necessari per Metin2 sono:


  • Account
  • Common
  • Hotbackup
  • Log
  • Player

Abbiamo aggiunto i file? Seguendo l'attenzione di sopra? Ora dobbiamo cambiare il group e l'ownership del nostro DB.

Codice:
service mysql-server stop
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql
service mysql-server start

# Il setup che andremo a eseguire adesso, sarà un po' complicato, cercherò di spiegare il tutto nella maniera più chiara
possibile:

Noi adesso andremo a creare un utente per accedere su Navicat, e uno per i core del nostro server, ovvero, ciò
andremo a mettere nei config. Nello specifico useremo "Nirkaja" per l'user di Navicat, e "Metin2" per l'user dei core
"password" per nostra password. C'è una configurazione nel DB, che permetterebbe di settare un indirizzo IP per il solo
accesso a Navicat; non so quanto questa cosa possa funzionare con le nostre connessioni, ma posto comunque il procedimento
nei comandi che seguono, inserire il proprio indirizzo IP, invece del "%", il "%" serve infatti ad autorizzare l'accesso
a chiunque possegga le credenziali. Detto ciò, proseguiamo.


Digitate, per entrare in MySQL:
Codice:
[COLOR=#000000][FONT=Consolas]1. mysql -p
  #Inserite la vostra password db, a questo punto premete "INVIO" o "ENTER"
    vedrete ora, nell'inserimento del testo:
   mysql>[/FONT][/COLOR][COLOR=#000000][FONT=Consolas]
[/FONT][/COLOR]
Proseguite

Codice:
GRANT ALL PRIVILEGES ON *.* TO 'Nirkaja'@'%'
IDENTIFIED BY 'password' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'metin2'@'localhost'
IDENTIFIED BY 'password' WITH GRANT OPTION;
flush priviLeges;
quit

# Ricordate la storia del nome utente Navicat e il nome utente  Metin2? Ve lo ricordo io, Nirkaja dovrete sostituirlo
con il vostro nome utente per accedere a Navicat, mentre Metin2 è l'utente per i vostri core, da mettere nel config.


9. Abbiamo quasi finito:

dirigetevi su /usr/home/game
adesso andare prima sulla cartella auth, aprite il file CONFIG (privo di estensione) e modificate questa parte:

Codice:
PLAYER_SQL: localhost metin2 password player
COMMON_SQL: localhost metin2 password common
LOG_SQL: localhost metin2 password log

Qui vige la storiella dei nome utente, cambiate Metin2 in "Nome_utente_scelto_per_i_core" e la password nella vostra password scelta per il DB.

Una volta finito questo processo andate nella cartella db, qui il file config.txt, ha un'estensione, aprite il file, che sarà un po' diverso rispetto a gli altri, e modificate quest'area:


Codice:
SQL_ACCOUNT = "localhost account metin2 password 0"
SQL_PLAYER = "localhost player metin2 password 0"
SQL_COMMON = "localhost common metin2 password 0"
SQL_HOTBACKUP = "localhost hotbackup metin2 password 0"

Fate tutto ciò anche per gli altri core "game99" e i channel. Date un bel reboot, e per avviare il gioco digitate
1 cd /usr/home/game.
2. ./prender.sh o ./start.sh, a seconda dei vostri file.

Direi che la guida può considerarsi conclusa, tuttavia è probabile che si presentino alcuni problemi, come è successo a me, che reporterò qui sotto con le relative soluzioni.

socket_tcp_bind: tcp_socket:
Can't assign requested address: Dovete aggiungere "BIND_IP: VOSTRO IP SERVER" ad ogni config, subito dopo la stringa channel (es. hostname auth; hostname channel1_1; hostname game99; ecc.)

auth not fount, o game not found?
Dovete assicurarvi che i collegamenti che ci sono dentro ai vostri core, siano settati giusti, per questo vi consiglio di seguire altre guide, per non dilungarmi più di quanto non abbia già fatto.

La guida non è interamente mia, i comandi sono stati presi da un sito di metin2dev, l'autore del 3D è rumor. E' giusto inserire i crediti.

Se qualcosa non è chiaro, o qualche punto non è corretto, aggiornerò la guida.

Voglio ringraziare @xXIntelXx per aver semplificato la lettura della guida e per la dritta di usare l'SSH Tunnel. Come consigliato da te, la guida verrà ampliata per poter aiutare più utenti possibili. Grazie per il tuo contributo.

Saluti
Nirkaja
 
Ultima modifica:
Salve a tutti,

Oggi parleremo di come startare i nuovi file in FreeBSD 9.x, premetto che ho seguito io stesso altre guide, ma senza successo, in quanto peccavano in alcuni passaggi, per questo motivo ho trovato una guida, l'ho reinterpretata e tradotta, aggiustando anche qualche problema che era presente anche in quella guida; tengo a precisare che la guida non è mia, aggiungerò i crediti alla fine, anche se io l'ho tradotta, paragonandola anche con alcuni passaggi che usualmente facciamo.

La guida è indicata a chi si è almeno cimentato una volta con lo starting di un server, almeno con Hamachim cercherò di essere più chiaro possibile, ma per chi comincia da zero dovrebbe consultare più guide; spero di farne una in futuro che spieghi tutto nel dettaglio.

Iniziamo:

La prima cosa che ci serve, ovviamente, è un dedicato. Molti chiedono se anche su un VPS può funzionare, la risposta è sì, se ne trovano molti in giro, ma pochi per come servono a noi, descriverò quelli, a mio avviso, i più versatili:

Kimsufi
kimsufi.com: servizio abbastanza carino, rapporto qualità prezzo, una buona gestione della piattaforma, spesso però non si trova il server richiesto, in quanto ne esauriscono la quantità, questo è un dedicato, e permette l'installazione di più distribuzioni di FreeBSD.

Worldstream
worldstream.nl: non ho mai usato questo servizio di hosting, ma molti ne parlano; la fascia di prezzo, a mio avviso, non è indicata per cominciare a smanettare e/o testare.

tilaa
tilaa.com: è un servizio hosting VPS, non molto performante, ma perfetto per testare i vostri file, o smanettarci sopra, permette anche una gestione macchina da browser, senza l'utilizzo di Putty, un po' come avere un virtualbox nel nostro browser.

Ecco il materiale che ci serve:

Files Server
Potete trovarli ovunque (Voglio ricordare, che l'uso del file "Game" per intenderci, è vietato poiché protetto da copyright, il resto dei file potete utilizzarli a vostro piacimento, l'unico e solo file ad essere protetto, è il file "Game")

Filezilla / WinSCP
FileZilla, o WinSCP (meglio entrambi), per la gestione SFTP del server.

Librerie
LIBS ottenibili >>>QUI<<< sono librerie da aggiungere al nostro OS.

Navicat
Navicat, per gestire il nostro DB (Esiste anche una versione per iOS).

Putty
Putty, terminale per gestire il server. Ne esistono altri? Certo! Possiamo gestire il nostro terminale anche dal software WinSCP, o da quegli hosting che hanno un Video Display.

NB. Da WinSCP possiamo solo dare comandi che non richiedono l'input dell'utente, quindi comandi come reboot et simila.

Cominciamo:

1. Ogni servizio di Hosting ha la sua gestione software, in genere, una volta che vi viene consegnato, vi vengono fornite le credenziali per accedere (su FreeBSD 10 viene fornito anche il nome utente). Noi abbiamo bisogno di accedere con il nostro terminale, che in questo caso è Putty.

2. Normalmente, i file rev_40250, hanno questo percorso /usr/home/game. Gli archivi tar.gz che troverete in rete, contenente questi file hanno già impostate le cartelle per seguire questo percorso, quindi, voi dovete inserire l'archivio nella radice /
Per radice si intende quella cartella che non ha "livello superiore" appunto, radice. Una volta uploadato il file al nostro server, tramite WinSCP, o FileZilla (consiglio di usare WinSCP per i singoli file, e FileZilla per più file). Digitiamo quanto segue:

Codice:
tar -zxvf nomefile.tar.gz

aspettiamo l'estrazione e accantoniamo momentaneamente questi file per configurare il nostro server.

P.S. Non è necessario il percorso /usr/home/game, potete pure installare i files server in qualsivoglia partizione del proprio server finché venga soddisfato lo spazio necessario. Il cambiamento del percorso però comporta reimpostare tutti i collegamenti dei files.

3. Updating Ports

Codice:
portsnap fetch extract
portsnap update
#Questi comandi servono a estrarre ed aggiornare tutto ciò che ci serve (e anche di più) nel nostro server.


4. Installare Python 2.7

Codice:
cd /usr/ports/lang/python27
make -DBATCH install clean
#Il comando -DBATCH, è utile nel caso in cui vogliamo evitare fastidiose domande fatte all'utente.


5. Librerie standard c++

Codice:
fetch ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/9.1-RELEASE/lib32.txz
tar Jxpvf lib32.txz -C /
rm lib32.txz
#Notate quella parte alla fine nella prima riga di comando? /9.1-RELEASE/lib32.txz; 
poiché noi stiamo usando una versione 9.3, voi dovrete cambiare il 9.1 in 9.3, se avete dubbi sul percorso
dei file, potrete trovare questi link sul sito freebsd.org.

Una volta finito tutto il procedimento 5, caricate le LIBS, quelle ottenibili >>>QUI<<< sulla cartella /usr/lib32.


6. Compat 7x


Codice:
poiché Metin2 è nato girando su FreeBSD 7, noi dobbiamo rendere il nostro sistema FreeBSD, compatibile con quella versione.

cd /usr/ports/misc/compat7x && make -DBATCH install clean
pkg_add -r compat7x-amd64


7. Installare e configurare il MySQL 5.6 Server.

ATTENZIONE, questa è una parte delicata, e discutibile dell'installazione. Ho notato che in alcune guide, gli autori fanno installare la versione 5.5, personalmente, con la versione FreeBSD 9.3, i file game_40250, e il MySQL 5.5, non sono riuscito a startare nulla, il procedimento di installazione infatti, è più lungo, e anche un po' più complicato, ma con la giusta attenzione configureremo tutto a dovere.

Codice:
cd /usr/ports/databases/mysql56-server
make BUILD_OPTIMIZED=yes BUILD_STATIC=yes
make WITH_XCHARSET=all install clean
#Il procedimento di installazione vi porrà alcune domande, voi digitate "Invio" o "Enter" fino ad installazione finita.

Una volta che l'installazione sarà finita, date un bel reboot.

A server avviato, effettuate l'accesso, e digitate i comandi a seguire:

Codice:
ee /etc/rc.conf

Si aprirà un editor, voi dovete aggiungere, alla fine del documento (di solito di poche righe) il comando sotto:

Codice:
mysql_enable="YES"

Una volta fatto premete ESC, Leave Editor, e fate Save.

A questo punto, digitate quanto segue:

Codice:
service mysql-server start
/usr/local/bin/mysqladmin -uroot password 'enterpassword'
Il primo comando starterà il vostro servizio mysql, questa parte in molte guide non è presente, 
ed è facile cadere in errore durante la configurazione del DB.
Il secondo comando vu farà spostare dentro al servizio mysql,  a 'enterpassword' voi dovete inserire 
la vostra password; rendetela più sicura possibile, non usate parole presenti in dizionario, 
non usate password che utilizzate abitualmente. 
Una volta fatto ciò, il sistema lancerà un msg, nulla di preoccupante, 
vi sta avvisando che non è consigliabile digitare password da terminale.

Alcuni utenti che acquistano i servizi OVH, riscontrano alcuni problemi in
questa installazione, se si dovesse presentare digitate quanto segue:

Codice:
pwd_mkdb -p /etc/master.passwd
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql
#Una volta fatto, ripetete lo step di sopra.


8. Caricare il Database del vostro Server Privato, anche questo lo dovete trovare in rete.

"Attenzione, attenzione, moltissimi file tar.gz che contenevano il DB, avevano al suo interno anche la cartella mysql, la cartella test, e altre cartelle che sono uniche in ogni server, sono parte dell'installazione che effettuiamo al punto 7, quello che consiglio di fare è, estrarre il contenuto del Database che vi siete procurati dentro una cartella nel vostro PC, e aggiungere SOLO le cartelle, con i file al suo interno, nel nostro Server, ovvero nel percorso /var/db/mysql. Usate FileZilla per quest'operazione.
I databases MySQL necessari per Metin2 sono:
  • Account
  • Common
  • Hotbackup
  • Log
  • Player
Detto ciò, continuiamo"

Abbiamo aggiunto i file? Seguendo l'attenzione di sopra? Ora dobbiamo cambiare il group e l'ownership del nostro DB.

Codice:
service mysql-server stop
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql
service mysql-server start

# Il setup che andremo a eseguire adesso, sarà un po' complicato, cercherò di spiegare il tutto nella maniera più chiara
possibile:

Noi adesso andremo a creare un utente per accedere su Navicat, e uno per i core del nostro server, ovvero, ciò
andremo a mettere nei config. Nello specifico useremo "Nirkaja" per l'user di Navicat, e "Metin2" per l'user dei core
"password" per nostra password. C'è una configurazione nel DB, che permetterebbe di settare un indirizzo IP per il solo
accesso a Navicat; non so quanto questa cosa possa funzionare con le nostre connessioni, ma posto comunque il procedimento
nei comandi che seguono, inserire il proprio indirizzo IP, invece del "%", il "%" serve infatti ad autorizzare l'accesso
a chiunque possegga le credenziali. Detto ciò, proseguiamo.


Codice:
GRANT ALL PRIVILEGES ON *.* TO 'Nirkaja'@'%'
IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
GRANT ALL PRIVILEGES ON *.* TO 'metin2'@'localhost'
IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
quit

# Ricordate la storia del nome utente Navicat e il nome utente  Metin2? Ve lo ricordo io, Nirkaja dovrete sostituirlo
con il vostro nome utente per accedere a Navicat, mentre Metin2 è l'utente per i vostri core, da mettere nel config.


9. Abbiamo quasi finito:

dirigetevi su /usr/home/game
adesso andare prima sulla cartella auth, aprite il file CONFIG (privo di estensione) e modificate questa parte:

Codice:
PLAYER_SQL: localhost metin2 password player
COMMON_SQL: localhost metin2 password common
LOG_SQL: localhost metin2 password log

Qui vige la storiella dei nome utente, cambiate Metin2 in "Nome_utente_scelto_per_i_core" e la password nella vostra password.

Una volta finito questo processo andate nella cartella db, qui il file config.txt, ha un'estensione, aprite il file, che sarà un po' diverso rispetto a gli altri, e modificate quest'area:


Codice:
SQL_ACCOUNT = "localhost account metin2 password 0"
SQL_PLAYER = "localhost player metin2 password 0"
SQL_COMMON = "localhost common metin2 password 0"
SQL_HOTBACKUP = "localhost hotbackup metin2 password 0"

Fate tutto ciò anche per gli altri core "game99" e i channel. Date un bel reboot, e per avviare il gioco digitate
1 cd /usr/home/game.
2. ./prender.sh o ./start.sh, a seconda dei vostri file.

Direi che la guida può considerarsi conclusa, tuttavia è probabile che si presentino alcuni problemi, come è successo a me, che reporterò qui sotto con le relative soluzioni.

socket_tcp_bind: tcp_socket: Can't assign requested address: Dovete aggiungere "BIND_IP: VOSTRO IP SERVER" ad ogni config, subito dopo la stringa channel (es. hostname auth; hostname channel1_1; hostname game99; ecc.)

auth not found, o game not found? Dovete assicurarvi che i collegamenti che ci sono dentro ai vostri core, siano settati giusti, per questo vi consiglio di seguire altre guide, per non dilungarmi più di quanto non abbia già fatto.

La guida non è interamente mia, i comandi sono stati presi da un sito di metin2dev, l'autore del 3D è rumor. È giusto inserire i crediti.

Se qualcosa non è chiaro, o qualche punto non è corretto, aggiornerò la guida.

Saluti,
Nirkaja

Siccome la mia prof di Metodi Matematici è in ritardo (come al solito), ho speso qualche minuto per migliorare giusto di un poco esteticamente la guida. Posso anche dirti un paio di piccoli tips, ad esempio per l'accesso al database, per una maggiore sicurezza vi consiglio di usare l'SSH Tunnel (Google is your friend), ho aggiunto il comando flush privileges; una volta creati gli accounts per il database e messi i Databases che Metin2 utilizza.

Poi non sono d'accordo sull'installazione di compatx, io con le versioni di Freebsd >7 ho sempre installato le libs necessarie in usr/lib32 e usr/lib e mi andava tutto (solo che ora chi le ha più quelle libs lol)

Ad ogni modo, ottima guida, si potrebbe ampliare su come funzionano certe cosettine nei files di Metin2 (i vari collegamenti ecc.), ma comunque per startare semplicemente i files, va benissimo.
 
Ultima modifica:
Salve a tutti,

per avere la guida in rilievo, c'è qualche procedura da fare?

Saluti
Nirkaja
 
E' semplicemente una guida per startare dedicato. Anche perchè lo start tra un game 40250 e un game 2089 (es) è identico, non è che ogni file game ha un suo tipo di start, magari ogni file game ha un file aggiuntivo. (Differenza Game 2089/34k)
 
Salve a tutti,

Oggi parleremo di come startare i nuovi file in FreeBSD 9.x, premetto che ho seguito io stesso altre guide, ma senza successo, in quanto peccavano in alcuni passaggi, per questo motivo ho trovato una guida, l'ho reinterpretata e tradotta, aggiustando anche qualche problema che era presente anche in quella guida; tengo a precisare che la guida non è mia, aggiungerò i crediti alla fine, anche se io l'ho tradotta, paragonandola anche con alcuni passaggi che usualmente facciamo.

La guida è indicata a chi si è almeno cimentato una volta con lo starting di un server, almeno con Hamachim cercherò di essere più chiaro possibile, ma per chi comincia da zero dovrebbe consultare più guide; spero di farne una in futuro che spieghi tutto nel dettaglio

Iniziamo:

La prima cosa che ci serve, ovviamente, è un dedicato, molti chiedono se anche su un VPS può funzionare, la risposta è si, se ne trovano molti in giro, ma pochi per come servono a noi, descriverò quelli, a mio avviso, i più versatili:



kimsufi.com
: servizio abbastanza carino, rapporto qualità prezzo, una buona gestione della piattaforma, spesso però non si trova il server richiesto, in quanto ne esauriscono la quantità, questo è un dedicato, e permette l'installazione di più distribuzioni di FreeBSD.

worldstream.nl: non ho mai usato questo servizio di hosting, ma molti ne parlano; la fascia di prezzo, a mio avviso, non è indicata per cominciare a smanettare e/o testare.

tilaa.com: è un servizio hosting VPS, non molto performante, ma perfetto per testare i vostri file, o smanettarci sopra, permette anche una gestione macchina da browser, senza l'utilizzo di Putty, un po' come avere un virtualbox nel nostro browser.

Ecco il materiale che ci serve:

Fileserver:
potete trovarli ovunque (Voglio ricordare, che l'uso del file "Game" per intenderci, è vietato poiché protetto da copyright, il resto dei file potete utilizzarli a vostro piacimento, l'unico e solo file ad essere protetto, è il file "Game")

FileZilla, o WinSCP (meglio entrambi). Per la gestione SFTP del server.

LIBS ottenibili >>> QUI <<< sono librerie da aggiungere al nostro OS.

Navicat, per gestire il nostro DB (Esiste anche una versione per iOS).
per una maggiore sicurezza, si consiglia l'utilizzo dell'SSH Tunnel @xXIntelXx

Putty, terminale per gestire il server. Ne esistono altri? Certo! Possiamo gestire il nostro terminale anche dal software WinSCP, o da quegli hosting che hanno un Video Display.

NB. Da WinSCP possiamo solo dare comandi che non richiedono l'input dell'utente, quindi comandi come reboot, o et simila.

Cominciamo:

1. Ogni servizio di Hosting ha la sua gestione software, in genere, una volta che vi viene consegnato, vi vengono fornite le credenziali per accedere (su FreeBSD 10 viene fornito anche il nome utente). Noi abbiamo bisogno di accedere con il nostro terminale, che in questo caso è Putty.

2. Normalmente, i file rev_40250, hanno questo percorso /usr/home/game. Gli archivi tar.gz che troverete in rete, contenente questi file. hanno già impostate le cartelle per seguire questo percorso, quindi, voi dovete inserire l'archivio nella radice /
per radice si intende quella cartella che non ha "livello superiore" appunto, radice. Una volta uploadato il file al nostro server, tramite WinSCP, o FileZilla (consiglio di usare WinSCP per i singoli file, e FileZilla per più file). Digitiamo quanto segue:

Codice:
tar -zxvf nomefile.tar.gz

aspettiamo l'estrazione e accantoniamo momentaneamente questi file per configurare il nostro server.


3. Updating Ports

Codice:
portsnap fetch extract
portsnap update
#Questi comandi servono a estrarre ed aggiornare tutto ciò che ci serve (e anche di più) nel nostro server.


4. Installare Python 2.7

Codice:
cd /usr/ports/lang/python27
make -DBATCH install clean
#Il comando -DBATCH, è utile nel caso in cui vogliamo evitare fastidiose domande fatte all'utente.


5. Librerie standard c++

Codice:
fetch ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/9.1-RELEASE/lib32.txz
tar Jxpvf lib32.txz -C /
rm lib32.txz
#Notate quella parte alla fine nella prima riga di comando? /9.1-RELEASE/lib32.txz; 
poiché noi stiamo usando una versione 9.3, voi dovrete cambiare il 9.1 in 9.3, se avete dubbi sul percorso
dei file, potrete trovare questi link sul sito freebsd.org.

Una volta finito tutto il procedimento 5, caricate le LIBS, quelle ottenibili >>>QUI<<< sulla cartella /usr/lib32.


6. Compat 7x


Codice:
poiché Metin2 è nato girando su FreeBSD 7, noi dobbiamo rendere il nostro sistema FreeBSD, compatibile con quella versione.

cd /usr/ports/misc/compat7x && make -DBATCH install clean
pkg_add -r compat7x-amd64


7. Installare e configurare il MySQL 5.6 Server.

ATTENZIONE, questa è una parte delicata, e discutibile dell'installazione. Ho notato che in alcune guide, gli autori fanno installare la versione 5.5, personalmente, con la versione FreeBSD 9.3, i file game_40250, e il MySQL 5.5, non sono riuscito a startare nulla, il procedimento di installazione infatti, è più lungo, e anche un po' più complicato, ma con la giusta attenzione configureremo tutto a dovere.

Codice:
cd /usr/ports/databases/mysql56-server
make BUILD_OPTIMIZED=yes BUILD_STATIC=yes
make WITH_XCHARSET=all install clean
#Il procedimento di installazione vi porrà alcune domande, voi digitate "Invio" o "Enter" fino ad installazione finita.

Una volta che l'installazione sarà finita, date un bel reboot.

A server avviato, effettuate l'accesso, e digitate i comandi a seguire:

Codice:
ee /etc/rc.conf

Si aprirà un editor, voi dovete aggiungere, alla fine del documento (di solito di poche righe) il comando sotto:

Codice:
mysql_enable="YES"

Una volta fatto premete ESC, Leave Editor, e fate Save.

A questo punto, digitate quanto segue:

Codice:
service mysql-server start
/usr/local/bin/mysqladmin -uroot password 'enterpassword'
Il primo comando starterà il vostro servizio mysql, questa parte in molte guide non è presente, 
ed è facile cadere in errore durante la configurazione del DB.
Il secondo comando vu farà spostare dentro al servizio mysql,  a 'enterpassword' voi dovete inserire 
la vostra password; rendetela più sicura possibile, non usate parole presenti in dizionario, 
non usate password che utilizzate abitualmente. 
Una volta fatto ciò, il sistema lancerà un msg, nulla di preoccupante, 
vi sta avvisando che non è consigliabile digitare password da terminale.

Alcuni utenti che acquistano i servizi OVH, riscontrano alcuni problemi in
questa installazione, se si dovesse presentare digitate quanto segue:

Codice:
pwd_mkdb -p /etc/master.passwd
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql
#Una volta fatto, ripetete lo step di sopra.

8. Caricare il Database del vostro Server Privato, anche questo lo dovete trovare in rete.
"Attenzione, attenzione, moltissimi file tar.gz che contenevano il DB, avevano al suo interno anche la cartella mysql, la cartella test, e altre cartelle che sono uniche in ogni server, sono parte dell'installazione che effettuiamo al punto 7, quello che consiglio di fare è, estrarre il contenuto del Database che vi siete procurati dentro una cartella nel vostro PC, e aggiungere SOLO le cartelle, con i file al suo interno, nel nostro Server, ovvero nel percorso /var/db/mysql. Usate FileZilla per quest'operazione.
I databases MySQL necessari per Metin2 sono:


  • Account
  • Common
  • Hotbackup
  • Log
  • Player

Abbiamo aggiunto i file? Seguendo l'attenzione di sopra? Ora dobbiamo cambiare il group e l'ownership del nostro DB.

Codice:
service mysql-server stop
chown -R mysql /var/db/mysql && chgrp -R mysql /var/db/mysql
service mysql-server start

# Il setup che andremo a eseguire adesso, sarà un po' complicato, cercherò di spiegare il tutto nella maniera più chiara
possibile:

Noi adesso andremo a creare un utente per accedere su Navicat, e uno per i core del nostro server, ovvero, ciò
andremo a mettere nei config. Nello specifico useremo "Nirkaja" per l'user di Navicat, e "Metin2" per l'user dei core
"password" per nostra password. C'è una configurazione nel DB, che permetterebbe di settare un indirizzo IP per il solo
accesso a Navicat; non so quanto questa cosa possa funzionare con le nostre connessioni, ma posto comunque il procedimento
nei comandi che seguono, inserire il proprio indirizzo IP, invece del "%", il "%" serve infatti ad autorizzare l'accesso
a chiunque possegga le credenziali. Detto ciò, proseguiamo.


Codice:
GRANT ALL PRIVILEGES ON *.* TO 'Nirkaja'@'%'
IDENTIFIED BY 'password' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'metin2'@'localhost'
IDENTIFIED BY 'password' WITH GRANT OPTION;
flush priviLeges;
quit

# Ricordate la storia del nome utente Navicat e il nome utente  Metin2? Ve lo ricordo io, Nirkaja dovrete sostituirlo
con il vostro nome utente per accedere a Navicat, mentre Metin2 è l'utente per i vostri core, da mettere nel config.


9. Abbiamo quasi finito:

dirigetevi su /usr/home/game
adesso andare prima sulla cartella auth, aprite il file CONFIG (privo di estensione) e modificate questa parte:

Codice:
PLAYER_SQL: localhost metin2 password player
COMMON_SQL: localhost metin2 password common
LOG_SQL: localhost metin2 password log

Qui vige la storiella dei nome utente, cambiate Metin2 in "Nome_utente_scelto_per_i_core" e la password nella vostra password.

Una volta finito questo processo andate nella cartella db, qui il file config.txt, ha un'estensione, aprite il file, che sarà un po' diverso rispetto a gli altri, e modificate quest'area:


Codice:
SQL_ACCOUNT = "localhost account metin2 password 0"
SQL_PLAYER = "localhost player metin2 password 0"
SQL_COMMON = "localhost common metin2 password 0"
SQL_HOTBACKUP = "localhost hotbackup metin2 password 0"

Fate tutto ciò anche per gli altri core "game99" e i channel. Date un bel reboot, e per avviare il gioco digitate
1 cd /usr/home/game.
2. ./prender.sh o ./start.sh, a seconda dei vostri file.

Direi che la guida può considerarsi conclusa, tuttavia è probabile che si presentino alcuni problemi, come è successo a me, che reporterò qui sotto con le relative soluzioni.

socket_tcp_bind: tcp_socket:
Can't assign requested address: Dovete aggiungere "BIND_IP: VOSTRO IP SERVER" ad ogni config, subito dopo la stringa channel (es. hostname auth; hostname channel1_1; hostname game99; ecc.)

auth not fount, o game not found?
Dovete assicurarvi che i collegamenti che ci sono dentro ai vostri core, siano settati giusti, per questo vi consiglio di seguire altre guide, per non dilungarmi più di quanto non abbia già fatto.

La guida non è interamente mia, i comandi sono stati presi da un sito di metin2dev, l'autore del 3D è rumor. E' giusto inserire i crediti.

Se qualcosa non è chiaro, o qualche punto non è corretto, aggiornerò la guida.

Voglio ringraziare @xXIntelXx per aver semplificato la lettura della guida e per la dritta di usare l'SSH Tunnel. Come consigliato da te, la guida verrà ampliata per poter aiutare più utenti possibili. Grazie per il tuo contributo.

Saluti
Nirkaja

Perdonami , ma non hai fatto niente di nuovo. Si sà come startare un dedicato , ci sono decine e decine di guide.
E poi da quando per startare un server con i 40250 si fa un procedimento diverso ? Il procedimento per predisporre il server all'uso dei file di metin2 è sempre uguale. Non cambia dalla revisione dei file.
 
Salve a tutti, ritengo questa guida la più dettagliata in assoluto. Grazie ad essa ed alla pazienza di Nirkaja nel spiegarmi diverse cose ho imparato finalmente a startare correttamente un dedicato senza errori. Altri come per esempio nella guida in rilievo di "Wocy" danno per scontato che certe cose si sappiano, che invece magari gente alle prime armi non imaggina neanche.
Detto questo ringrazio ancora [MENTION=190470]Nirkaja[/MENTION] per il tempo che mi ha dedicato. Un saluto a tutti.
 
Ultima modifica:
Bisognerebbe farti una statua !!! Stavo pensando di rimettere online il mio server fatto in casa, ma ho trovato problemi ed errori continui. La fondazione FreeBSD blocca i download per le versioni meno recenti, addirittura modificando i file e generando errori ! Una sola domanda: che partizioni hai creato ? Non mi ricordo come andavano fatte... Per ora ho provato 100 GB di file system ed il resto per lo swap. Io voglio usare un'ssd nativamente stavolta, sto scaricando FreeBSD 9,3 32 bit ed il sistema è composto da un Amd Phenom II x2 555, 2 GB di ram (eventualmente ne potrei mettere 4, ma visto che di player ce ne saranno ben pochi, non serve), un Vertex 3 120 GB. Finora ho provato il 7.2, 7.3, 8.3, 10.1 (non sono riuscito a farlo partire !!) ed l'8.4 ieri sera, poi mi sono rotto le scatole perchè avevo problemi continui.

EDIT:
-Nel mio caso, con già la versione 32 bit, non mi serve scaricare le lib32 (passo 5)
-Sono 2 volte che reinstallo perchè da putty l'aggiunta della stringa [mysql_enable="YES"] diventa [mysql_enable=YES"] e, nonostante il riavvio ed il login con root, mi dice che è sola lettura e non me lo fa sistemare, bloccando di fatto la rete.
-la stringa [
pkg_add -r compat7x-amd64] nel caso dell'installazione a 32 bit va modificata in [pkg_add -r compat7x-i386]
-PS: consiglio di seguire anche questa guida:

http://www.elitepvpers.com/forum/me...ease-install-web-dedicated-server-metin2.html

in cui viene spiegato anche come installare un web server apache. Premetto che la differenza tra quello scritto li e quello che funziona all'atto pratico, è solo apache22 con apache24.

Fortunatamente è un pc fisico con tastiera e monitor qui a fianco a me...
 
  • Mi piace
Reazioni: Nirkaja
Ultima modifica:
Per chi usa FreeBSD 10 o superiore, dovete installare il compat9x
Codice:
cd /usr/ports/misc/compat9x && make -DBATCH install clean

Se avete poca RAM o volete evitare l'errore swap_pager_getswapspace(X) date il comando:
Codice:
edit /usr/local/my.cnf
Cancellate il # al
Codice:
innodb_buffer_pool_size =
mettete 250M dopo = poi premete ESC -> a -> a

Un ultima cosa nell'Auth devi mettere
Codice:
[COLOR=#333333]PLAYER_SQL: localhost metin2 password account[/COLOR]
altrimenti dovete mettere tutte le tabelle del database account nel database player
 
Ultima modifica:
Sto seguendo la guida utilizzando file 34k, mi potete dare consigli?
Che client posso utilizzare?

--------------------------

Ho seguito la guida ma il client mi rimane su "stai per essere collegato al server". Idee di cosa potrei aver sbagliato?
 
Ho un problema, non riesco a eseguire il passo 5 della guida, infatti non riesco ad usare il comando make.sh e il comando ./qc

Posso risolvere in qualche modo??
 
Ho un problema, non riesco a eseguire il passo 5 della guida, infatti non riesco ad usare il comando make.sh e il comando ./qc

Posso risolvere in qualche modo??

Se utilizzi i file server 2011 di franzi su freebsd 9 devi installare python
"pkg install python"
e devi dare il comando "python make.py"

Se non ti va Qc devi controllare le seguenti cose:
1) QC ha i privilegi 777 (per sicurezza puoi dare "chmod 777 qc")
2) Le librerie compat7x sono installate (puoi verificarlo dando il comando "cd /usr/ports/misc/compat7x/ && make install clean)
3) Le librerie di Metin2 Aggiuntive ci sono (LINK) (Le installi andando in /usr/lib32 se utilizzi 64bit , /usr/lib se utilizzi 32bit)
4) Utilizzi un binario di QC buggato

Sto seguendo la guida utilizzando file 34k, mi potete dare consigli?
Che client posso utilizzare?

--------------------------

Ho seguito la guida ma il client mi rimane su "stai per essere collegato al server". Idee di cosa potrei aver sbagliato?

Puoi utilizzare il client: "dev" della source di metin2 oppure "mainline_2.0" o "mainline_2.1" che vanno compilati dalla source. I file del root , uiscript e locale li trovi nella source del client\bin. il resto puoi utilizzare un normale client r40k
 
Stato
Discussione chiusa ad ulteriori risposte.