⚡ 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:
- NNTP com pipeline - muitas solicitações de artigos trafegam por cada conexão uma atrás da outra, mantendo toda conexão em velocidade máxima em vez de esperar as idas e voltas.
- Um pipeline de passagem única - download, verificação e extração se sobrepõem. Os volumes de arquivo são extraídos no fluxo; em uma publicação típica em modo armazenamento, os arquivos RAR nunca tocam seu disco, então o trabalho precisa de 1× o tamanho do lançamento, não 2×, e termina quando o download termina.
- União multiprovedor - cada servidor configurado contribui; um artigo ausente em um backbone é buscado em outro. Servidores lentos ou mortos nunca travam a fila.
- Um orçamento de memória - o motor se adapta a uma cota de RAM limitada e degrada para disco se necessário. Ele nunca faz swap da sua máquina.
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
- Abra
nzbfast-<version>-macos.dmge arraste o NzbFast para Aplicativos (universal: Apple Silicon + Intel). - 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.
- 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.
- Solte um arquivo
.nzbem qualquer lugar do painel - ou simplesmente dê duplo clique em arquivos.nzbno 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
- Execute
nzbfast-setup-<version>.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ções → Executar assim mesmo. - 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.
- Dar duplo clique em um arquivo
.nzbo 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
nzbfast import-sab
na linha de comando.3 · Como o nzbfast funciona
Um vocabulário rápido para que o restante do manual seja de leitura fácil:
| Termo | Significado |
|---|---|
| Provedor / servidor | Um 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. |
| Backbone | A 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. |
| NZB | Um pequeno arquivo XML que lista os artigos que compõem uma publicação. É isto que você fornece ao nzbfast. |
| PAR2 | Dados 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 armazenamento | A 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 trabalho | nzbfast | NZBGet 26.2 | SABnzbd 5.0.4 |
|---|---|---|---|
| 7 GB | 13,7 s | +26% | +39% |
| 35 GB | 67 s | +61% | +325% |
| 87 GB | 272 s | +36% | +160% |
| 190 GB | 9 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:
- Espaço em disco. Uma passagem única precisa de 1× o tamanho do lançamento; clientes que escrevem os volumes de arquivo e depois os extraem precisam de 2×. Em uma máquina de teste com 97 GB livres, um trabalho de 87 GB terminou aqui em 3 min 08 s e os outros dois não conseguiram rodar de jeito nenhum.
- Memória. No trabalho de 190 GB, o pico de uso foi de 3,9 GB contra os 9,3 GB do SABnzbd - e o nzbfast fará o mesmo trabalho em cerca de 1 GB se for mandado (veja Orçamento de memória).
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
- Menu de limite de velocidade - tetos fixos, auto · ceder à LAN (um modo regulado por RTT que recua quando outra pessoa na casa precisa da linha) ou ilimitado.
- Pausar por… - pausa tudo por 15 min/30 min/1 h/3 h com retomada automática, ou use o botão Pausar para uma pausa sem prazo. A pausa é imediata: a transferência ativa para em segundos e retoma depois a partir do diário, sem perder nada. (Trabalhos com prioridade Forçar continuam baixando, ao estilo SABnzbd.)
- Um banner de atualização aparece aqui quando uma nova versão está disponível (veja Atualizações).
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
- Arraste as linhas para reordenar (dentro de uma faixa de prioridade - Forçar/Alta ainda baixam primeiro); altere a prioridade na própria linha.
- Clique em uma linha para a gaveta de detalhes: barras de progresso por arquivo, contagens de blocos verificados e quanto cada servidor contribuiu para este trabalho.
- Emblemas mostram estados especiais: adiado (lento), pré-carregando, pausado (veja Ferramentas de desempenho).
- Um gráfico de contagem regressiva acompanha o total de GB restantes em toda a 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 com status, tamanho, local; 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.
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étodo | Como |
|---|---|
| Arrastar e soltar | Solte um ou mais arquivos .nzb em qualquer lugar do painel. |
| Pasta monitorada | Defina uma pasta em Ajustes; qualquer .nzb salvo nela é
detectado em até 5 segundos e o arquivo é removido. Aponte a pasta de downloads do seu navegador
para ela para capturas de um clique a partir de sites indexadores. |
| De uma URL | Cole um link NZB (API mode=addurl, ou por qualquer app conectado). |
| Explorar índice | Clique em qualquer lançamento completo no cartão Explorar. |
| Lista de acompanhamento / RSS | Automático - veja Automação. |
| Sonarr/Radarr etc. | Eles enviam capturas direto para a fila - veja §11. |
| Linha de comando | nzbfast get file.nzb baixa sem o daemon. |
Categorias, prioridades, senhas
- Categorias são rótulos livres; cada uma vira uma subpasta da sua pasta de downloads, e as Pastas inteligentes (veja §10) podem atribuí-las por regra.
- Prioridades: Forçar > Alta > Normal > Baixa. Forçar ignora a pausa e a cota.
- Senhas para arquivos criptografados são detectadas automaticamente a partir de
<meta type="password">dentro do NZB ou de um nome de arquivoName{{password}}.nzb, e podem ser fornecidas por trabalho pela API ou depois pelo Histórico (🔑).
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.
- Separadores de Filmes / Séries / Outros, pesquisa instantânea e sete ordenações: Para você, Publicações mais recentes, Ano de lançamento, Mais bem avaliados, Título A–Z, Maiores e Mais publicados.
- Somente correspondidos vem ligado por padrão, ocultando lixo não identificado; um chip "+N não correspondidos" o revela.
- Clique em um bloco para a folha de detalhes: sinopse, nota e votos do IMDb, elenco - e ▶ Reproduzir (pré-visualize na hora, veja §7) ou ⬇ Baixar.
- ✎ Corrigir correspondência - se um título correspondeu à série ou filme errado, escolha o certo entre pôsteres candidatos, ou digite título/ano/tipo manualmente. O texto manual nunca é sobrescrito pelo enriquecedor. ↻ Atualizar metadados rebusca um título; Ajustes → Indexação pode atualizar todos ou apagar/reconstruir o índice inteiro.
- Os metadados são sem chave por padrão - TVmaze, iTunes, conjuntos de dados do IMDb, Wikidata, Wikipédia e AniList não precisam de contas. Uma chave OMDb (grátis, cadastro só com e-mail - há um ajudante de cadastro em Ajustes → Indexação) melhora a correspondência de filmes; uma chave TMDB é respeitada se você já tiver uma.
- Para você ordena o mural por um perfil de gostos construído nesta máquina a partir do seu próprio histórico concluído e da sua watchlist: géneros preferidos, se pende para cinema ou séries, e mais ou menos que época. Os títulos que já tem descem para o fim em vez de desaparecerem, e uma legenda «Porque você vê …» diz em que se baseou. Sem histórico, recai em Mais publicados, por isso o separador nunca está vazio. Nada disto sai do daemon.
- Sem interesse num cartão esconde esse título, e esconder alguns parecidos ensina o mural: ele propõe um filtro que aceita com um clique («Esconder todos os títulos de Reality a partir de agora?»). Tudo o que escondeu, e cada filtro aprendido, está em Ocultos e filtros e pode ser desfeito aí.
- Um pequeno ponto de disponibilidade num cartão é o veredito do oráculo (§13): um «?» âmbar significa incerto nos seus fornecedores, vermelho que as partes continuam a faltar. Grupos que estão a ser varridos levam um emblema varrido.
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.
- ▶ Reproduzir no mural (ou
/m3u/<id>) entrega ao seu reprodutor multimídia uma URL; o daemon inicia ou reaproveita o download por trás dela. - O endpoint
/stream/<nzo_id>serve o arquivo com suporte completo a intervalos HTTP enquanto ele baixa. Conferir qualquer ponto funciona: confira direto o minuto 40 e os artigos daquela região são promovidos para o início da fila de download - ele abre ali em alguns segundos em vez de minutos. O início e o fim do arquivo são buscados primeiro para que os reprodutores encontrem seus dados de índice imediatamente. - Modo biblioteca: categorias listadas em library_cats viram entradas instantâneas
apenas de metadados - um arquivo
.strmaparece na hora, a disponibilidade é verificada em segundo plano e o download real começa quando você o abre pela primeira vez.
/stream. Para conferir de outra máquina, use o endereço LAN da sua máquina no
lugar de localhost./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:
| Campo | Notas |
|---|---|
| Host / porta | Use a porta SSL 563. O TLS não custa nada mensurável - o nzbfast sempre criptografa. |
| Usuário / senha | Armazenados localmente em config.local.json, nunca exibidos de volta ao navegador. Deixar a senha em branco ao editar mantém a armazenada. |
| Conexões | Conexõ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%). |
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.
| Chave | Notas |
|---|---|
bind_ip | Liga 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. |
socks5 | Envia 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. |
- A marca ao lado de cada servidor é o seu interruptor: marcada, o servidor está no pool de download; desmarcada, está desativado. Um servidor desativado mantém as credenciais e as definições e continua a poder ser testado; apenas nunca lhe são pedidos artigos. A linha esbate-se, a contagem do cabeçalho (2 de 3 ativos) desce e a alteração aplica-se a partir do próximo download. Útil para poupar uma conta de blocos que estás a guardar, ou para provar que um fornecedor está na origem de um problema sem o apagar.
- Testar faz uma conexão + TLS + login reais e informa o tempo de ida e volta.
- Importar do SABnzbd / NZBGet… varre os locais de instalação usuais, mostra o que encontrou e copia os servidores (ignorando duplicados).
- As edições de servidor se aplicam a partir do próximo download - sem reiniciar.
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
| Ajuste | O que faz |
|---|---|
| Limite de velocidade | Teto em bytes/seg (50M, 1G, 0 = ilimitado). Apps remotos podem enviar porcentagens - defina a Velocidade da linha para que sejam traduzidas corretamente. |
| Velocidade automática | Teto regulado por RTT que cede a outro tráfego da casa e se reexpande quando a linha está tranquila. |
| Adiar downloads lentos automaticamente | Um trabalho preso em um servidor lento enquanto outros esperam é movido para o fim da fila (o progresso é mantido). Veja §13. |
| Pré-carregar em servidores ociosos | Servidores inúteis ao trabalho ativo iniciam o próximo da fila. Veja §13. |
| Atualização automática / URL de verificação de atualizações | Veja §14. |
| Velocidade da linha | A velocidade nominal da sua conexão - permite limites em porcentagem de apps compatíveis com o SABnzbd. |
| Agendamento semanal | Editor 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 rápida (CRC32) (ligada por omissão) reivindica os blocos PAR2 por CRC32 enquanto o download ainda decorre, o que é 2-3x mais rápido num CPU lento. A soma de verificação de cada artigo continua a ser verificada, e a passagem final usa sempre MD5 completo: não se troca nada em correção. Desmarque para calcular também MD5 por bloco durante o download.
Disco e cota ao vivo
Espaço livre mínimo (pausa novos trabalhos abaixo dele), 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.
| Ajuste | O que faz |
|---|---|
| Incluir resolução | Acrescenta 1080p, 2160p… ao nome. Ligado por omissão; as outras quatro etiquetas estão desligadas. |
| Incluir codec de vídeo | x265, x264, AV1… |
| Incluir codec de áudio | Atmos, DTS-HD, AC3… |
| Incluir fonte | BluRay, WEB, REMUX… |
| Incluir grupo de lançamento | A etiqueta -GROUP no fim. |
| Remover arquivos inúteis | Ligado 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ídia | Desligado 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. |
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.
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).
Indexação ao vivo
| Ajuste | O que faz |
|---|---|
| Grupos | Newsgroups que o indexador integrado varre (ex.: alt.binaries.teevee). |
| Intervalo de varredura | Segundos entre passagens (padrão 900). |
| Artigos de preenchimento | Cabeçalhos buscados na primeiríssima varredura de um grupo. |
| Aprofundar por varredura | Cada 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áxima | Ignora publicações mais antigas que isto (90d, 6m, 2y) - limita o tamanho do índice e o tempo de varredura. |
| Limitar à janela de idade | Ligado 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ão | Regras JSON filtrando o que entra no índice: tipos (lixo ofuscado é descartado por padrão), ano/resolução/idioma, limites de tamanho. |
| Varrer agora / revarredura profunda | Executa uma passagem imediatamente; com uma profundidade, revarre essa quantidade de cabeçalhos recentes. |
| Chave OMDb / atualização de metadados / apagar | Controles de enriquecimento do mural (§6). Apagar reconstrói o banco de dados do zero - o caminho de recuperação se ele for corrompido. |
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. 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: ajustes sem controlo no painel
Quatro ajustes não têm controlo na interface nem opção de linha de comandos.
Defina-os pela API (§16), p. ex.
/api?mode=config&name=verify_mode&value=lean&apikey=…. Como
todos os outros, ficam guardados em settings.json.
| Nome | O que faz |
|---|---|
verify_mode | full | 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. A Verificação rápida acima é este mesmo controlo para full contra fast. |
auto_retry_mins | Espera 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_par | Quantos grupos o indexador analisa em paralelo (3 por omissão, limitado a 1-8). |
oracle_sample | Orç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. |
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
- No Sonarr/Radarr: Settings → Download Clients → adicione SABnzbd.
- Host: sua máquina nzbfast · Porta: 6789 · Chave de API: sua chave de API completa (Ajustes → Segurança; o controle de QR/copiar fica ao lado dela).
- 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)
- Settings → Indexers → adicione Newznab.
- URL:
http://<host>:6789/· Caminho da API:/api· chave: sua chave de API. - O nzbfast serve consultas
caps,search,tvsearchemoviea partir de seu próprio índice dos seus grupos monitorados, e/getnzb/<id>devolve o NZB.
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 app | Valor |
|---|---|
| Tipo | NZBGet |
| Host / porta | sua máquina : 6789 |
| Usuário | qualquer coisa (ex.: nzbfast) |
| Senha | sua 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 app | Valor |
|---|---|
| Tipo | SABnzbd |
| Host / porta | sua máquina : 6789 |
| Chave de API | sua 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.
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
- Adiar automaticamente: um download arrastando-se em um único servidor lento enquanto outros trabalhos esperam é estacionado no fim (o diário mantém seu progresso) e repetido quando a fila está livre.
- Pré-carga em servidor ocioso: servidores que não podem ajudar o trabalho ativo (suas cópias sumiram) começam a baixar o próximo trabalho da fila enquanto isso. Nenhum outro cliente faz sobreposição entre trabalhos.
- Absorção entre trabalhos: enquanto a cauda de um trabalho concluído (verificação/extração) termina no disco, o download do próximo trabalho já domina a linha.
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:
- Um veredito de disponibilidade nos cartões do mural e nas linhas do índice (§6): «?» âmbar para incerto nos seus fornecedores, vermelho para perdido com confiança. Sem marca, parece estar bem.
- Um emblema varrido nos grupos onde as publicações recentes já estão a ser retiradas, para distinguir um grupo a morrer de uma release azarada.
- Pular provedores que o oráculo dá como perdidos (Ajustes, desligado por omissão, experimental): quando a verificação tem a certeza de que o backbone de um fornecedor perdeu uma release, salta-o já nesse download em vez de esperar que falhe. Nunca saltará o seu último fornecedor.
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 trabalho | RAM de sobra | Orç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 GB | 15 s | 15 s | 15 s | 15 s |
| 35 GB | 65 s | 70 s | 70 s | 65 s |
| 87 GB | 148 s | 206 s +39% | 196 s +32% | 180 s +22% |
| 190 GB | 330 s | 427 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.
- Até ~35 GB, pouca memória é de graça. O conjunto de trabalho cabe de qualquer forma, então uma máquina de 4 GB termina esse trabalho tão rápido quanto uma de 64 GB.
- Acima de ~87 GB você paga 20–40% - mas só quando sua linha supera seu disco. Blocos de verificação e volumes de arquivo que teriam ficado na RAM são escritos e lidos de volta, e isso só custa tempo se a rede puder entregar mais rápido do que o disco consegue absorver o tráfego extra. Os 20–40% acima foram medidos em 10 GbE; o mesmo trabalho de 87 GB nos mesmos orçamentos em uma linha de ~2,4 Gbps não mostrou penalidade nenhuma (−1 a +7%, dentro do ruído entre execuções). A penalidade é função de quanto a linha supera o disco, não do tamanho do trabalho - em uma conexão doméstica típica, um orçamento pequeno é quase de graça mesmo em trabalhos muito grandes.
- A penalidade se estabiliza. Uma vez que um trabalho seja grande o bastante para dar spill, todo orçamento limitado dá spill de mais ou menos a mesma quantidade - as execuções de 2 GB, 1 GB e 256 MB leem de volta essencialmente o mesmo número de blocos do disco e terminam dentro do ruído umas das outras. Então um pouco mais de RAM abaixo do limiar que evita o spill por completo não recompra o custo: dê o suficiente para manter o trabalho na memória, ou o número exato quase não importa.
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
- As atualizações são apenas aviso: o nzbfast nunca baixa nem substitui o próprio binário, e não há nele código capaz disso. Quando existe uma versão nova, o cabeçalho mostra ⬆ v X disponível - baixar; o chip leva à página de download oficial (o link é fixo no aplicativo, nunca vem do manifesto de atualização). Instale a versão nova do mesmo jeito que instalou a atual.
- O nzbfast verifica novas versões duas vezes por dia. Desligue Verificar atualizações (Configurações) e ele não contata mais o manifesto de atualização; uma URL de verificação vazia faz o mesmo.
15 · Linha de comando
Tudo o que o daemon faz também é programável por script. Os comandos do dia a dia:
| Comando | Finalidade |
|---|---|
nzbfast setup | Configuração interativa de servidor. |
nzbfast serve | Roda o daemon (painel + API + automação). --open abre o navegador; veja --help para a lista completa de flags - cada ajuste do painel tem um flag gêmeo. |
nzbfast get file.nzb | Baixa 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.nzb | Veredito de disponibilidade - COMPLETE / REPAIRABLE / IMPOSSIBLE - sem baixar o conteúdo. |
nzbfast verify DIR | Verifica arquivos contra o conjunto PAR2 em um diretório. |
nzbfast sysbench | O benchmark do sistema + relatório de diversidade, no terminal. |
nzbfast index / search | Varre grupos para o índice / pesquisa nele, sem o daemon. |
nzbfast import-sab | Importa servidores de um ini do SABnzbd. |
Também disponíveis: inspect, probe,
bench, bench-cpu, soak, fetch,
spots/spot-search/spot-get (Spotnet),
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).
| Área | Modos |
|---|---|
| Fila | queue (com name=delete/pause/resume/priority/switch), pause, resume, addfile, addurl, retry, set_password |
| Informações | history, status/fullstatus, stats, version, server_stats, usage, log, warnings |
| Configuração | get_config, config&name=<setting>&value=… (cada campo de Ajustes), server_save/delete/test/enable/reorder, import_probe/apply |
| Índice e mural | index_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ção | watchlist, watchlist_check_now, watch_calendar, feeds, smart_folders, schedule |
| Diagnóstico | sysbench, 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
| Arquivo | Conteúdo |
|---|---|
config.local.json | Credenciais de servidor e opções por servidor. Criado pelo assistente; editável em Ajustes. Mantenha-o privado. |
settings.json | Cada 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. |
index.db | O í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 artigos | Dentro 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 externas | Nenhuma é 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
| Sintoma | Verifique |
|---|---|
| Downloads lentos | Execute 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 senha | A linha do Histórico mostra 🔑 - digite a senha ali; o trabalho termina no lugar. |
| Sonarr/Radarr não conecta | Porta 6789 acessível? Chave de API correta (chave completa, não a chave NZB)? Tipo de cliente definido como SABnzbd? |
| O cartão Explorar continua pequeno | O 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/inexistentes | Folha de detalhes → ✎ Corrigir correspondência ou ↻ Atualizar metadados. Buscas de filmes melhoram com uma chave OMDb gratuita. |
| O daemon não inicia: porta em uso | Outra 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. |
nzbfast --version.nzbfast - este manual acompanha cada versão. Ajustes, endpoints e padrões aqui referenciados correspondem à versão com que ele foi entregue.