Ir para conteúdo
  • Cadastre-se

linux Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04


Posts Recomendados

  • luanluciano93 mudou o título para Tutorial completo de infraestrutura para montar um servidor TF 1.x no Ubuntu 22.04
  • 4 weeks later...
8 horas atrás, killdary disse:

Fiz tudo certinho conforme todos os topicos,porem quando vou logar no servidor o mesmo encontra o personagem,porem da connection refused

Tive um problema parecido recentemente, e era a questão do firewall, eu abri a porta 7171 e esqueci da 7172.

Link para o post
Compartilhar em outros sites

Consegue ajudar para conectar no servidor ? Realizei as configurações default, na azure. Mas não sei como conectar no server

................................................Elite caos.............................................

sign8.jpg

Meu FAN Use:

fanbarri.jpg

Metas:

Moderador

Link para o post
Compartilhar em outros sites
17 horas atrás, akatsuki disse:

Consegue ajudar para conectar no servidor ? Realizei as configurações default, na azure. Mas não sei como conectar no server

Depois de todos passos do tutorial a unica questão para ainda não conseguir conectar é o firewall. Não sei como funciona na azure, mas você deve liberar as portas 7171 e 7172.

Link para o post
Compartilhar em outros sites

Ah sim, estava liberado! minha questão era sobre qual client usar e, é preciso alterá-lo para conectar. Depois de algumas pesquisas encontrei a solução, entretanto te agradeço pela publicação bem explicada.
Como sugestão, acredito que possa anexar mais uma etapa para a conexão, esses modelos novos de OT são um pouco mais complexos, o último que havia criado foi em 2013.

................................................Elite caos.............................................

sign8.jpg

Meu FAN Use:

fanbarri.jpg

Metas:

Moderador

Link para o post
Compartilhar em outros sites
  • luanluciano93 mudou o título para Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04
  • 3 months later...

Adicionado comando para dar a permissão necessária a pasta cache do site. no tutorial do site e adicionado o comando para desativar o apport, para o restart gerar o arquivo core no caso de erros no tutorial do servidor.

Editado por luanluciano93 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 5 months later...
Em 05/07/2022 em 01:22, luanluciano93 disse:

Atualizado do Ubuntu 20.04 para  Ubuntu 22.04.

Poderia ter deixado para as duas versões, agora eu tenho o Ubuntu 20.04 e não acho um tutorial descente igual esse pra fazer as instalações.

Link para o post
Compartilhar em outros sites
Em 15/10/2023 em 10:12, ricardo3 disse:

Poderia ter deixado para as duas versões, agora eu tenho o Ubuntu 20.04 e não acho um tutorial descente igual esse pra fazer as instalações.

Pense que é forma de apoiar a usar sempre o mais atual, consequentemente o mais seguro, estável ... etc.

Link para o post
Compartilhar em outros sites
Em 31/07/2022 em 03:10, akatsuki disse:

Ah sim, estava liberado! minha questão era sobre qual client usar e, é preciso alterá-lo para conectar. Depois de algumas pesquisas encontrei a solução, entretanto te agradeço pela publicação bem explicada.
Como sugestão, acredito que possa anexar mais uma etapa para a conexão, esses modelos novos de OT são um pouco mais complexos, o último que havia criado foi em 2013.

