Ir para conteúdo

Compilando e rodando um OTServ em Linux (debian). Tutorial Definitivo


Posts Recomendados

Este é um tutorial escrito escrito originalmente para aqueles, que apesar de não terem experiencia com este SO, querem utiliza-lo para rodar seus OTServers, seja por segurança, estabilidade ou simplesmente por quererem aprender. O Linux apesar de assustar de inicio pra quem nunca teve contato, principalmente por não dispor de uma interface grafica (a não ser em casos onde você use o vnc, mas não é o foco deste tutorial), é um grande SO, principalmente quando se trata de gerenciamento de memória, segurança e estabilidade. Neste tutorial vamos fazer uso do Debian 6 64bits e um OT 8.6, apesar de servir para qualquer versão, desde que tenha as sources.

 

Programas necessários:

Putty - Necessário para administrar o vps, via SSH.

FileZilla - Ftp, utilizado para enviar seus arquivos para o vps.

 

Ao contratar um vps Linux até 1 hora você receberá um email contendo o IP e senha root do seu novo servidor. Aqui nós abrimos o FileZilla para mandarmos o OT para o vps. A tela dele é muito simples:

filezila.png

Em Host você coloca o IP do VPS, usuário é "root", e senha é a que você passou no momento da compra, que também foi enviada para seu email juntamente com o IP.

Basta compactar a pasta do seu ot e as Sources em um arquivo .zip, e copiar para o VPS. Aqui no exemplo usaremos a pasta /home, por questões de organização. Para isso, basta digitar "/home" no espaço Endereço Remoto.

Caso seu OT tenha SITE, aproveite e mande o mesmo para o vps também.

 

Agora iremos logar no VPS via PUTTY para instalar os arquivos necessários e compilar o tfs. A tela é igualmente simples, bastando adicionar o IP e clicar em Open. A Tela é a seguinte:

 

putty.png

 

Após isso, será aberta uma tela preta, pedindo login. Digite "root", Enter. Será pedido a senha de root, apenas digite, e depois enter novamente. Será exibido o terminal, algo parecido com a tela abaixo:

putty2.png

 

Perfeito. Você está logado. Vamos começar instalando as libs necessárias para o funcionamento do OT, mysql, apache e mais algumas libs que iremos utilizar, com o seguinte comando:

 

 

 

apt-get update

apt-get install libboost1.42-dev libboost-system1.42-dev libboost-filesystem1.42-dev libboost-date-time1.42-dev libboost-regex1.42-dev libboost-thread1.42-dev libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libmysql++-dev libmysqlclient-dev mysql-client-5.1 mysql-server-5.1 mysql-common libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev zlib1g libcrypto++-dev libcrypto++8 libcurl4-openssl-dev unzip apache2 php5 libapache2-mod-php5 mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin

 

 

 

Pronto. Instalado tudo, estamos prontos para seguir com a compilação. Vá para a pasta /home e descompacte as sources e o ot usando o comando unzip. Por exemplo, caso suas sources estejam em um arquivo chamado sourcez.zip dentro de /home, o comando fica assim:

cd /home [tecle enter]

unzip sources.zip [tecle enter]

 

Em seguida daremos permissão total na pasta, para que não haja problemas. para isso (supondo que a pasta descompactada se chame "sources") execute o comando:

chmod -R 777 sources/ [tecle enter]

 

Entramos na pasta sources com o comando:

cd sources [tecle enter]

 

E compilamos com os seguintes comandos:

./autogen.sh [tecle enter]

./configure --enable-mysql --enable-root-permission [tecle enter]

./build.sh [tecle enter]

 

Compilado. Caso liste o diretório corrente (com o comando "ls") você perceberá um arquivo novo, chamado "theforgottenserver" dentro dessa pasta. Basta copia-lo para a pasta do seu ot. No exemplo, vamos supor que a pasta do ot se chame otserv, e está dentro de /home (ficando /home/otserv) então vc copia o tfs para dentro da pasta do OT com o comando:

cp theforgottenserver /home/otserv [tecle enter]

cd /home/otserv [tecle enter]

chmod 777 theforgottenserver [tecle enter]

 

Agora vamos criar uma DB e importar a database para o mysql. Esta etapa é somente para OTs com site (mysql), podendo ser descartada se você usa account manager e SQLite.

Primeiramente, temos que logar no Mysql e criar uma DB nova para receber a database.sql. Usamos os seguintes comandos:

mysql -u root -p [enter]

aqui será pedido a senha do mysql. Coloque a senha e de enter. Vai abrir o console do Mysql. Nesse exemplo, vamos criar a database com o nome "otserv". Para isso digite o comando:

create database otserv; [enter]

e para sair do console do mysql digite:

exit; [enter]

 

Pronto. Database criada, vamos agora importar a database para essa nova DB que acabamos de criar. Supondo que o arquivo .sql esteja na pasta do ot (/home /otserv) vams ter certeza que estamos nessa pasta, e digitar o comando para importal (supondo que o arquivo contendo a db se chame database.sql)

cd /home/otserv [enter]

mysql -u root -p otserv < database.sql [enter]

 

Perfeito. Vai pedir a senha do mysql, é só digitar e teclar enter. Se não ver nenhuma mensagem de erro, sua DB foi importada com sucesso. Agora só falta o site. Como ja instalamos o apache juntamente com as libs, é somente jogar o site dentro da pasta /var/www e pronto. Site funcionando. Você pode usar o FileZilla para isso.

 

Perfeito. Só rodar o theforgottenserver e ser feliz ;D digite (dentro da pasta /home/otserv):

 

./theforgottenserver [tecle enter]

 

CRÉDITOS :

JVSERVERS.COM.BR

Editado por Luquinh4
Link para o comentário
Compartilhar em outros sites

Muito bem amigo! Foi pra ser simples e inteiro mesmo, indico esse tutorial para todos que pegam vps linux conosco pra tibia, e mesmo os que nunca tiveram experiencia nenhuma com linux, conseguem fazer 100% sozinhos, o bom é que depois que fiz esse tutorial, começou a sobrar tempo até pra eu tomar banho todos os dias. rsrs :D

Link para o comentário
Compartilhar em outros sites

1° não é necessário dar permissçao total ao "theforgottenserver" somente permissão de execução, "x+".

2° a parte da compilação poderia ser feita em um comando só, " chmod 777 autogen.sh && ./autogen,sh && ./configure --enable-mysql --enable-root-permission && chmod 777 build.sh && ./build.sh "

 

outra coisa, qual versão do theforgottenserver você usou pra realizar esse tutorial?

Link para o comentário
Compartilhar em outros sites

olha eu fiz seguindo esse tutorial e não tive problema, compilei o 0.4 e deu certo, se do jeito que você falou dava certo também, tudo bem.

 

porém esse modo também dá.

Link para o comentário
Compartilhar em outros sites

  • 1 month later...

 

Deveria trocar o titulo para vps linux, estou procurando um tutorial de como rodar um ot em casa com SO linux.

 

só fazer a parte do terminal pra baixo jovem

 

 

Que terminal?

Link para o comentário
Compartilhar em outros sites

 

 

Deveria trocar o titulo para vps linux, estou procurando um tutorial de como rodar um ot em casa com SO linux.

 

só fazer a parte do terminal pra baixo jovem

 

 

Que terminal?

 

 

 

aquela tela preta ali no tutorial.

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
  • 4 weeks later...

Este é um tutorial escrito escrito originalmente para aqueles, que apesar de não terem experiencia com este SO, querem utiliza-lo para rodar seus OTServers, seja por segurança, estabilidade ou simplesmente por quererem aprender. O Linux apesar de assustar de inicio pra quem nunca teve contato, principalmente por não dispor de uma interface grafica (a não ser em casos onde você use o vnc, mas não é o foco deste tutorial), é um grande SO, principalmente quando se trata de gerenciamento de memória, segurança e estabilidade. Neste tutorial vamos fazer uso do Debian 6 64bits e um OT 8.6, apesar de servir para qualquer versão, desde que tenha as sources.

 

Programas necessários:

Putty - Necessário para administrar o vps, via SSH.

FileZilla - Ftp, utilizado para enviar seus arquivos para o vps.

 

Ao contratar um vps Linux até 1 hora você receberá um email contendo o IP e senha root do seu novo servidor. Aqui nós abrimos o FileZilla para mandarmos o OT para o vps. A tela dele é muito simples:

filezila.png

Em Host você coloca o IP do VPS, usuário é "root", e senha é a que você passou no momento da compra, que também foi enviada para seu email juntamente com o IP.

Basta compactar a pasta do seu ot e as Sources em um arquivo .zip, e copiar para o VPS. Aqui no exemplo usaremos a pasta /home, por questões de organização. Para isso, basta digitar "/home" no espaço Endereço Remoto.

Caso seu OT tenha SITE, aproveite e mande o mesmo para o vps também.

 

Agora iremos logar no VPS via PUTTY para instalar os arquivos necessários e compilar o tfs. A tela é igualmente simples, bastando adicionar o IP e clicar em Open. A Tela é a seguinte:

 

putty.png

 

Após isso, será aberta uma tela preta, pedindo login. Digite "root", Enter. Será pedido a senha de root, apenas digite, e depois enter novamente. Será exibido o terminal, algo parecido com a tela abaixo:

putty2.png

 

Perfeito. Você está logado. Vamos começar instalando as libs necessárias para o funcionamento do OT, mysql, apache e mais algumas libs que iremos utilizar, com o seguinte comando:

 

 

 

apt-get update

apt-get install libboost1.42-dev libboost-system1.42-dev libboost-filesystem1.42-dev libboost-date-time1.42-dev libboost-regex1.42-dev libboost-thread1.42-dev libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libmysql++-dev libmysqlclient-dev mysql-client-5.1 mysql-server-5.1 mysql-common libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev zlib1g libcrypto++-dev libcrypto++8 libcurl4-openssl-dev unzip apache2 php5 libapache2-mod-php5 mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin

 

 

 

Pronto. Instalado tudo, estamos prontos para seguir com a compilação. Vá para a pasta /home e descompacte as sources e o ot usando o comando unzip. Por exemplo, caso suas sources estejam em um arquivo chamado sourcez.zip dentro de /home, o comando fica assim:

cd /home [tecle enter]

unzip sources.zip [tecle enter]

 

Em seguida daremos permissão total na pasta, para que não haja problemas. para isso (supondo que a pasta descompactada se chame "sources") execute o comando:

chmod -R 777 sources/ [tecle enter]

 

Entramos na pasta sources com o comando:

cd sources [tecle enter]

 

E compilamos com os seguintes comandos:

./autogen.sh [tecle enter]

./configure --enable-mysql --enable-root-permission [tecle enter]

./build.sh [tecle enter]

 

Compilado. Caso liste o diretório corrente (com o comando "ls") você perceberá um arquivo novo, chamado "theforgottenserver" dentro dessa pasta. Basta copia-lo para a pasta do seu ot. No exemplo, vamos supor que a pasta do ot se chame otserv, e está dentro de /home (ficando /home/otserv) então vc copia o tfs para dentro da pasta do OT com o comando:

cp theforgottenserver /home/otserv [tecle enter]

cd /home/otserv [tecle enter]

chmod 777 theforgottenserver [tecle enter]

 

Agora vamos criar uma DB e importar a database para o mysql. Esta etapa é somente para OTs com site (mysql), podendo ser descartada se você usa account manager e SQLite.

Primeiramente, temos que logar no Mysql e criar uma DB nova para receber a database.sql. Usamos os seguintes comandos:

mysql -u root -p [enter]

aqui será pedido a senha do mysql. Coloque a senha e de enter. Vai abrir o console do Mysql. Nesse exemplo, vamos criar a database com o nome "otserv". Para isso digite o comando:

create database otserv; [enter]

e para sair do console do mysql digite:

exit; [enter]

 

Pronto. Database criada, vamos agora importar a database para essa nova DB que acabamos de criar. Supondo que o arquivo .sql esteja na pasta do ot (/home /otserv) vams ter certeza que estamos nessa pasta, e digitar o comando para importal (supondo que o arquivo contendo a db se chame database.sql)

cd /home/otserv [enter]

mysql -u root -p otserv < database.sql [enter]

 

Perfeito. Vai pedir a senha do mysql, é só digitar e teclar enter. Se não ver nenhuma mensagem de erro, sua DB foi importada com sucesso. Agora só falta o site. Como ja instalamos o apache juntamente com as libs, é somente jogar o site dentro da pasta /var/www e pronto. Site funcionando. Você pode usar o FileZilla para isso.

 

Perfeito. Só rodar o theforgottenserver e ser feliz ;D digite (dentro da pasta /home/otserv):

 

./theforgottenserver [tecle enter]

 

CRÉDITOS : JVSERVERS.COM.BR

 

qdo uso a parte do

 

apt-get install libboost1.42-dev libboost-system1.42-dev libboost-filesystem1.42-dev libboost-date-time1.42-dev libboost-regex1.42-dev libboost-thread1.42-dev libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libmysql++-dev libmysqlclient-dev mysql-client-5.1 mysql-server-5.1 mysql-common libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev zlib1g libcrypto++-dev libcrypto++8 libcurl4-openssl-dev unzip apache2 php5 libapache2-mod-php5 mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin

 

 

da isso:

 

root@Henry-PC:/home/henry# apt-get install libboost1.42-dev libboost-system1.42-dev libboost-filesystem1.42-dev libboost-date-time1.42-dev libboost-regex1.42-dev libboost-thread1.42-dev libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libmysql++-dev libmysqlclient-dev mysql-client-5.1 mysql-server-5.1 mysql-common libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev zlib1g libcrypto++-dev libcrypto++8 libcurl4-openssl-dev unzip apache2 php5 libapache2-mod-php5 mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin

Lendo listas de pacotes... Pronto

Construindo árvore de dependências

Lendo informação de estado... Pronto

O pacote libboost-date-time1.42-dev não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

 

O pacote libboost-filesystem1.42-dev não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

 

O pacote libboost-regex1.42-dev não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

 

O pacote libboost-system1.42-dev não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

 

O pacote libboost-thread1.42-dev não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

 

O pacote libboost1.42-dev não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

 

O pacote mysql-client-5.1 não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

No entanto, os pacotes a seguir o substituem:

mysql-client-5.5

 

O pacote mysql-server-5.1 não está disponível, mas é referenciado por outro pacote.

Isto pode significar que o pacote está faltando, ficou obsoleto ou

está disponível somente a partir de outra fonte

No entanto, os pacotes a seguir o substituem:

mysql-server-core-5.5 mysql-server-5.5

 

E: O pacote 'libboost1.42-dev' não tem candidato para instalação

E: O pacote 'libboost-system1.42-dev' não tem candidato para instalação

E: O pacote 'libboost-filesystem1.42-dev' não tem candidato para instalação

E: O pacote 'libboost-date-time1.42-dev' não tem candidato para instalação

E: O pacote 'libboost-regex1.42-dev' não tem candidato para instalação

E: O pacote 'libboost-thread1.42-dev' não tem candidato para instalação

E: O pacote 'mysql-client-5.1' não tem candidato para instalação

E: O pacote 'mysql-server-5.1' não tem candidato para instalação

E: Impossível encontrar o pacote libcrypto++8

E: Não foi possível encontrar o pacote através da expressão regular 'libcrypto++8'

Link para o comentário
Compartilhar em outros sites

source.list ta bugado.

 

Fixa-lo.

$ sudo gedit /etc/apt/sources.list
## Ubuntu Precise.
deb http://br.archive.ubuntu.com/ubuntu/ precise main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ precise main restricted universe multiverse
 
## Ubuntu Updates.
deb http://security.ubuntu.com/ubuntu precise-security main restricted universe multiverse
deb http://br.archive.ubuntu.com/ubuntu/ precise-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ precise-updates main restricted universe multiverse
 
## Ubuntu Backports
deb http://br.archive.ubuntu.com/ubuntu/ precise-backports main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ precise-backports main restricted universe multiverse
 
## Canonical's 'partner'.
deb http://archive.canonical.com/ubuntu oneiric partner
 
## Ubuntu Extras.
deb http://extras.ubuntu.com/ubuntu oneiric main
$ sudo apt-get update
$ sudo apt-get autoclean

VLW AI CHEFE

Link para o comentário
Compartilhar em outros sites

  • 6 months later...
×
×
  • Criar Novo...