⚡ nzbfast

O baixador rápido da Usenet - manual do usuário

1 · Boas-vindas

O nzbfast baixa da Usenet tão rápido quanto sua linha, seus provedores e sua máquina permitem - e normalmente isso significa tão rápido quanto sua linha. É um único programa autossuficiente: o motor, um painel web, um navegador de mídia em mural de pôsteres, um indexador integrado, pré-visualização em tempo real, reparo PAR2 nativo e a extração de RAR nativa estão todos dentro de um único executável. Não há mais nada para instalar.

O que o torna rápido é a arquitetura, não ajustes finos:

Medido contra o mercado em hardware, trabalhos e provedores idênticos, o nzbfast concluiu um download de 190 GB em cerca de 5 minutos em uma linha de 10 GbE - com as principais alternativas 30–220% atrás nos mesmos testes, quando os concluíam. Os números estão na §3.

2 · Início rápido

macOS

  1. Abra nzbfast-<version>-macos.dmg e arraste o NzbFast para Aplicativos (universal: Apple Silicon + Intel).
  2. Primeira abertura: o macOS avisa que o nzbfast ainda não está autenticado pela Apple. Clique com o botão direito no app → Abrir - ou abra Ajustes do Sistema → Privacidade & Segurança, role para baixo e clique em Abrir Assim Mesmo. Isso é feito uma única vez.
  3. A janela do app mostra o painel com um cartão de boas-vindas - clique nele e adicione pelo menos um servidor Usenet (host, porta 563, usuário, senha). Você pode adicionar mais depois em Ajustes.
  4. Solte um arquivo .nzb em qualquer lugar do painel - ou simplesmente dê duplo clique em arquivos .nzb no Finder. Os downloads chegam em ~/Downloads/nzbfast. Saia pelo menu; os downloads retomam de onde pararam.

Prefere não usar o app? O zip simples (binário + lançador Start nzbfast.command, mesmo motor) continua funcionando como antes - os passos estão abaixo em "De um terminal".

Windows

  1. Execute nzbfast-<version>-windows-x64-setup.exe. Ele instala apenas para o seu usuário (sem senha de administrador). Como esta versão ainda não está assinada, o SmartScreen pode mostrar "O Windows protegeu seu PC" - clique em Mais informaçõesExecutar assim mesmo.
  2. O nzbfast fica na bandeja do sistema: dê duplo clique no ícone da bandeja (ou use Abrir painel no menu do botão direito) para abrir o painel, depois adicione seu servidor Usenet pelo cartão de boas-vindas. O menu da bandeja também tem Pausar/Retomar, sua pasta de downloads e Sair.
  3. Dar duplo clique em um arquivo .nzb o coloca na fila. O Windows Defender pode perguntar uma vez para permitir a escuta na rede local - permita.

Prefere uma cópia portátil? O -windows-x64.zip continua funcionando: descompacte em qualquer lugar e dê duplo clique em nzbfast.exe (ou Start nzbfast.bat) para o assistente no terminal.

De um terminal (qualquer plataforma)

nzbfast setup            # interactive server setup (writes config.local.json)
nzbfast serve --open     # start the daemon and open the dashboard
DicaJá usa o SABnzbd ou o NZBGet? Pule a digitação de credenciais: Ajustes → Servidores Usenet → Importar do SABnzbd / NZBGet… encontra sua instalação existente e copia os servidores dela. Também há nzbfast import-sab na linha de comando.

Sua chave de API

Numa instalação realmente nova, o nzbfast cria para si mesmo uma chave de API na primeira vez que o daemon inicia, e a exibe uma única vez num aviso logo abaixo do endereço do painel. Daí em diante toda requisição precisa dessa chave, então o painel e a API não ficam abertos a tudo o que alcança a máquina.

O que fazer com ela depende de como você iniciou o nzbfast:

A chave fica guardada num arquivo chamado apikey ao lado do seu arquivo de configuração, então continua a mesma entre reinicializações e você pode consultá-la de volta sempre que precisar. No macOS e no Linux esse arquivo só pode ser lido pela conta que executa o nzbfast. Ela também sai na própria saída do daemon, então o cartão Log do painel a tem se o terminal já tiver rolado.

Atualizar não muda nada.Uma instalação que já existe fica exatamente como estava, com chave ou sem chave. Uma chave só é criada numa primeira execução - uma sem ajustes do painel e sem fila salva - porque uma chave surgindo numa instalação em funcionamento deixaria de fora todos os Sonarr, Radarr e apps de celular que você já tivesse conectado, numa reinicialização que você nunca ligaria a uma mudança de ajustes.

Para usar uma chave própria, digite-a em Ajustes → Segurança; ela vale na hora. Esse painel troca a chave mas nunca mostra a atual, então leia o arquivo apikey se precisar do valor gerado de volta. Para rodar sem chave nenhuma, porque algo na frente do nzbfast já cuida do acesso, inicie-o com NZBFAST_OPEN=1 no ambiente. O nzbfast então fica aberto e diz isso claramente na inicialização.

Quais máquinas conseguem alcançar o daemon é uma escolha à parte: serve --bind. O padrão é 0.0.0.0, ou seja, todas as interfaces de rede, porque um NAS, um celular e um Sonarr em outro computador precisam poder se conectar. --bind 127.0.0.1 restringe à máquina em que o nzbfast roda, que é o que você quer num desktop só seu onde nada mais precisa de acesso.

3 · Como o nzbfast funciona

Um vocabulário rápido para que o restante do manual seja de leitura fácil:

TermoSignificado
Provedor / servidorUm serviço da Usenet no qual você tem uma conta (Newshosting, Eweka, XS News…). Cada um permite algum número de conexões simultâneas.
BackboneA infraestrutura por trás de um provedor. Várias marcas muitas vezes revendem o mesmo backbone - útil saber, porque dois provedores em um mesmo backbone não têm os mesmos artigos. Veja Diversidade de servidores.
NZBUm pequeno arquivo XML que lista os artigos que compõem uma publicação. É isto que você fornece ao nzbfast.
PAR2Dados de recuperação publicados junto com um lançamento. O nzbfast verifica contra eles durante o download e repara automaticamente quando os artigos estão danificados ou ausentes.
RAR em modo armazenamentoA maioria dos lançamentos é empacotada em volumes RAR sem compressão. O nzbfast reconhece isso e escreve o arquivo interno diretamente em seu local final durante o download - sem etapa de extração depois.

O pipeline executa download → decodificação → verificação → extração de forma concorrente. O cartão Pipeline do painel mostra as três faixas se movendo ao mesmo tempo. Quando chega o último byte, a verificação já está pronta e o arquivo já está extraído; o tempo de "pós-processamento" de um trabalho típico é zero. Se o reparo for necessário, só então os volumes são materializados em disco, reparados no lugar pelo motor GF(2¹⁶) nativo (dados ofuscados renomeados ou deslocados em bytes são encontrados e adotados por uma varredura deslizante de blocos) e reextraídos - tudo automático.

Downloads interrompidos (travamento, queda de energia, kill -9) retomam a partir do diário de artigos: os bytes já em disco nunca são buscados duas vezes. O diário registra onde os bytes de cada artigo pousaram fisicamente - até os bytes que foram extraídos diretamente no arquivo final - de modo que uma retomada reconstrói a partir do disco local e reverifica tudo que restaurou contra o mapa de blocos PAR2 antes de confiar nele.

Como isso se compara

Medido contra o SABnzbd 5.0.4 e o NZBGet 26.2 na mesma máquina, os mesmos provedores e os mesmos NZBs, cronometrado até um arquivo utilizável - download, verificação, reparo e extração todos incluídos, porque é aí que o trabalho realmente termina:

Tamanho do trabalhonzbfastNZBGet 26.2SABnzbd 5.0.4
7 GB13,7 s+26%+39%
35 GB67 s+61%+325%
87 GB272 s+36%+160%
190 GB9 min 00 s+30%+111%

A diferença é o pós-processamento que os outros ainda têm de fazer depois que o último byte chega. Ambos os concorrentes foram ajustados para a comparação, não deixados no padrão - o SABnzbd em particular vem com o pipeline de solicitações desligado, o que lhe custa caro, então ele foi ligado.

Duas diferenças importam tanto quanto os tempos:

Retomada de travamento, medidaMate um download em pleno voo (kill -9 aos 15 GB de um trabalho de 34,5 GB) e a retomada rebusca ~0,3 GB - apenas os artigos genuinamente em trânsito no momento da morte - contra os 0,2 GB do NZBGet no mesmo teste. Isto costumava ser uma derrota que publicávamos (15,3 GB rebuscados, quando o diário não conseguia contabilizar os bytes extraídos diretamente); o diário de posicionamento resolveu: a retomada restaura esses bytes a partir dos arquivos de saída locais e reverifica cada byte restaurado contra o mapa de blocos PAR2 antes de confiar nele. Cada cenário que perdemos é publicado ao lado das vitórias, com o método completo e os números brutos.

4 · O painel

Abra http://localhost:6789 (ou o endereço da sua máquina a partir de outro dispositivo - o layout do celular se adapta automaticamente). Tudo é atualizado ao vivo, uma vez por segundo. Os cartões, de cima para baixo:

Barra de cabeçalho

Vazão

MB/s ao vivo com um gráfico deslizante; as marcas d'água tracejadas indicam os pontos alto/baixo desta sessão, e a linha tênue é uma média móvel. Abaixo dele, um histograma mostra como as amostras de velocidade da sessão se distribuem - típico vs pico. Alargue a janela e os gráficos mostram mais histórico (até uma hora).

Blocos de estatísticas

Baixado nesta sessão, profundidade da fila, contagens de concluídos/falhados, velocidade de pico da sessão.

Recursos - uma máquina, quatro tetos

CPU, RAM (contra o orçamento de memória do nzbfast), taxa de escrita em disco e rede em um único gráfico normalizado, com valores reais na legenda e um aviso de pouco espaço em disco. Nenhum outro cliente NZB mostra isto; existe para provar um ponto - o nzbfast vai saturar sua linha, não sua máquina.

Pipeline - as etapas se sobrepõem

Três faixas: download, verificação (blocos PAR2 verificados), extração. Em um trabalho saudável, as três se movem juntas.

Provedores

Taxa ao vivo por servidor, utilização das conexões, participação no tráfego, GB da sessão e uma pontuação de compleção de artigos acumulada (colorida quando um servidor cai abaixo de 98%). Um gráfico de área empilhada mostra a contribuição de cada provedor ao longo do tempo. As linhas se reordenam por desempenho ao vivo a cada 10 s (configurável em Ajustes → Interface) para que seu provedor mais rápido esteja sempre no topo.

Fila

Explorar índice

Pesquise tudo o que o indexador integrado catalogou dos seus grupos monitorados (veja Automação) e baixe com um clique - sem necessidade de indexador externo. A linha de status mostra o progresso da varredura; Varrer agora força uma passagem.

Lista de acompanhamento

Adicione títulos pelo nome - inclusive os ainda não publicados. Quando um lançamento correspondente aparece no índice, ele é capturado automaticamente, com preferências de qualidade e regras de melhoria (uma cópia melhor substitui uma pior).

Histórico

Downloads recentes, uma linha cada. Trabalhos que falharam oferecem Repetir (retoma a partir do diário). Arquivos criptografados mostram um controle de desbloqueio 🔑 - digite a senha e o trabalho termina no lugar. A faixa de saúde da verificação plota os blocos PAR2 defeituosos por download - uma cauda crescente indica que os artigos chegam danificados. A gaveta de cada linha diz quem adicionou o trabalho e tem o mesmo botão Transferir o .nzb da fila - útil para baixar um lançamento de novo em outro lugar, ou para anexar o .nzb a um relato de problema.

O cartão lista dez downloads por padrão e o restante fica a um clique, no botão ▤. Status, local e o motivo de uma falha ficam atrás de um clique na própria linha, de modo que o caso comum - o que terminou, de que tamanho, quando - continua legível sem rolagem. Arraste a borda inferior do cartão para que a lista role numa altura à sua escolha. History rows em Ajustes → Interface muda esse dez; por ser uma propriedade do daemon e não do seu navegador, vale para todos os dispositivos que olham para esta instalação. Colour History names, ao lado, tinge de verde os nomes concluídos e de vermelho os que falharam; desligado, os nomes ficam neutros, e o ponto colorido e os detalhes da linha continuam dizendo qual é qual.

Uso de dados

Barras diárias por provedor e totais de Hoje / 7 dias / 30 dias - essencial para contas medidas e de bloco. Contas de bloco mostram o uso acumulado contra seu tamanho.

Log, Benchmark do sistema, Ajuste de conexões, Diversidade de servidores

Um visualizador de log na página e as três ferramentas de automedição descritas em Ferramentas de desempenho.

5 · Adicionar downloads

MétodoComo
Arrastar e soltarSolte um ou mais arquivos .nzb em qualquer lugar do painel.
Pasta monitoradaDefina uma pasta em Ajustes; qualquer .nzb salvo nela é detectado em até 5 segundos e movido para o Lixo, e um painel aberto anuncia cada recolha pelo nome ("… recolhido de Downloads"), para que um arquivo sumindo da pasta nunca seja um mistério. Prefere manter seus arquivos? Ligue Manter os .nzb após a recolha (veja §9). Aponte a pasta de downloads do seu navegador para ela para capturas de um clique a partir de sites indexadores.
De uma URLCole um link NZB (API mode=addurl, ou por qualquer app conectado).
Links nzblnk:Cole um link nzblnk: em qualquer lugar do painel, ou arraste-o para dentro. Se você instalou pelo DMG do macOS ou pelo instalador do Windows, também dá para clicar num direto no board. Veja os links nzblnk mais abaixo.
Explorar índiceClique em qualquer lançamento completo no cartão Explorar.
Lista de acompanhamento / RSSAutomático - veja Automação.
Sonarr/Radarr etc.Eles enviam capturas direto para a fila - veja §11.
Linha de comandonzbfast get file.nzb baixa sem o daemon.

Categorias, prioridades, senhas

Os links nzblnk

Alguns boards, sobretudo alemães e holandeses, publicam um link nzblnk: em vez de um arquivo NZB. A postagem está ofuscada, então não existe nome de arquivo para o qual apontar. O link carrega em vez disso um cabeçalho, h=, que é uma chave de busca e não um lugar, mais um título t=, uma senha p= e um grupo g= opcionais. Alguém precisa ir achar a postagem primeiro.

O nzbfast procura o cabeçalho primeiro no próprio índice, o que não exige rede nenhuma, e só se isso falhar consulta os indexadores de busca que você configurou (Ajustes → Indexadores de busca, §9), sob os mesmos orçamentos diários e o mesmo recuo de qualquer outra busca. O título vira o nome do trabalho e a senha é aplicada automaticamente.

6 · O mural de pôsteres

Clique em 🎬 mural no cabeçalho. O mural transforma seu índice em um navegador de mídia: cada filme e lançamento de TV reconhecido como um bloco de pôster com nota, ano, gêneros, elenco e sinopse - seus newsgroups, navegáveis como um catálogo.

7 · Prévia e verificação

Você não precisa esperar um download terminar para saber se é o arquivo certo. Abra-o enquanto ele baixa, confira se o conteúdo, o idioma e a qualidade são o que você esperava, e cancele cedo se não forem - em vez de descobrir depois do download completo.

Nota sobre reprodutoresVLC, IINA, mpv e Infuse abrem todos as URLs /stream. Para conferir de outra máquina, use o endereço LAN da sua máquina no lugar de localhost.
Nota sobre autenticaçãoCom uma chave de API definida, abrir uma entrada de biblioteca estacionada por /stream/<id> exige um token por trabalho (?t=…) - os reprodutores não conseguem enviar chaves de API, então a entrega /m3u e o ponteiro .strm o incorporam para você; gerá-lo (/m3u) exige a chave. O serviço puro de bytes de um download já ativo permanece aberto, e instalações sem chave se comportam como antes.

8 · Servidores Usenet

Ajustes → Servidores Usenet é o editor completo: adicionar, editar, remover, reordenar e colocar ou tirar do pool qualquer servidor. Cada servidor tem:

CampoNotas
Host / portaUse a porta SSL 563. O TLS não custa nada mensurável - o nzbfast sempre criptografa.
Usuário / senhaArmazenados localmente em config.local.json, nunca exibidos de volta ao navegador. Deixar a senha em branco ao editar mantém a armazenada. As senhas ficam ofuscadas em disco, não criptografadas.
ConexõesConexões simultâneas por servidor. Use o Ajuste de conexões (§13) para achar o ponto ideal de cada provedor em vez de chutar alto.
Nível (camada)0 = primário; níveis mais altos são servidores de preenchimento, consultados apenas para os artigos que todo nível inferior não tinha. Coloque contas ilimitadas em 0 e contas de bloco em 1+.
Tamanho do bloco (GB)Para contas de bloco (pago por GB): o nzbfast registra o uso acumulado contra isto e para de usar o servidor quando ele se esgota (aviso aos 85%).

Deixe uma folga abaixo do limite de conexões da sua conta. Definir as conexões um pouco abaixo do limite não custa nada: a taxa de transferência estabiliza bem antes das últimas uma ou duas conexões, e o Ajuste de conexões (§13) fica abaixo dele de qualquer forma. São esses lugares livres que deixam um segundo dispositivo, outro cliente ou uma nova tentativa após um socket caído entrarem mesmo assim, em vez de serem recusados enquanto este ocupa todos os lugares.

Como as senhas dos seus provedores são guardadas

As senhas de provedor em config.local.json ficam ofuscadas, não criptografadas. São gravadas como obf1: seguido de uma forma codificada, de modo que o arquivo não se lê como texto puro se aparecer numa captura de tela, num post de fórum, num relatório de bug ou numa tela que outra pessoa possa ver.

Sejamos claros sobre o que isso lhe dá e o que não dá:

Para comparar, NZBGet e SABnzbd guardam ambos as senhas de provedor como texto legível nos seus arquivos de configuração. Achamos a ofuscação uma pequena melhoria sobre isso, não um recurso de segurança.

Por que não o chaveiro do sistema? O Keychain do macOS, o Gerenciador de Credenciais do Windows e os serviços de segredos do Linux dariam proteção de verdade, e talvez voltemos a isso. Hoje duas coisas nos impedem. O acesso ao chaveiro está preso à identidade do aplicativo, e o nzbfast ainda não é assinado, então os avisos e o comportamento depois de cada atualização são ruins. E uma fatia grande das instalações é Docker, servidores sem tela e NAS, onde chaveiro nenhum existe, o que deixaria dois caminhos de armazenamento diferentes para manter corretos. Um único formato bem compreendido que se comporta igual em toda parte é, por ora, o melhor negócio.

Outras duas opções por servidor ainda não têm controlo no painel: acrescente-as à mão na entrada desse servidor em config.local.json (ver §17) e reinicie.

ChaveNotas
bind_ipLiga as ligações de saída deste servidor a um endereço local específico, para máquinas com várias saídas e túneis VPN divididos. A família de endereços escolhe também a família de destino: uma ligação v4 conecta ao endereço v4 do servidor.
socks5Envia o tráfego NNTP deste servidor por um proxy SOCKS5: host:port, ou user:pass@host:port. O nome do host é resolvido pelo proxy, logo não há fuga de DNS local.
RecomendaçãoDois provedores em backbones diferentes vencem três no mesmo. Execute a Diversidade de servidores (§13) para ver quais dos seus provedores realmente diversificam sua cobertura e quais são cópias redundantes uns dos outros.

9 · Referência de ajustes

Quase tudo é configurável a partir do painel, em ⚙ Ajustes; as quatro exceções estão no fim desta secção. Os valores marcados live aplicam-se de imediato; os restart, no arranque seguinte. Cada alteração feita aqui fica guardada em settings.json e sobrevive a reinícios (os valores da interface ganham às opções de linha de comandos).

Velocidade e agendamento ao vivo

AjusteO que faz
Limite de velocidadeTeto em bytes/seg (50M, 1G, 0 = ilimitado). Apps remotos podem enviar porcentagens - defina a Velocidade da linha para que sejam traduzidas corretamente.
Velocidade automáticaTeto regulado por RTT que cede a outro tráfego da casa e se reexpande quando a linha está tranquila.
Adiar downloads lentos automaticamenteUm trabalho preso em um servidor lento enquanto outros esperam é movido para o fim da fila (o progresso é mantido). Veja §13.
Pré-carregar em servidores ociososServidores inúteis ao trabalho ativo iniciam o próximo da fila. Veja §13.
Atualização automática / URL de verificação de atualizaçõesVeja §14.
Velocidade da linhaA velocidade nominal da sua conexão - permite limites em porcentagem de apps compatíveis com o SABnzbd.
Agendamento semanalEditor de linhas para regras por horário da semana: pausar, retomar ou definir um limite de velocidade em dias/horários específicos (horário local). Ex.: limitar a 20 MB/s em dias úteis das 9 às 17 h, ilimitado no restante.

Próximo download ao vivo

Conexões (por servidor), janela (profundidade de pipeline por conexão), decodificadores (threads de decodificação em paralelo). Amostrados quando cada trabalho começa. Os padrões são adequados para a maioria das linhas; use as ferramentas de ajuste antes de aumentar às cegas.

Verificação durante a transferência escolhe quanto é conferido à medida que os dados chegam. Completa confirma cada bloco PAR2 com MD5. Rápida (a predefinida) reivindica os blocos por CRC32, o que é 2-3x mais rápido num CPU lento, e continua a verificar a soma de verificação de cada artigo. Leve salta também essas somas de artigo assim que o PAR2 cobre um ficheiro: o dano aparece um instante depois, no seu bloco. Nas três, a passagem final e qualquer reparação usam MD5 completo, e uma transferência sem ficheiros PAR2 mantém as suas somas de artigo.

Disco e cota ao vivo

Espaço livre mínimo (pausa novos trabalhos abaixo dele; 2 GB por padrão, 0 desativa), cota de download por dia ou mês (UTC; trabalhos Forçar a ignoram), limite de memória - o orçamento de RAM do motor (padrão: ¼ da RAM, com limite; aumente-o em uma máquina com muita RAM para velocidade máxima em trabalhos enormes, e veja o que a pouca memória custa antes de reduzi-lo) reiniciar.