Como fez pra conseguir conectar ?

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por luanluciano93
      Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 
       
      Aqui ensinaremos como compilar o código fonte do TFS na máquina LINUX e posterior configurar o servidor.
       
      PASSO 1 - COMPILANDO TFS NO UBUNTU
       
      Primeiramente, devemos instalar os softwares necessários. O comando a seguir instalará o CMake, um compilador e as bibliotecas usadas pelo TFS. Após usar o comando digite Y para aceitar a instalação.
      sudo apt install cmake build-essential libluajit-5.1-dev libmysqlclient-dev libboost-system-dev libboost-iostreams-dev libboost-filesystem-dev libpugixml-dev libcrypto++-dev libfmt-dev libboost-date-time-dev  
      Caso ainda não tenha criado a pasta do servidor (como foi dito no tutorial de instalação do PHP), use o comando a seguir para criar a pasta:
      sudo mkdir /home/otserv  
      E depois vá até a pasta usando o comando: 
      cd /home/otserv  
      Agora, usando o WinSCP vá até a pasta /home/otserv/ e jogue a pasta de seu servidor ai dentro ... 
       
      Antes deve estar assim: (se você seguiu o tutorial de instalação do PHP)
         
       
      Depois, os arquivos transferidos devem ser esses!

       
      Caso você não tenha os arquivos necessários, use:
      - TFS atual: https://github.com/otland/forgottenserver
      - TFS Nekiro's 8.60 Downgrade: https://github.com/nekiro/TFS-1.5-Downgrades/tree/8.60
       
      Após transferido os arquivos, use o comando abaixo para criar a pasta BUILD e entrar nela: 
      mkdir build && cd build E depois, use o comando do compilador: 
      cmake ..  
      Agora use o comando para compilar o código fonte do TFS:
      make  
      E pronto, o código fonte foi compilado e gerou um arquivo "tfs", agora use o comando a seguir para mover o TFS para a pasta do servidor e voltar para a pasta anterior.
      mv tfs .. && cd .. Ficando assim na pasta "otserv": 

       
      PASSO 2 - IMPORTANDO DATABASE E AJUSTANDO CONEXÃO PELO CONFIG.LUA
       
      Entre em seu phpmyadmin pelo navegador (IP/phpmyadmin, ou o outro destino que você escolheu conforme o tópico de instalação do phpmyadmin) 

      Depois clique em "novo" para criar um novo banco de dados:
       
       
      E depois de digitar o nome do novo banco de dados, clique em "criar": 

       
      Agora clique em "IMPORTAR" e depois em "escolher arquivo":

      E então selecione o arquivo padrão de database. Se você não tiver um arquivo padrão, use a do TFS: https://raw.githubusercontent.com/otland/forgottenserver/master/schema.sql
       
      E por fim, clique em EXECUTAR.

       
       
      No arquivo config.lua.dist você deve ajustar o dados para a conexão com o banco de dados: 
       
      -- MySQL mysqlHost = "127.0.0.1" mysqlUser = "forgottenserver" mysqlPass = "" mysqlDatabase = "forgottenserver" mysqlPort = 3306 mysqlSock = ""  
      (você pode incluir o caminho do mysqlSock para mysqlSock = "/var/run/mysqld/mysqld.sock"
       
      PASSO 3 - LIGANDO SEU SERVIDOR TFS NO UBUNTU E CRIANDO ARQUIVO AUTO RESTART
       
      Para prosseguirmos será necessária a instalação do SCREEN em sua máquina, veja o tutorial que explica o que ele é, para que server e ensina instala-lo: AQUI.
       
      Após a instalação, vamos criar um SCREEN para rodar o servidor chamada TFS ... 
      screen -S TFS  
      E após, usando o WinSCP, vá até a pasta do seu servidor em /home/otserv/ e crie um arquivo chamado "restart.sh" e coloque isso dentro dele:
      #!/bin/bash # to get 'ts' command: sudo apt install moreutils # to get 'crc32' command: sudo apt install libarchive-zip-perl BINARY_NAME=tfs MYSQL_USER=xxxx MYSQL_PASS=yyyy MYSQL_DATABASE=zzzz mkdir console mkdir crashlog mkdir mysql_backup # Permitir despejos de nucleo ulimit -c unlimited # Laco principal while true; do     # Backup do banco de dados, e o melhor momento para fazer a copia do banco de dados, o OTS esta offline com certeza, entao nao pode haver nenhum clone de item.     mysqldump -u $MYSQL_USER -p$MYSQL_PASS $MYSQL_DATABASE > mysql_backup/`date '+%Y-%m-%d_%H-%M'`.sql     # Compactar em gzip com mais de 3 dias.     find console/ -name "*.log" -mtime +3 -print -exec gzip -f {} \;     find crashlog/ -name "*.bin" -mtime +3  -print -exec gzip -f {} \;     find crashlog/ -name "*.core" -mtime +3  -print -exec gzip -f {} \;     find mysql_backup/ -name "*.sql" -mtime +3  -print -exec gzip -f {} \;     BINARY_WITH_HASH=`date '+%Y-%m-%d_%H-%M'`_`crc32 $BINARY_NAME`     # copie o arquivo binário atual, você precisa do binário desde o momento da falha para executá-lo no gdb.     cp $BINARY_NAME crashlog/$BINARY_WITH_HASH.bin     # iniciar servidor     # se o seu servidor já imprime a data com cada linha no console, você pode remover "| ts '%Y-%m-%d_%H-%M-%.S'"     stdbuf -o 0 ./$BINARY_NAME 2>&1 | ts '%Y-%m-%d_%H-%M-%.S' | tee 'console.log'     cat 'console.log' >> 'console/console_'`date '+%Y-%m-%d'`'.log';     mv core crashlog/$BINARY_WITH_HASH.core     echo INICIAR A ESPERA POR 3 SEGUNDOS, PRESSIONE CTRL+C PARA DESLIGAR O RESTARTER     sleep 3     echo FIM DA ESPERA done  
      Em seguida, dar permissão ao arquivo "restart,sh" com o comando: 
      sudo chmod 777 -R restart.sh  
      Logo, instale os programas necessários para o restart funcionar corretamente:
      sudo apt install moreutils sudo apt install libarchive-zip-perl Posterior, configure o restart.sh com os dados corretos para a conexão SQL: troque onde esta xxxx, zzzz, yyyy

      Para o restarter criar o arquivo core é necessário desativar o serviço apport no sistema com o comando:
      sudo systemctl stop apport.service sudo systemctl disable apport.service Depois de desativar, use o comando a seguir para ver se está ativo o core, você terá que ter como resposta: core
      cat /proc/sys/kernel/core_pattern  
      E por fim, iniciar o uso do arquivo "restart.sh" com o comando:
      ./restart.sh  
      A princípio é isso!
       
      Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 
       
       
      Fontes: 
      - https://github.com/otland/forgottenserver/wiki/Compiling-on-Ubuntu
       
       
       
       
       
    • Por matheuzinPXT
      Iae meus queridos, boa noite. 

      Jogava na época do 8.60. Tenho vontade de montar um server, e fico com algumas dúvidas.
       
      Vejo alguns servidores com sistemas bem diferentes, asas nos personagens, várias sprites, os itens que possuem efeitos/animações estão rápidos igual as versões 12+
       
      Como funciona? É feito um cliente próprio para essas alterações ou utilizado o próprio da cip mesmo?
       
      Estou começando a estudar programação, e quero aprender mais sobre o jogo
       
    • Por luanluciano93
      Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 

      Ele faz parte da 3º instalação da pilha LEMP no Ubuntu 22.04: o PHP.
       
      PASSO 1 - COMO INSTALAR O PHP
       
      Você já tem instalado o Nginx para exibir seu conteúdo web e o MySQL para armazenar e gerenciar seus dados. Agora, você pode instalar o PHP para processar os códigos e gerar conteúdo dinâmico para o servidor Web.

      - Enquanto o Apache incorpora o interpretador PHP em cada solicitação, o Nginx necessita de um programa externo para lidar com o processamento PHP e atuar como uma ponte entre o próprio interpretador PHP e o servidor web. Isso permite um desempenho global melhor na maioria dos sites baseados em PHP, mas exige configuração adicional. Será necessário instalar o php-fpm, que significa “Gerenciador de processos PHP fastCGI”, e dizer ao Nginx para enviar as solicitações PHP para esse software para processamento.

      - Adicionalmente, você precisará do php-mysql php-mysqlnd, um módulo PHP que permite ao PHP se comunicar com os bancos de dados baseados em MySQL. Os pacotes básicos do PHP serão instalados automaticamente como dependências.

      Para instalar os pacotes php-fpm e php-mysql, execute e depois aperte Y para aceitar a instalação:
      sudo apt install php-fpm php-mysqlnd Agora confira o status do PHP-FPM para ver se ele está corretamente ativo: 
      sudo systemctl status php8.1-fpm Deve aparecer algo assim:

       
      Como vocês podem ver em verde: active (running), ou seja, está ativo e funcionando.
       
      PASSO 2 - CONFIGURAÇÕES DO PHP JUNTO AO NGINX
       
      Crie duas pastas com os comandos: 
      sudo mkdir /home/otserv sudo mkdir /home/www A pasta criada "otserv" é onde iremos deixar os arquivos do servidor e a pasta "www" que irá conter os arquivos do site.
       
      Usando o WinSCP, vá até a pasta /etc/nginx/sites-available/ e substitua o conteúdo do arquivo default por esse: https://raw.githubusercontent.com/luanluciano93/ESTUDOS/master/infraestrutura/default_nginx
       
      Quando estiver pronto, recarregue o nginx para aplicar as alterações:
      sudo systemctl reload nginx Agora, com o WinSCP vá até /home/www/ e crie um arquivo com o nome index.php e coloque isso dentro: <?php phpinfo(); ?>
       
      Após feito isso, entre com seu IP ou DOMÍNIO pelo navegador, e deverá aparecer as informações do PHP.

       
      PASSO 3 - CONFIGURAÇÕES DO PHP
       
      Com o WinScp, vá até o arquivo /etc/php/8.1/fpm/php.ini e altere: 
      ignore_repeated_errors = Off Para: 
      ignore_repeated_errors = On Altere: 
      ;date.timezone = Para: 
      date.timezone = America/Sao_Paulo Altere: 
      post_max_size = 8M Para: 
      post_max_size = 64M Altere: 
      upload_max_filesize = 2M Para: 
      upload_max_filesize = 64M  
      Após feito as alterações use o comando para dar reload no php-fpm: 
      sudo systemctl reload php8.1-fpm  
      A princípio é isso!
       
      Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... 
       
       
      Fontes: 
      - https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-20-04-pt
      - https://conectandonet.com.br/blog/como-instalar-a-pilha-lemp-no-ubuntu-20-04-server-desktop/
       
       
       
       
    • Por DiigooMix
      Olá pessoal, gostaria de saber como posso resolver esse problema de login failed no cliente 13x.

       
      Server que estou usando como base: Canary 13x
      Cliente com IP configurado
      Não sei se tem algo errado com isso, mas mesmo com a distro mostrando "server online", no site aparece "server offline"

       
      Site que estou usando: Canary AAC
      Li em muitos posts que pode ser algo relacionado com o "login.lua", mas não achei esse arquivo  para o site Canary AAC. Se houver alguém com este arquivo, poderia me disponibilizar, por gentileza?
       
       
      Uma segunda dúvida
      Como posso revolver o problema com as imagens do site?

       
      Agradeço desde já por toda e qualquer ajuda.
    • Por marcoshps11
      Neste tutorial, irei ensinar configurar o Docker no windows e rodar seu otserver
       
       
      - Diferença entre Docker x Máquina virtual:
        Docker e Máquinas Virtuais (VMs) ambas são fundamentais usadas para isolar recursos em um sistema de computação, mas funcionam de maneiras muito diferentes.
       
        VMs são ambientes de computação completos, incluindo um sistema operacional (SO) completo, que simulam o hardware de um computador físico. Isso significa que cada VM é um sistema autônomo e independente.   Já o Docker, usa a tecnologia de contêineres. Os contêineres compartilham o mesmo sistema operacional do host, mas mantêm seu próprio espaço de processo, arquivos e rede. Isso significa que eles são muito mais leves do que as VMs, pois não precisam de um SO completo, e podem ser iniciados e parados muito mais rapidamente.
      - Vantagens em utilizar o Docker
       O Docker oferece várias vantagens significativas:
      Eficiência de recursos: Como os contêineres Docker compartilham o SO do host, eles são mais leves e usam menos recursos do que as VMs. Portabilidade: O Docker permite que você "construa uma vez, execute em qualquer lugar". Uma vez criado um contêiner Docker, ele pode ser executado em qualquer sistema que suporte o Docker, independentemente das configurações subjacentes. Isolamento: Cada contêiner Docker é isolado do resto do sistema, o que ajuda a evitar conflitos entre diferentes aplicações e versões de software. Integração e entrega contínua: O Docker se integra bem com ferramentas de CI/CD (Integração Contínua / Entrega Contínua), permitindo a automatização de testes e implantação de aplicações. Escalabilidade e Orquestração: O Docker facilita a escalabilidade de aplicações, permitindo que múltiplos contêineres sejam implantados facilmente. Além disso, com ferramentas como Docker Swarm e Kubernetes, a orquestração de contêineres se torna eficiente e gerenciável  
       
      Colocando a mão na massa
       
      Este tutorial será dividido nas seguintes etapas:
      Preparação do Windows Instalando o Docker Instalando imagens mariadb e phpmyadmin Realizando a build da imagem TFS  
      1º PASSO:  Preparando o Windows com o subsistema Linux.
       
      AVISO: Essa Etapa será necessária somente caso ainda não possua o subsistema Linux ativado em seu windows
       
      Os comandos a seguir, serão todos utilizando o POWERSHELL do windows, na barra de pesquisa digite POWERSHELL e execute como administrador.
       

       
      Com o POWERSHELL aberto, execute os seguintes comandos:
       
      Habilitando subsistema Linux:
        dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart  
       
      Habilitando recurso de máquina virtual: dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart  
      Baixe e instale Kernel do Linux:  
      https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
       
      Após essa etapa, será necessário reiniciar o computador para atualização, após reiniciar, abra novamente o PowerShell
       
      Definindo o WSL 2 como padrão: wsl --set-default-version 2  
       
      Após esses passos, basta entrar na Microsoft Store e instalar o sistema Ubuntu:


       
      Após a instalação, abra o Ubuntu, como será a primeira vez, irá solicitar para que digite um nome de usuário e uma senha.

       
       
       
      Etapa 1 concluída.
       
      Fonte: https://learn.microsoft.com/pt-br/windows/wsl/install-manual
       
      2º PASSO:  Instalando Docker.
       
      este é um passo simples, apenas entre no site oficial do Docker, baixe e instale o Docker Desktop

      https://www.docker.com/
       

       
       
      Etapa 2 concluída.
       
       
      3º PASSO:  Instalando imagens MariaDB e phpMyAdmin
       
       Assim como no passo 1, execute novamente o PowerShell como administrador e siga os seguintes passos:
       
      Primeiro vamos baixar as imagens necessárias, execute os seguintes comandos: docker pull mariadb  
      docker pull phpmyadmin/phpmyadmin  
       
      Agora iremos criar uma "Rede" para que o docker se comunique entre os containers que iremos utilizar. Execute o seguinte comando:  
      docker network create mynetwork  
        mynetwork é o nome que defini neste caso, você pode utilizar o nome que achar melhor, porém lembre-se desse nome que iremos utilizar nos próximos passos.
       
      Agora iremos iniciar essas imagens, utilizando os seguintes comandos:  
      docker run --name mariadb --network=mynetwork -e MYSQL_ROOT_PASSWORD=your_password -d mariadb  
      your_password = altere pela senha que deseja utilizar no mysql
      mynetwork = é o nome que criamos no passo anterior
       
      docker run --name myadmin --network=mynetwork --link mariadb:db -d -p 8080:80 phpmyadmin/phpmyadmin  
      Lembrando novamente, mynetwork é o nome criado anteriormente
       
      Após esses passos, será possível ver seu container rodando no Docker Desktop:

       
      Etapa 3 concluída.
       
      4º PASSO:  Gerando Imagem do TFS e configurações necessárias:

       
      Baixe a TFS, nesse exemplo será o repositório oficial https://github.com/otland/forgottenserver Extraia os arquivos após baixar com o container mariadb e phpmyadmin rodando, acesse http://localhost:8080/  com o login root, e a senha que criou no passo 3, crie uma nova base de dados e importe o arquivo schema.sql do servidor edite o arquivo config.lua.dist
       -- MySQL
      mysqlHost = "mariadb"
      mysqlUser = "root"
      mysqlPass = "SUA SENHA CRIADO NO PASSO 3"
      mysqlDatabase = "NOME DA DATABASE"
      mysqlPort = 3306
      mysqlSock = ""

      mariadb é o nome do container que estamos rodando o mysql  
       
      ** Caso queira utilizar todo potencial do seu computador na hora de buildar a TFS, no arquivo Dockerfile, edite a linha 18:
      RUN cmake --preset default && cmake --build --config RelWithDebInfo --preset default para
       
      RUN cmake --preset default && cmake --build --config RelWithDebInfo --preset default -- -j 16  
      onde 16 é o numero de processadores lógicos que deseja ser utilizados, não é necessário utilizar 100% porém quanto mais melhor, porém caso utilize mais do que está disponível poderá travar,  então utilize a quantidade mostrada pra menos.
      no gerenciador de tarefas aba desempenho, é possível visualizar a quantidade de núcleos e processadores lógicos do seu CPU


       
      Após isso, entre no Power Shell e execute o comando:  
      docker build -t server .  
       onde "server" é o nome da imagem que será gerada
       
      Após isso, é só iniciar o servidor com o seguinte comando  
      docker run --name server --network=mynetwork -p 7171:7171 -p 7172:7172 -d server  
      lembrando que mynetwork é o nome que geramos no passo 3, e o ultimo parametro é nome da imagem que geramos anteriormente.
       
      Você poderá ver seu sevidor ronando no Docker Desktop:
       

       
      caso queira parar algum servidor ou iniciar novamente, é só clicar no botão de ação:
       

       
      Caso precise fazer alguma alteração no server, basta utilizar os comandos de build e run citados anteriormente.
       
       
       
       
      Lembrando que isso é um tutorial básico para rodar o servidor na máquina local, qualquer dúvida ou sugestão, deixe comentário.
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo