Skip to content

Operacao

brkihel edited this page Sep 26, 2026 · 7 revisions

Operação do servidor

Tudo o que você faz no dia a dia passa pelo Jarl, o painel em /jarl/. O menu da esquerda se divide em duas partes:

  • Controle: o servidor em si. Console, Arquivos, Mundo, Server Config, Mod Config e Mod Manager.
  • Administração: o resto. Aparência (o site; veja o Layout Editor), Logs, Sagas, Tarefas, Backups, Auditoria e Sobre e atualizações.

Uma regra vale para o painel inteiro: toda ação que desliga o jogo, apaga ou restaura alguma coisa pede confirmação numa janela dentro do próprio painel. Isso importa porque, se fosse um pop-up do navegador, um navegador configurado para bloquear pop-ups pularia a pergunta sem você perceber.

Console

É a tela inicial do Jarl. Nela você liga, reinicia e desliga o servidor, vê o endereço, a memória em uso, há quanto tempo ele está no ar, quantos vikings estão online e o dia no mundo. Logo abaixo fica o log ao vivo do jogo (com a opção de seguir o fim) e o estado dos serviços do Heimdall.

Arquivos

Um gerenciador de arquivos do servidor, direto no navegador. Arraste arquivos do seu computador para enviar; clique com o botão direito num item para baixar, copiar, recortar, colar ou descompactar. Toda gravação e toda remoção guardam uma cópia antes, em /var/backups/heimdall-panel (no Windows, C:\ProgramData\HeimdallNexus\backups\panel). Ainda assim, trate a cópia como um consolo, não como um "desfazer": é daqui que se apaga um mundo sem querer.

Server Config

Aqui ficam o nome do servidor, o mundo, a porta, se ele aparece na lista pública, o crossplay, a descrição e a senha do jogo.

Sobre a senha: a atual nunca é mostrada, e deixar o campo vazio mantém a que já existe. Ela é obrigatória, porque o Valheim exige. Só dá para tirar a senha com um mod de servidor sem senha instalado (como o serverblankpassword), e aí aparece a opção Servidor sem senha. O jogo também recusa uma senha que esteja contida no nome do servidor. A descrição vai para o status do site, já que o Valheim não tem uma opção de descrição própria.

Mais abaixo, Opções de inicialização mostra o comando com que o servidor vai ser iniciado, uma opção por linha, montado a partir do que você escolheu. É só para leitura, e a senha aparece oculta. Serve para conferir o resultado antes de reiniciar.

Mudanças nessas opções só valem depois que o jogo reinicia. Se ele estiver ligado, o painel oferece Reiniciar para aplicar. Cuidado com o nome do mundo: trocar esse campo faz o servidor criar (ou abrir) outro mundo no próximo início.

Endereço

Versão 1.3.0 ou mais nova. O cartão Endereço muda o endereço do site e do painel e o endereço de conexão que o site mostra aos jogadores para entrarem no Valheim (em branco, é o mesmo do site). Salvar atualiza tudo o que depende deles: a configuração do servidor do site, o link do site e, no Windows, os botões do aplicativo. Antes, o próprio servidor do site testa o nome novo e, se recusar, nada muda. O jogo não reinicia, e o endereço de conexão aparece no site na próxima atualização do status, em alguns minutos.

Cartão Endereço do Server Config numa instalação Linux

A chave HTTPS mostra http:// ou https:// antes do endereço:

  • No Windows, ela liga e desliga o HTTPS de verdade. Ligada, o endereço precisa ser um domínio que aponte para o computador, com as portas TCP 80 e 443 liberadas no roteador, e o cartão pede o e-mail do certificado, que o Caddy pede e renova sozinho. O painel reinicia uma vez para trocar os cookies.
  • No Linux, ela mostra como o site foi instalado e fica travada: ligar ou desligar o HTTPS pelo painel ainda não é possível. Um site com HTTPS também mantém o domínio, porque o certificado vale só para ele.

Caution

Um endereço errado deixa o site e o painel fora do ar, e o cartão avisa disso em vermelho. Para voltar, entre no painel direto, sem passar pelo servidor do site: no Windows, abra http://localhost:8791/jarl/ no próprio computador; no Linux, abra um túnel com ssh -L 8791:127.0.0.1:8791 usuario@servidor e entre em http://localhost:8791/jarl/. Depois, volte a configuração anterior.

Reinstalar servidor pede a senha do painel, desliga o jogo se estiver ligado e verifica os arquivos oficiais pelo SteamCMD. Mundos, configurações e mods ficam em pastas separadas e não são tocados, mas faça um backup antes mesmo assim. O jogo continua desligado depois da reinstalação.

Mundo e wipe

A aba Mundo mostra o mundo atual (nome, seed, tamanho, último save e os personagens que já entraram) e é onde você troca de mundo.

O wipe recomeça o mundo, os personagens ou os dois. Você escolhe o nome do mundo novo, uma seed (ou clica em Sortear) e os modificadores (combate, morte, recursos, invasões, portais). Para confirmar, digita o nome do mundo atual e clica em Fazer wipe. Antes de mexer em qualquer coisa, o painel faz o backup completo de sempre. Nada é apagado de verdade: o que sai vai para /srv/valheim/wipes/ (no Windows, C:\ProgramData\HeimdallNexus\valheim\wipes), com data, e pode ser recuperado pela aba Arquivos.

Se você gerou um mundo no próprio jogo, use Usar um mundo gerado no jogo: compacte a pasta dele em .zip, envie, digite o nome e clique em Enviar e instalar. Wipes anteriores lista o que já foi feito.

Nos dois casos, o servidor fica desligado no fim, para você conferir tudo antes de abrir as portas. Ligue pelo Console. O mapa do site passa a mostrar o mundo novo depois do primeiro save.

Mod Config

O editor das configurações dos mods, que continuam em BepInEx/config. Procure o mod pelo nome, edite e grave. A maioria dos mods só lê o arquivo ao ligar, então, na dúvida, reinicie o servidor depois de gravar. Os itens marcados como [Synced with Server] valem para todos os jogadores: o servidor manda o valor dele para quem entra.

Mod Manager

Instala, atualiza e remove mods do Hexium ou da Thunderstore. Se um pacote existe nas duas lojas, ele aparece uma vez só, pela loja com a versão mais nova (no empate, vale o Hexium). A aba Instalados mostra o que está no servidor e avisa quando há versão nova; a aba Catálogo é a loja.

Toda mudança desliga o jogo (se estiver ligado), guarda uma cópia do que vai ser substituído e deixa o jogo desligado no fim. Assim você faz várias mudanças seguidas sem o servidor ficar subindo e caindo, e liga uma vez só, no Console, quando terminar.

Logs

O chat de dentro do jogo e as ações de administração que chegam ao servidor (como kick e save), numa sessão por reinício. Dá para filtrar entre tudo e só o chat, e buscar por texto. Comandos como spawn, god e fly não aparecem: eles rodam no computador do jogador e nunca viram um pedido ao servidor.

Tarefas

Rotinas que rodam sozinhas em horários marcados, como o reinício da madrugada. Cada rotina tem um nome e um horário no formato cron, com cinco campos. Por exemplo, 0 4 * * * quer dizer "todo dia às 04:00", e 0 */6 * * *, "a cada seis horas". O horário segue o fuso da máquina.

Com Adicionar tarefa você monta, em ordem, o que a rotina faz: ligar, desligar, reiniciar ou criar backup, cada passo podendo esperar alguns segundos antes. Não existe execução de comando arbitrário, de propósito. Apenas quando o servidor estiver online pula a rotina se o jogo estiver desligado, e Rotina ativada pausa sem apagar. Quem confere as rotinas é o heimdall-schedule.timer, uma vez por minuto.

Backups

Criar backup agora guarda os mundos, as configurações e as opções de partida. Para a cópia sair consistente, o jogo é desligado durante o backup e continua desligado depois; ligue de novo pelo Console.

Na lista, cada backup pode ser baixado, restaurado, travado ou apagado. Um backup travado não pode ser apagado pelo painel, o que é útil para guardar aquele mundo antes de um wipe. Antes de restaurar, o painel faz mais um backup do estado atual, então dá para voltar atrás. Os pacotes de manutenção de mods também aparecem aqui, mas só para baixar: pela tela, só se restauram backups de mundo.

Auditoria

O histórico de tudo o que o painel fez, e também do que ele recusou: quando, quem, qual ação e o resultado. É o primeiro lugar para olhar quando alguém pergunta "quem desligou o servidor?".

Atualizar o Heimdall Nexus

Vá em Jarl → Sobre e atualizações. Ali você vê a versão instalada e escolhe o canal de atualização: o main, que é o estável e o recomendado, ou um ramo dev/…, que traz novidades antes, mas pode ter erros. Use os canais de desenvolvimento só num servidor de teste.

Clique em Procurar atualizações, leia a lista de mudanças e, se estiver tudo certo, clique em Atualizar. A barra mostra cada etapa e o tempo passado. Se der certo, o aviso some sozinho; se falhar, ele fica na tela com um código HN-…, uma orientação e o registro técnico para copiar.

A atualização não reinicia o Valheim. Se ela trouxer uma ponte Sagas nova, a ponte é trocada, mas só passa a valer quando você reiniciar o jogo.

Jarl mostrando Heimdall Nexus 1.0.0 e o canal estável de atualização

A captura usa dados de exemplo.

Instalações antigas, que ainda não têm essa aba, precisam ser atualizadas uma vez pelo terminal:

cd ~/Heimdall-Nexus
git fetch origin
git switch main
git pull --ff-only origin main
sudo ./deploy/update.sh

O update.sh troca o código do painel e das ferramentas em /opt/heimdall-nexus, atualiza os scripts do site, republica o site e reinicia o painel. Mundos, mods, configurações do jogo, páginas e a identidade do site continuam como estavam, e o servidor de Valheim não é reiniciado.

No Windows, o equivalente roda no PowerShell como administrador, na pasta de onde você instalou:

cd C:\HeimdallNexus-src
git pull --ff-only
& "$env:ProgramFiles\HeimdallNexus\venv\Scripts\python.exe" deploy\windows\update.py

Ele faz os mesmos passos. A única diferença: por alguns segundos, o painel, o executor e os jobs pausam, porque o Windows não deixa trocar uma biblioteca que um serviço está usando. O Valheim continua ligado.

Repetir a instalação do zero

Caution

Estes comandos apagam os mundos, os backups, o site e as configurações da instalação. Use só numa VM de teste.

cd ~/Heimdall-Nexus
sudo ./deploy/reset-vm.sh --check
sudo ./deploy/reset-vm.sh --purge
sudo ./deploy/install.sh

O reset funciona tanto numa instalação completa quanto numa que parou no meio, e pede que você digite RESET HEIMDALL VM para confirmar. O repositório Git e os pacotes do APT ficam. A conta Linux do painel é removida (assim você pode escolher o mesmo nome de novo), e a conta valheim é mantida.

No Windows, no PowerShell como administrador:

cd C:\HeimdallNexus-src
powershell -ExecutionPolicy Bypass -File .\deploy\windows\uninstall.ps1 -RemoveData
git pull --ff-only
powershell -ExecutionPolicy Bypass -File .\deploy\windows\install.ps1

O desinstalador pede que você digite REMOVE. O Python privado do Heimdall fica, o que deixa a reinstalação mais rápida; acrescente -RemovePython para tirá-lo também. Veja as outras opções em Instalação no Windows.

Modpack próprio (.zip)

Se o seu servidor usa mods que não estão publicados, você pode montar um modpack em .zip, no mesmo formato de pacote do Hexium e da Thunderstore:

manifest.json          author, name, version_number, description, dependencies
plugins/<Mod>/...      DLLs dos mods próprios ou modificados
patchers/<Mod>/...     patchers do BepInEx, se houver
config/...             configurações (opcional)

Em dependencies entram os mods públicos, no formato Autor-Nome-Versão; a instalação baixa esses do Hexium ou da Thunderstore. Os mods que vão dentro do .zip ficam cada um na sua pasta em BepInEx/plugins.

O jeito mais fácil é gerar o pacote a partir de um servidor já montado:

sudo python3 ferramentas/criar-modpack.py /var/lib/heimdall-nexus/modpacks/MeuServidor-1.0.0.zip \
  --author MeuTime --name MeuServidor --version 1.0.0

No Windows, no PowerShell como administrador, na pasta do Heimdall:

& "$env:ProgramFiles\HeimdallNexus\venv\Scripts\python.exe" ferramentas\criar-modpack.py `
  C:\ProgramData\HeimdallNexus\state\modpacks\MeuServidor-1.0.0.zip --author MeuTime --name MeuServidor --version 1.0.0

O gerador compara cada mod instalado com o pacote oficial da mesma versão. Se todas as DLLs forem idênticas, o mod entra como dependência; se ele não for publicado ou tiver sido modificado, vai dentro do .zip. As configurações só entram com --with-config, e mesmo assim a pasta do AzuAntiCheat e arquivos com nomes como webhook, token ou senha ficam de fora.

Para instalar, envie o .zip para a máquina e informe o caminho completo (por exemplo /root/MeuServidor-1.0.0.zip) no campo Modpack do assistente. O progresso mostra o SHA-256 de cada DLL incluída. Lembre que um .zip executa código no servidor, então use só pacotes de origem confiável. E os mods que também precisam estar no computador dos jogadores continuam precisando chegar até eles por outro caminho.

Clone this wiki locally