Mover concluídos para: após desempacotar, limpar e renomear, os downloads concluídos são movidos para cá - um compartilhamento NAS, uma unidade de mídia, onde quer que viva a sua biblioteca. A estrutura de categorias é mantida (um trabalho que terminou sob tv/ chega sob tv/ no destino), e o histórico acompanha a mudança, então os aplicativos conectados importam e excluem no novo local. Se o destino estiver inacessível quando um trabalho termina (compartilhamento offline, sem espaço), os arquivos ficam na pasta de downloads e o trabalho é concluído normalmente mesmo assim. Vazio = desligado. Os Destinos por categoria mandam categorias específicas para outro lugar (tv=/Volumes/NAS/TV, movies=/Volumes/NAS/Movies); cada caminho listado é a pasta daquela categoria, então nenhuma subpasta de categoria extra é criada dentro dele. As categorias não listadas seguem Mover concluídos para.

Profundidade de arquivos aninhados (5 por omissão) é quantas camadas de arquivo-dentro-de-arquivo são descompactadas automaticamente: um conjunto RAR que contém um 7z que contém outro RAR é normal na Usenet, e o nzbfast segue a cadeia sem uma segunda passagem. No limite, o arquivo mais profundo fica simplesmente onde está, por descompactar, e o download termina à mesma. Só aumente para releases invulgarmente profundas.

Renomeação automática e limpeza live

Renomear downloads concluídos (ligado por omissão) dá à pasta e ao ficheiro principal um nome limpo e informativo: um filme passa a Example Movie (2024) e as séries mantêm Show - S01E02. Nomes ofuscados ou não reconhecidos ficam exatamente como foram publicados, em vez de adivinhados.

AjusteO que faz
Incluir resoluçãoAcrescenta 1080p, 2160p… ao nome. Ligado por omissão; as outras quatro etiquetas estão desligadas.
Incluir codec de vídeox265, x264, AV1
Incluir codec de áudioAtmos, DTS-HD, AC3
Incluir fonteBluRay, WEB, REMUX
Incluir grupo de lançamentoA etiqueta -GROUP no fim.
Remover arquivos inúteisLigado por omissão. Apaga .par2, .nzb, .sfv, .nfo que sobrem e clipes de amostra das pastas de filmes e séries concluídas. Nunca o vídeo nem as suas legendas.
Manter apenas o arquivo de mídiaDesligado por omissão, e destrutivo: apaga em definitivo tudo o que está na pasta exceto o vídeo (ou vídeos) e as legendas. Todos os episódios de um pacote de temporada são mantidos. Prevalece sobre Remover arquivos inúteis quando ambos estão ligados.
Keep the other words in the nameLigado por padrão. Esporte, corridas e outros eventos costumam ser um mesmo título repetido a temporada inteira, a uma ou duas palavras de distância - "Round11 Hungary Race" contra "Round11 Hungary Qualifying". Manter essas palavras é o que impede uma temporada inteira de virar o mesmo nome. Só se aplica onde o nome não pôde ser arrumado de outra forma, então filmes e episódios comuns ficam intocados.

Todo o grupo corre depois da reparação e da descompactação e antes de Mover concluídos para, e é saltado por completo num trabalho ainda à espera de palavra-passe. Os dois passos de apagamento aplicam-se apenas a releases reconhecidas como filme ou série: uma carga de software ou um conjunto não classificável (ofuscado) nunca é varrido.

Ficheiros eliminados vão para a Reciclagem decide o que "apagar" significa acima. Com ela ligada, a limpeza move os ficheiros para a Reciclagem do sistema, e um palpite errado sobre o que era lixo pode ser desfeito; com ela desligada, são apagados de vez. Está ligada por omissão no macOS e no Windows, onde a Reciclagem fica num sítio que pode ver e esvaziar, e desligada por omissão no Linux, onde normalmente não fica.

Num NAS ou num contentor, deixe isto desligado. Quando os seus downloads estão num disco diferente da sua pasta pessoal - que é o arranjo normal no Unraid, Synology, numa seedbox ou em qualquer instalação Docker com uma partilha montada - as regras de reciclagem do Linux não usam nenhuma Reciclagem de área de trabalho. Criam uma pasta oculta .Trash-1000 (o número é o seu id de utilizador) no topo do disco de downloads e movem os ficheiros para lá. Nada lhe mostra essa pasta, nada a esvazia, e o espaço que ela ocupa nunca volta.

Se correu uma versão anterior do nzbfast em Linux com isto ligado, procure essa pasta na raiz da sua partilha de downloads. É seguro esvaziá-la: tudo o que lá está é um ficheiro que uma limpeza já decidiu que não queria. O nzbfast não a esvazia por si, porque está no seu disco e é a si que cabe julgar.

Pastas e processamento

Pasta de downloads reiniciar, pasta monitorada, script de pós-processamento (executado após cada trabalho com argumentos compatíveis com o SABnzbd e ambiente SAB_* - scripts SAB existentes funcionam sem alteração), extensões de limpeza (arquivos de lixo excluídos após a conclusão), Pastas inteligentes e arquivamento de TV (veja §10).

Manter os .nzb após a recolha (desligado por padrão) deixa o .nzb original na pasta monitorada depois de ele entrar na fila, em vez de movê-lo para o Lixo - para colecionadores, e para entregar o arquivo a alguém quando um download corre mal. Um arquivo mantido é lembrado, inclusive entre reinícios, e não volta à fila; salve-o de novo para baixá-lo outra vez. Seja qual for a escolha, a gaveta de cada trabalho tem um botão Transferir o .nzb, então uma cópia do .nzb de qualquer trabalho nunca está a mais de um clique.

Indexação ao vivo

O indexador embutido vem desligado. Ele encontra posts feitos sob um nome de arquivo real, e uma fatia grande e crescente da Usenet é postada de propósito sem um: assunto aleatório, nomes de arquivo aleatórios lá dentro, jogados num grupo genérico. O nome verdadeiro só vive num NZB que o uploader publica em outro lugar, ou seja, nunca esteve na Usenet para qualquer scanner ler. Medido no nosso próprio índice, 14,8 milhões de posts varridos renderam cerca de 31.000 releases exploráveis, mais ou menos um em quinhentos. Continue usando indexadores comerciais e adicione-os em Ajustes → Indexadores de busca, para poder consultá-los a partir do mural. Ligue isto se você acompanha grupos específicos onde ainda se posta com nomes reais, ou se quer ver o que o seu provedor realmente carrega. Com a chave desligada nada é varrido nem buscado, nenhum banco é criado, e o mural, Explorar, a watchlist e o feed newznab ficam ocultos.
AjusteO que faz
Indexador embutidoA chave mestra, desligada a menos que você a ligue. Desligada significa sem varredura, sem consultas de metadados, sem amostragem de disponibilidade e sem feed newznab; um índice que já esteja em disco é preservado (há um botão para apagar), então religar retoma em vez de varrer tudo de novo.
GruposNewsgroups que o indexador integrado varre (ex.: alt.binaries.teevee).
Intervalo de varreduraSegundos entre passagens (padrão 900).
Artigos de preenchimentoCabeçalhos buscados na primeiríssima varredura de um grupo.
Aprofundar por varreduraCada passagem também indexa esta quantidade de artigos mais antigos, ampliando seu histórico pesquisável em segundo plano até atingir a Idade máxima (padrão 200.000 por passagem ≈ dezenas de milhões de artigos por dia de atividade).
Idade máximaIgnora publicações mais antigas que isto (90d, 6m, 2y) - limita o tamanho do índice e o tempo de varredura.
Limitar à janela de idadeLigado por omissão. Apaga também releases já guardadas assim que passam a idade máxima, para que o índice mantenha aproximadamente essa janela em vez de crescer para sempre. Desligado = só as publicações novas são filtradas e o que está guardado fica. Fragmentos mortos (ocultos, ainda incompletos ao fim de uma semana) são recolhidos de qualquer forma.
Filtros de ingestãoRegras JSON filtrando o que entra no índice: tipos (lixo ofuscado é descartado por padrão), ano/resolução/idioma, limites de tamanho.
Varrer agora / revarredura profundaExecuta uma passagem imediatamente; com uma profundidade, revarre essa quantidade de cabeçalhos recentes.
Chave OMDb / atualização de metadados / apagarControles de enriquecimento do mural (§6). Apagar reconstrói o banco de dados do zero - o caminho de recuperação se ele for corrompido.
Fluxo de presDesligado até o ligares. Muitos envios são publicados sem o nome, e uma análise não tem nada para ler. Canais de retransmissão públicos anunciam o nome verdadeiro, a única via aberta para associar esses envios. Ligar mantém uma ligação aberta a uma rede IRC e escuta: nunca é enviado nada nem é criada qualquer conta. Precisa do indexador ligado, porque um fluxo sem onde guardar o que ouve é um socket aberto para nada.
Servidor de retransmissão, CanaisA rede IRC que transporta os anúncios (anfitrião ou anfitrião:porta) e os canais a escutar, separados por vírgulas. Uma alteração faz efeito na ligação seguinte: desliga e volta a ligar o fluxo para a aplicar já.
Nomear por correlaçãoAs retransmissões públicas em direto não levam nomes de ficheiro, por isso a maioria dos envios ofuscados não pode ser associada diretamente. O que um anúncio fixa é quando uma publicação apareceu e o seu tamanho. Isto compara a hora e o tamanho anunciados com os envios sem nome e, quando encaixam, sugere o nome verdadeiro em Navegar. Uma sugestão é assinalada como tal, exige o teu clique e nunca renomeia ficheiros no disco.
Aplicar automaticamente as correspondências fortesDesligado por omissão, e exigente quando ligado: o tamanho tem de bater certo, nenhum outro anúncio pode encaixar quase tão bem, e o anúncio tem de voltar a escolher este envio na verificação inversa. Um nome aplicado só muda a forma como a publicação é mostrada, é marcado como inferido e retira-se sozinho se uma transferência concluída o desmentir. Tudo o que for mais fraco continua uma sugestão.
Histórico de anúnciosO fluxo em direto só ouve os anúncios posteriores a ser ligado. Isto vai buscar cerca de seis meses de anúncios antigos a uma base de pres pública, com cortesia e uma só vez, para que também os envios já indexados possam ser associados. Corre meia hora ou assim em segundo plano.

Biblioteca, Segurança, Interface

Biblioteca: categorias tratadas como entradas de biblioteca instantâneas + intervalo de reverificação. Segurança: a chave de API completa (tudo) e a chave NZB (apenas adição - segura para dar a sites indexadores), ambas rotacionáveis ao vivo. Cada campo substitui a chave a que pertence assim que você sai dele, e deixar um campo em branco mantém a chave que ele já tem. A chave de API tem ainda Show, que revela e copia a chave atual para você colar no Sonarr, Radarr ou NZB360 quando lhe convier, e Create new, que cunha uma substituta - a chave antiga para de funcionar imediatamente, então tudo o que já está conectado precisa receber a nova. Ambas dependem da própria chave de API: a chave NZB apenas-adição não consegue lê-la, que é justamente o sentido dessa chave. Para saber de onde vem a chave numa instalação nova, veja §2. Interface: sons de clique, notificações da área de trabalho na conclusão, intervalo de reordenação de provedores.

Unidades de velocidade live decide como cada velocidade é mostrada no painel: megabytes (MB/s, a norma dos gestores de downloads, o valor por omissão) ou megabits (Mb/s, como os ISP anunciam as linhas). Os tamanhos de ficheiro ficam em bytes. É uma propriedade do daemon, não do seu navegador, por isso aplica-se a todos os dispositivos que olham para esta instalação.

Avançado: os botões por trás dos evidentes

Seis ajustes sem opção de linha de comandos. Cada um tem agora uma linha avançada no cartão de definições a que pertence, e continua a poder ser definido pela API (§16), p. ex. /api?mode=config&name=verify_mode&value=lean&apikey=…. Como todos os outros, ficam guardados em settings.json.

NomeO que faz
verify_modefull | fast | lean (por omissão fast). lean é o impulso para CPU lento: como fast, mas também salta o CRC yEnc por artigo assim que o PAR2 cobre um ficheiro, deixando uma camada de CRC32 em vez de duas. Downloads sem PAR2 mantêm os CRC dos artigos, e a verificação e a reparação no fim do trabalho não mudam em caso algum. O seletor Verificação durante a transferência acima é este ajuste.
auto_retry_minsEspera antes da única nova tentativa automática que uma primeira falha por artigos em falta recebe (20 por omissão). O atraso de propagação é uma causa real de artigos em falta e resolve-se sozinho; graças ao diário, a repetição vai buscar só o que ainda falta. Falhas por palavra-passe ou remoção nunca se qualificam.
index_scan_parQuantos grupos o indexador analisa em paralelo (3 por omissão, limitado a 1-8).
oracle_sampleOrçamento de STAT em repouso do oráculo de disponibilidade (§13), sondagens por hora e por servidor. 300 por omissão, 3600 no máximo, 0 desativa a amostragem por completo.
predb_max_rowsQuantos anúncios pre a tabela do fluxo guarda (250000 por omissão, limitado a 10000-5000000). A limpeza horária corta até esse número e a importação histórica recusa arrancar se fosse ultrapassá-lo, de forma que uma importação nunca acrescenta linhas que a limpeza seguinte apaga.
predb_seed_daysAté que ponto do passado chega uma importação histórica iniciada sem janela própria (180 dias por omissão, 366 no máximo). Uma janela maior são mais pedidos à fonte pre, que vai a um a cada dois segundos.

10 · Automação

Lista de acompanhamento

A automação mais simples: adicione um título no painel, defina as preferências de qualidade, pronto. Novos lançamentos são capturados conforme aparecem nos seus grupos indexados; cópias de melhor qualidade substituem capturas anteriores; uma visão de calendário mostra o que está por vir.

Feeds RSS

Ajustes → RSS: qualquer URL RSS newznab/indexador com intervalo por feed, categoria e regras de filtro (padrões de título, limites de tamanho). Os itens correspondentes são baixados automaticamente.

Pastas inteligentes

Regras avaliadas quando um trabalho é adicionado: correspondência por padrão/palavras-chave e tamanho, atribuir uma categoria (a primeira correspondência vence). Com o arquivamento de TV ligado, episódios de TV concluídos são renomeados e arquivados como Show/Season 01/Show - S01E02.mkv - prontos para Plex/Jellyfin sem uma ferramenta externa.

Agendador

O agendamento semanal (veja §9) automatiza pausar/retomar/velocidade por hora do dia.

Scripts

Um script de pós-processamento recebe os argumentos posicionais do SABnzbd e as variáveis de ambiente SAB_* - o grande ecossistema de scripts SAB roda como está.

11 · Sonarr, Radarr e companhia

O nzbfast fala a API do SABnzbd nativamente, então todo *arr funciona de imediato - e ele também pode atuar como indexador deles.

Como cliente de download

  1. No Sonarr/Radarr: Settings → Download Clients → adicione SABnzbd.
  2. Host: sua máquina nzbfast · Porta: 6789 · Chave de API: sua chave de API completa (onde encontrá-la: §2).
  3. Categoria conforme desejado (ex.: tv / movies). Test → check verde → Save.

Fila, histórico, status por trabalho, "remover e excluir", repetição e roteamento por categoria se comportam como os *arrs esperam.

Como indexador (newznab)

  1. Settings → Indexers → adicione Newznab.
  2. URL: http://<host>:6789/ · Caminho da API: /api · chave: sua chave de API.
  3. O nzbfast serve consultas caps, search, tvsearch e movie a partir de seu próprio índice dos seus grupos monitorados, e /getnzb/<id> devolve o NZB.
Ligue primeiro o indexador embutido (Ajustes → Indexação). Ele vem desligado, e enquanto estiver assim esta fachada responde a toda consulta com <error code="101"> em vez de um resultado vazio, de modo que um engano aparece na hora em que você adiciona o indexador e não semanas depois.

Por que se dar ao trabalho? Um indexador auto-hospedado exatamente dos grupos que lhe interessam: sem contas, sem limites de chamadas de API, com retenção tão funda quanto você o deixar varrer. É um acréscimo aos seus indexadores de sempre e não um substituto, porque ele só encontra o que foi postado sob um nome de arquivo real.

12 · Celular e apps remotos

O nzbfast implementa ambos os principais protocolos de controle remoto, então quase todo app de celular/tablet funciona. Escolha o protocolo que seu app suportar:

Apps que falam NZBGet (nzb360, LunaSea, NZB Unity…)

Campo no appValor
TipoNZBGet
Host / portasua máquina : 6789
Usuárioqualquer coisa (ex.: nzbfast)
Senhasua chave de API

Toda a superfície JSON-RPC que esses apps usam é servida: status, fila com reordenar/pausar/excluir, histórico, adicionar-NZB, limite de velocidade, pausar/retomar, log.

Apps que falam SABnzbd

Campo no appValor
TipoSABnzbd
Host / portasua máquina : 6789
Chave de APIsua chave de API (ou a chave NZB para acesso apenas de adição)

O painel no seu celular

Basta abrir http://<machine>:6789 em um navegador de celular - todo o painel e o mural têm um layout de toque. O painel Ajustes → Acesso remoto mostra as URLs exatas e um código QR para escanear.

Chegar ao nzbfast a partir de fora de casa

Não existe página de início de sessão, e isso é propositado. Um login com cookie de sessão é uma superfície de segurança para manter para sempre, e continuaria a ser a fechadura mais fraca de qualquer coisa exposta à Internet. Em vez disso o nzbfast autentica-se com a sua chave API, e aceita essa chave tanto num cabeçalho do pedido como no URL (X-Api-Key, ou Authorization: Bearer) - é isso que permite a algo colocado à frente tratar do início de sessão como deve ser.

O mais simples é não o publicar de todo. Instale o Tailscale nesta máquina e no telemóvel: ambos entram na mesma rede privada, nada fica exposto, não é preciso mexer no router nem em certificados, e Definições → Acesso remoto mostra um endereço que funciona em qualquer lado assim que detetar o Tailscale. Prefira este caminho a não ser que precise mesmo de um domínio público.

Se precisar, coloque um proxy inverso à frente, entregue-lhe o certificado e deixe-o fazer a autenticação. Inicie o nzbfast com --bind 127.0.0.1 para que o proxy seja a única entrada, e aponte o proxy a http://127.0.0.1:6789:

# Caddy
example.com {
    reverse_proxy 127.0.0.1:6789
}

# nginx
location / {
    proxy_pass http://127.0.0.1:6789;
    proxy_set_header Host              $host;
    proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

Acrescente por cima o que o seu proxy oferecer: autenticação básica, um serviço de forward-auth como o Authelia ou o Authentik, ou certificados de cliente. Há uma coisa que apanha toda a gente - o Sonarr, o Radarr e as apps de telemóvel não conseguem concluir um login de navegador, por isso deixe-lhes passagem. A maioria dos proxies consegue deixar passar um pedido com um cabeçalho X-Api-Key válido e exigir autenticação a tudo o resto.

Não se limite a encaminhar a porta 6789 no router. O painel fala HTTP simples: a sua chave API e tudo o que fizer com ela atravessariam a Internet legíveis por qualquer pessoa no caminho, e uma instalação sem chave nenhuma fica aberta a quem a encontrar. Se encaminhar uma porta mesmo assim, defina primeiro uma chave API.

13 · Ferramentas de desempenho

Benchmark do sistema

Um clique mede seus três tetos - vazão de rede (uma sondagem real de 8 segundos com múltiplas conexões), taxa de verificação da CPU e velocidade de escrita em disco - e apresenta a resposta: sua velocidade máxima de download esperada e qual teto é o limite. A barra mais curta é seu gargalo; as outras mostram sua folga. Agende-o (a cada 6 horas → semanal) e cada execução é registrada em uma tabela de histórico, para que você possa ver quando seu provedor, provedor de internet ou hardware mudou de comportamento. Execuções agendadas só acontecem enquanto a fila está ociosa.

Ajuste de conexões

Mede um provedor com números crescentes de conexões e recomenda a configuração - mais sockets ajudam até o provedor ou sua linha saturar, e alguns provedores punem quem pede demais. Testar todos compara cada provedor, depois dispara todos juntos para checar se o conjunto satura sua linha.

Diversidade de servidores

Amostra artigos por STAT em diferentes idades em cada servidor e agrupa provedores por lacunas compartilhadas: provedores com ~100% de artigos ausentes compartilhados são o mesmo backbone (redundantes para recuperação); os independentes realmente ampliam sua cobertura. Termina com uma recomendação em linguagem simples.

Inteligência automática da fila

O oráculo de disponibilidade

As remoções são a principal razão para um download de Usenet falhar, e são previsíveis: a mesma release desaparece de um backbone enquanto outro ainda a tem. O nzbfast mantém um pequeno registo do que os seus próprios fornecedores serviram de facto, e gasta um orçamento mínimo de sondagens STAT em repouso (algumas centenas por hora e por servidor, nunca durante um download) para o manter atual. Nunca descarrega carga útil para isso.

O que ganha com isso:

O veredito é uma previsão a partir de indícios, não uma garantia. Para uma resposta firme sobre um NZB, nzbfast check (§15) conta os artigos reais.

Orçamento de memória - e o que a pouca memória custa

Todos os caches do motor compartilham um orçamento (padrão ¼ da RAM física, limitado a 256 MB–16 GB). Defina-o explicitamente com o Limite de memória em Ajustes, ou --mem-limit na linha de comando.

O nzbfast é construído para saturar sua rede e seu disco ao mesmo tempo, e a RAM é o que permite fazer os dois em uma única passagem: os artigos são decodificados, verificados e escritos direto em seus deslocamentos finais, de modo que os volumes de arquivo nunca precisam tocar o disco. Prive-o de memória e nada quebra - cada cache tem um caminho de spill, e o motor degrada para mais E/S de disco em vez de fazer swap ou falhar. Mas esse spill não é grátis, e em trabalhos grandes você consegue medi-lo.

Medido em uma máquina e uma linha (M1 Ultra, 10 GbE), os mesmos arquivos em cada orçamento. Cada execução produziu um resultado correto, totalmente verificado e extraído:

Tamanho do trabalhoRAM de sobraOrçamento de 2 GB
≈ máquina de 8 GB
Orçamento de 1 GB
≈ máquina de 4 GB
Orçamento de 256 MB
≈ NAS de 2 GB
7 GB15 s15 s15 s15 s
35 GB65 s70 s70 s65 s
87 GB148 s206 s +39%196 s +32%180 s +22%
190 GB330 s427 s +29%402 s +22%411 s +25%

O pico de memória acompanha o orçamento, não o trabalho: aquele download de 190 GB termina em cerca de 1,1 GB de RAM. O que você troca por isso é tempo - e só em trabalhos grandes.

RecomendaçãoDê ao nzbfast cerca de 2 GB de orçamento por 100 GB do maior trabalho que você baixa, e deixe o padrão em paz no restante - ¼ da RAM já é a resposta certa na maioria das máquinas. Na prática: 4 GB de RAM cobrem trabalhos de até ~35 GB em velocidade máxima; 8–16 GB mantêm trabalhos de 100 GB para cima ali também; um NAS de 2 GB terminará qualquer coisa que você jogar, mas trate-o como um baixador de segundo plano em vez de algo que vai saturar uma linha rápida.

Em um NAS pequeno, reduza também as Conexões (2–4) junto com o orçamento. Com um orçamento de 256 MB e 2 conexões, o pico de memória fica perto de 190 MB - confortavelmente dentro do que um NAS de 2 GB tem de sobra. Saiba que, nesse ponto, a contagem de conexões, não a memória, é o que limita você: o mesmo trabalho de 35 GB levou 286 s em vez de 65 s. Essa é a forma honesta da troca - sempre terminará, e terminará corretamente; só não vai saturar a linha.

Os benchmarks são refeitos a cada versão; método e números por máquina são publicados junto com os resultados.

14 · Atualizações

Atualizar sem perder suas configurações

Uma regra vale para toda instalação: uma atualização substitui o programa, nunca as suas configurações. Tudo o que você configurou - servidores, caminhos, a chave de API, a fila - vive num punhado de arquivos dentro de uma única pasta (§17), e nenhum instalador, download de imagem ou upgrade de pacote toca nessa pasta. Quando as configurações parecem ter sumido depois de uma atualização, é quase sempre porque a instalação nova está lendo uma pasta diferente e vazia, não porque algo foi apagado; os arquivos antigos continuam onde sempre estiveram. §18 tem os passos de recuperação.

InstalaçãoComo atualizar
App do macOSAbra o DMG novo e arraste o NzbFast para Aplicativos, substituindo o antigo. Sua pasta de dados é separada e não é tocada.
Instalador do WindowsRode o instalador novo por cima da instalação antiga. Sua pasta de dados é separada e não é tocada.
Docker (linha de comando)docker pull nzbfast/nzbfast, remova o contêiner antigo e rode o novo com exatamente os mesmos mapeamentos -v. A imagem é descartável; a pasta /config mapeada é a sua instalação. Se o seu comando de execução usa um caminho relativo como -v ./config:/config, rode-o sempre do mesmo diretório - de qualquer outro lugar, ./config é uma pasta diferente e vazia.
Docker Composedocker compose pull && docker compose up -d, com o mesmo arquivo compose no mesmo lugar. O ./config do arquivo fica ancorado na pasta do próprio arquivo, então mantenha o arquivo onde está.
WatchtowerNada a fazer: ele recria o contêiner com os mesmos mapeamentos quando sai uma imagem nova.
UnraidAba Docker → Check for UpdatesApply Update. Nunca remova e adicione o app de novo para atualizá-lo; se algum dia você chegar a reinstalar, mantenha o mesmo caminho de appdata para que ele encontre o seu /config existente.
Synology (Container Manager)Baixe a imagem nova, pare o contêiner e recrie-o com os mesmos ajustes de volume - o passo a passo do guia da Synology cobre isso clique a clique, inclusive como deixar isso agendado.
Synology (pacote)Instale o .spk novo no Package Center; ele atualiza no lugar.
Homebrewbrew upgrade nzbfast
Binário simplesSubstitua o binário. Sua configuração fica onde você a criou (§17).
DicaUsuários de Docker conectando Sonarr ou Radarr: coloque a chave de API na própria definição do contêiner (-e NZBFAST_APIKEY=…, ou o bloco environment do seu arquivo compose ou do template do Unraid). Uma chave guardada ali sobrevive a qualquer acidente do contêiner, porque vive no host, dentro da definição, e é reaplicada a cada início. Uma chave que você definir depois em Ajustes ainda ganha dela.

15 · Linha de comando

Tudo o que o daemon faz também é programável por script. Os comandos do dia a dia:

ComandoFinalidade
nzbfast setupConfiguração interativa de servidor.
nzbfast serveRoda o daemon (painel + API + automação). --open abre o navegador; --apikey define a chave na mão (§2); --bind escolhe o endereço de escuta, padrão 0.0.0.0 (todas as interfaces), 127.0.0.1 só para esta máquina. Veja --help para a lista completa de flags - cada ajuste do painel tem um flag gêmeo.
nzbfast get file.nzbBaixa um NZB, pipeline completo, sem daemon. --preflight aborta cedo se a publicação não puder ser concluída; --password para conjuntos criptografados.
nzbfast check file.nzbVeredito de disponibilidade - COMPLETE / REPAIRABLE / IMPOSSIBLE - sem baixar o conteúdo.
nzbfast verify DIRVerifica arquivos contra o conjunto PAR2 em um diretório.
nzbfast sysbenchO benchmark do sistema + relatório de diversidade, no terminal.
nzbfast index / searchVarre grupos para o índice / pesquisa nele, sem o daemon.
nzbfast import-sabImporta servidores de um ini do SABnzbd.

Também disponíveis: inspect, probe, bench, bench-cpu, soak, fetch, spots/spot-search/spot-get (Spotnet), predb-seed (enche a base de pres com o período anterior a ligar o fluxo), make-release-nzb/make-test-nzb (fixtures de teste). Cada comando aceita --config e --help. Junta-se-lhes post: carrega ficheiros como artigos yEnc e escreve o NZB correspondente. É uma ferramenta de operação, exige um --post-server explícito e nunca escolhe um servidor por si.

16 · Visão geral da API

Endpoint base: http://host:6789/api?mode=…&apikey=…&output=json - compatível com o SABnzbd, então integrações SAB existentes funcionam sem alteração. Duas chaves: a chave de API (controle total) e a chave NZB (apenas adição: addfile/addurl). addnzblnk fica de propósito fora do conjunto de só adicionar: resolver um link pode gastar cota medida de indexador, coisa que uma credencial de só adicionar não tem por que fazer.

ÁreaModos
Filaqueue (com name=delete/pause/resume/priority/switch), pause, resume, addfile, addurl, addnzblnk, retry, set_password
Informaçõeshistory, status/fullstatus, stats, version, server_stats, usage, log, warnings, além de /jobnzb/<nzo_id> (devolve o próprio .nzb guardado do trabalho, fila ou histórico; só com a chave de API completa)
Configuraçãoget_config, config&name=<setting>&value=… (cada campo de Ajustes), server_save/delete/test/enable/reorder, import_probe/apply
Índice e muralindex_search, index_get, index_stats, index_scan_now, wall, wall_search/fix/refresh/art, além de newznab em /api?t=caps|search|tvsearch|movie e /getnzb/<id>
Automaçãowatchlist, watchlist_check_now, watch_calendar, feeds, smart_folders, schedule
Diagnósticosysbench, bench_history, connladder, pooltest, diversity, update_check, update_apply
JSON-RPC do NZBGet/jsonrpc - status, listgroups, history, append, editqueue, rate, pause, log (autenticação Basic: qualquer usuário, chave de API como senha)
Pré-visualização / reprodução/stream/<nzo_id> (intervalos HTTP; iniciar um trabalho de biblioteca estacionado precisa de token ?t= ou chave), /m3u/<id> (precisa da chave; gera o token), /wall, /art/…

17 · Arquivos e locais

Onde fica a pasta de configuração depende de como o nzbfast foi instalado. Essa única pasta guarda tudo o que vale a pena ter em backup:

InstalaçãoPasta de configuração
App do macOS~/Library/Application Support/nzbfast/
Windows%LOCALAPPDATA%\nzbfast\
Docker / contêineres NAS/config dentro do contêiner, que é a pasta do host que você mapeou para ele. No Unraid é a pasta de appdata do app.
Pacote Synology/var/packages/nzbfast/var/
TerminalA pasta em que você rodou nzbfast setup, ou para onde --config / $NZBFAST_CONFIG apontar.

E o que há dentro dela:

ArquivoConteúdo
config.local.jsonCredenciais de servidor e opções por servidor. Criado pelo assistente; editável em Ajustes. Mantenha-o privado. As senhas ficam ofuscadas, não criptografadas.
settings.jsonCada ajuste alterado no painel. Fica ao lado da configuração; os valores da interface substituem os flags de linha de comando. Exclua uma chave (ou o arquivo) para voltar a flags/padrões.
apikeyA chave de API que o nzbfast criou para si mesmo numa primeira execução (§2). Fica ao lado da configuração; no macOS e no Linux só pode ser lida pela conta que executa o nzbfast. Não o exclua para conseguir uma chave nova: numa instalação que já rodou alguma vez, nada a substitui e o daemon volta a subir sem chave nenhuma. Em vez disso, defina uma nova em Ajustes → Segurança.
index.dbO índice de lançamentos (SQLite) + metadados do mural. Seguro de excluir - reconstrói a partir da varredura (Ajustes → Indexação → Apagar faz isso por você).
<config>/.spool/Estado da fila (sobrevive a reinícios), NZBs por trabalho, registro de uso, histórico de benchmark, cache de imagens de pôster.
Diário de artigosDentro da pasta de saída de cada trabalho enquanto incompleto - sustenta a retomada de travamento e a repetição. Removido em caso de sucesso.
Ferramentas externasNenhuma é necessária - a extração RAR e o reparo PAR2 são nativos. Se um conjunto exótico algum dia precisar de um unrar ou par2 externo como reserva, o nzbfast procura ao lado de seu executável, depois no $PATH.

18 · Solução de problemas

SintomaVerifique
Downloads lentosExecute o Benchmark do sistema - ele nomeia o gargalo diretamente. Se for a rede: execute o Ajuste de conexões, verifique as contagens de conexões por servidor e confirme que seus provedores não são todos um mesmo backbone (Diversidade de servidores).
Lento só em trabalhos muito grandes
(NAS ou máquina com pouca RAM)
Esperado, e mensurável: um orçamento de memória apertado dá spill dos caches para o disco e custa 20–40% acima de ~87 GB. Veja Orçamento de memória para os números e quanta RAM dar. Trabalhos menores não são afetados.
Download falha "artigos ausentes"A publicação expirou ou foi removida nos seus provedores. Um segundo provedor em um backbone diferente resgata a maioria destes. nzbfast check prevê isso antes de baixar. E o mural assinala à partida as que provavelmente desapareceram, com o seu ponto de disponibilidade (§13). Uma primeira falha desta forma repete-se sozinha uma vez após uma espera, porque o atraso de propagação é indistinguível e resolve-se por si.
Arquivo concluído pede senhaA linha do Histórico mostra 🔑 - digite a senha ali; o trabalho termina no lugar.
Um arquivo compactado não extraiFalhas de senha e de reparo se nomeiam sozinhas na linha do Histórico. Para todo o resto há uma saída de emergência: Ajustes → Pasta monitorada e pós-processamento → Extrair com unrar externo (um ajuste avançado) entrega a extração ao programa unrar instalado na sua máquina em vez do extrator integrado. Fora isso, deixe desligado: o caminho integrado é mais rápido em todas as formas que medimos, e publicações ofuscadas com nomes hash sempre o usam de qualquer forma, porque o unrar não consegue acompanhar sua renomeação. O mesmo interruptor para execuções de nzbfast get é a variável de ambiente NZBFAST_NO_NATIVE_UNRAR=1. Se o unrar extrair um arquivo que o extrator integrado recusou, relate para que possamos corrigir o caminho integrado.
Sonarr/Radarr não conectaPorta 6789 acessível? Chave de API correta (chave completa, não a chave NZB)? Tipo de cliente definido como SABnzbd?
O painel pede uma chave de API que eu nunca definiUma instalação nova cria uma para si mesma e a exibe uma vez na inicialização (§2). Ela está no arquivo apikey ao lado da sua configuração, e na saída de inicialização. Ou digite uma chave própria em Ajustes → Segurança a partir de um navegador que já esteja conectado.
Todas as minhas configurações parecem ter sumido depois de uma atualização
(servidores, caminhos, chave de API)
Nada numa atualização apaga configurações; isso significa que o nzbfast está lendo uma pasta diferente e vazia. Primeiro: o campo da chave de API em Ajustes aparece em branco de propósito - clique em Show antes de concluir que ela se perdeu. No Docker, compare o mapeamento de /config do contêiner novo com o do antigo: um caminho de host alterado, um caminho relativo rodado de outro diretório ou uma pasta de appdata recém-criada fazem todos o nzbfast começar do zero, enquanto as suas configurações reais seguem intactas no caminho anterior. Encontre a pasta antiga (procure settings.json, seu arquivo de configuração e apikey - locais em §17), então aponte o mapeamento de volta para ela, ou copie esses arquivos para a pasta nova e reinicie. O log de inicialização nomeia o arquivo de configurações exato em uso: [settings] applying saved settings from …
Nada na rede consegue alcançar o daemonVerifique o --bind: 127.0.0.1 atende só a máquina em que o nzbfast roda. O padrão, 0.0.0.0, atende todas as interfaces. Depois verifique o firewall da própria máquina para a porta 6789.
O cartão Explorar continua pequenoO indexador cresce em segundo plano - verifique se os grupos de Ajustes → Indexação estão definidos e dê tempo ao Aprofundar por varredura para acumular histórico. "Varrer agora" força uma passagem; a linha de status mostra o progresso ao vivo.
O mural mostra imagens erradas/inexistentesFolha de detalhes → ✎ Corrigir correspondência ou ↻ Atualizar metadados. Buscas de filmes melhoram com uma chave OMDb gratuita.
O macOS diz que o aplicativo "nzbfast" não pode ser abertoDuas causas, ambas rápidas. Se você usa o zip simples -macos-universal.zip, dê dois cliques em Start nzbfast.command, não no arquivo nzbfast ao lado: esse é o programa em si, e o Finder responde a um clique duplo nele exatamente com esta mensagem. É o lançador que prepara tudo e inicia. Se o lançador der a mesma mensagem, a cópia perdeu o bit de execução do Unix no caminho: o macOS guarda esse bit dentro do .zip, mas apps de chat, drives na nuvem e recompactar não guardam, então uma cópia repassada na mão chega sem permissão de execução. Baixe o .dmg ou o .zip direto da página de releases e isso não acontece. Para salvar a cópia que você já tem: abra o Terminal, digite chmod +x com um espaço no fim, arraste Start nzbfast.command e o arquivo nzbfast para a janela e pressione Return; depois dê dois cliques no lançador de novo.
O daemon não inicia: porta em usoOutra instância está rodando - ou altere --port.
Onde estão os logs?O cartão Log no painel, ou o terminal/arquivo de log com que você iniciou o serve.
Ainda travado?O cartão Log normalmente nomeia o culpado - inclua sua cauda ao relatar um problema, junto com seu nzbfast --version.

nzbfast - este manual acompanha cada versão. Ajustes, endpoints e padrões aqui referenciados correspondem à versão com que ele foi entregue.