⚡ nzbfast

Den hurtige Usenet-downloader - brugermanual

1 · Velkommen

nzbfast henter fra Usenet så hurtigt, som din linje, dine udbydere og din maskine tillader - og som regel betyder det så hurtigt som din linje. Det er ét enkelt selvstændigt program: motoren, et web-dashboard, en postervægs-mediebrowser, en indbygget indexer, realtids-forhåndsvisning, native PAR2-reparation og native RAR-udpakning er alle inde i én eksekverbar fil. Der er ikke andet at installere.

Det, der gør den hurtig, er arkitektur, ikke finjusteringer:

Målt mod feltet på identisk hardware, samme jobs og udbydere har nzbfast fuldført en 190 GB-download på omkring 5 minutter på en 10 GbE-linje - med de førende alternativer 30–220% bagefter på de samme tests, dér hvor de overhovedet fuldførte dem. Tallene står i §3.

2 · Kom hurtigt i gang

macOS

  1. Åbn nzbfast-<version>-macos.dmg og træk NzbFast ind i Programmer (universal: Apple Silicon + Intel).
  2. Første start: macOS advarer om, at nzbfast endnu ikke er Apple-notariseret. Højreklik på appen → Åbn - eller åbn Systemindstillinger → Anonymitet & sikkerhed, rul ned, og klik Åbn alligevel. Dette er et engangstrin.
  3. App-vinduet viser dashboardet med et velkomstkort - klik på det og tilføj mindst én Usenet-server (host, port 563, brugernavn, adgangskode). Du kan tilføje flere senere under Indstillinger.
  4. Slip en .nzb hvor som helst på dashboardet - eller dobbeltklik bare på .nzb-filer i Finder. Downloads lander i ~/Downloads/nzbfast. Afslut fra menuen; downloads genoptager, hvor de slap.

Vil du hellere undvære app'en? Den almindelige zip (binær + Start nzbfast.command-starter, samme motor) virker stadig som før - trin nedenfor under "Fra en terminal".

Windows

  1. Kør nzbfast-setup-<version>.exe. Den installeres kun for din bruger (ingen administratoradgangskode). Da denne udgivelse endnu ikke er kodesigneret, viser SmartScreen måske "Windows beskyttede din pc" - klik Flere oplysningerKør alligevel.
  2. nzbfast bor i systembakken: dobbeltklik på bakke-ikonet (eller brug Åbn dashboard i dets højrekliksmenu) for at åbne dashboardet, og tilføj så din Usenet-server fra velkomstkortet. Bakke-menuen har også Pause/Genoptag, din downloadmappe og Afslut.
  3. At dobbeltklikke på en .nzb-fil sætter den i kø. Windows Defender spørger måske én gang om at tillade lytning på det lokale netværk - tillad det.

Vil du hellere have en bærbar kopi? -windows-x64.zip virker stadig: pak ud hvor som helst og dobbeltklik på nzbfast.exe (eller Start nzbfast.bat) for terminal-guiden.

Fra en terminal (enhver platform)

nzbfast setup            # interactive server setup (writes config.local.json)
nzbfast serve --open     # start the daemon and open the dashboard
TipKører du allerede SABnzbd eller NZBGet? Spring indtastning af loginoplysninger over: Indstillinger → Usenet-servere → Importér fra SABnzbd / NZBGet… finder din eksisterende installation og kopierer dens servere over. Der findes også nzbfast import-sab på kommandolinjen.

3 · Sådan virker nzbfast

En hurtig ordliste, så resten af manualen er let at læse:

BegrebBetydning
Udbyder / serverEn Usenet-tjeneste, du har en konto hos (Newshosting, Eweka, XS News…). Hver tillader et vist antal samtidige forbindelser.
BackboneInfrastrukturen bag en udbyder. Flere brands videresælger ofte den samme backbone - nyttigt at vide, fordi to udbydere på én backbone mangler de samme artikler. Se Server-diversitet.
NZBEn lille XML-fil, der viser de artikler, en post består af. Det er den, du fodrer nzbfast med.
PAR2Genoprettelsesdata, der postes sammen med en release. nzbfast verificerer mod den under downloaden og reparerer automatisk, når artikler er beskadigede eller mangler.
Store-mode-RARDe fleste releases er pakket i RAR-volumener uden komprimering. nzbfast genkender dette og skriver den indre fil direkte til dens endelige placering, mens den henter - ingen udpakningsfase bagefter.

Pipelinen kører download → afkod → verificér → udpak samtidig. Pipeline-kortet på dashboardet viser alle tre baner bevæge sig på én gang. Når den sidste byte ankommer, er verificeringen allerede færdig, og filen er allerede udpakket; et typisk jobs "efterbehandlings"-tid er nul. Er reparation nødvendig, materialiseres volumenerne først da til disk, repareres på stedet af den native GF(2¹⁶)-motor (omdøbte eller byte-forskudte obfuskerede data findes og adopteres af en glidende blokscanning) og udpakkes igen - alt automatisk.

Afbrudte downloads (crash, strømsvigt, kill -9) genoptager fra artikel-journalen: bytes, der allerede ligger på disken, hentes aldrig to gange. Journalen registrerer, hvor hver artikels bytes fysisk landede - selv bytes, der blev direkte-udpakket ind i den endelige fil - så en genoptagelse genopbygger fra lokal disk og genverificerer alt, den gendannede, mod PAR2-blok-mappet, før den stoler på det.

Sådan står det til sammenligning

Målt mod SABnzbd 5.0.4 og NZBGet 26.2 på samme maskine, samme udbydere og samme NZB'er, taget tid til en brugbar fil - download, verificering, reparation og udpakning alt inkluderet, for det er, når jobbet reelt er færdigt:

JobstørrelsenzbfastNZBGet 26.2SABnzbd 5.0.4
7 GB13.7 s+26%+39%
35 GB67 s+61%+325%
87 GB272 s+36%+160%
190 GB9 m 00 s+30%+111%

Forskellen er den efterbehandling, de andre stadig skal lave, efter den sidste byte lander. Begge konkurrenter blev tunet til sammenligningen, ikke efterladt på standardindstillinger - SABnzbd leveres i særdeleshed med anmodnings-pipelining slået fra, hvilket koster den dyrt, så den blev slået til.

To forskelle betyder lige så meget som tiderne:

Crash-genoptagelse, måltDræb en download midt i flugten (kill -9 ved 15 GB af et 34.5 GB-job), og genoptagelsen gen-henter ~0.3 GB - kun de artikler, der reelt var undervejs ved drabet - mod NZBGets 0.2 GB i samme test. Dette var engang et nederlag, vi offentliggjorde (15.3 GB gen-hentet, dengang journalen ikke kunne gøre rede for direkte-udpakkede bytes); placerings-journalen løste det: genoptagelsen gendanner de bytes fra de lokale output- filer og genverificerer hver gendannet byte mod PAR2-blok-mappet, før den stoler på det. Hvert scenarie, vi taber, offentliggøres sammen med sejrene, med hele metoden og de rå tal.

4 · Dashboardet

Åbn http://localhost:6789 (eller din maskines adresse fra en anden enhed - telefonlayoutet tilpasser sig automatisk). Alt opdateres live, én gang i sekundet. Kortene, oppefra og ned:

Header-bjælken

Gennemløb

Live MB/s med et rullende diagram; de stiplede vandmærker markerer denne sessions høj/lav, den svage linje er et glidende gennemsnit. Nedenunder viser et histogram, hvordan sessionens hastighedsmålinger fordeler sig - typisk vs. top. Gør vinduet bredere, og diagrammerne viser mere historik (op til en time).

Statistik-fliser

Hentet i denne session, kødybde, antal fuldført/mislykket, sessionens tophastighed.

Ressourcer - én maskine, fire lofter

CPU, RAM (mod nzbfasts hukommelsesbudget), diskskrivningshastighed og netværk på ét normaliseret diagram, med rigtige værdier i signaturforklaringen og en advarsel ved lav disk. Ingen anden NZB-klient viser dig dette; det findes for at bevise en pointe - nzbfast maksimerer din linje, ikke din maskine.

Pipeline - faser overlapper

Tre baner: download, verificér (PAR2-blokke tjekket), udpak. På et sundt job bevæger alle tre sig sammen.

Udbydere

Live-hastighed pr. server, forbindelsesudnyttelse, andel af trafikken, sessions-GB og en livstids-score for artikel-fuldførelse (farvet, når en server falder under 98%). Et stablet arealdiagram viser hver udbyders bidrag over tid. Rækker gensorteres efter live- ydelse hvert 10. s (kan konfigureres under Indstillinger → Grænseflade), så din hurtigste udbyder altid er øverst.

Gennemse indeks

Søg i alt, hvad den indbyggede indexer har katalogiseret fra dine overvågede grupper (se Automatisering) og hent med ét klik - ingen ekstern indexer nødvendig. Statuslinjen viser scanningsfremgang; Scan nu fremtvinger en gennemgang.

Overvågningsliste

Tilføj titler ved navn - også dem, der endnu ikke er postet. Når en matchende release dukker op i indekset, hentes den automatisk, med kvalitetspræferencer og opgraderingsregler (en bedre kopi erstatter en dårligere).

Historik

Seneste downloads med status, størrelse, placering; mislykkede jobs tilbyder Prøv igen (genoptager fra journalen). Krypterede arkiver viser en 🔑 lås-op-kontrol - indtast adgangskoden, og jobbet bliver færdigt på stedet. Verificerings-sundhedsstriben viser defekte PAR2- blokke pr. download - en stigende hale betyder, at artikler kommer beskadigede frem.

Dataforbrug

Daglige bjælker pr. udbyder og totaler for I dag / 7 dage / 30 dage - uundværligt for målte og blok-konti. Blok-konti viser livstidsforbrug mod deres størrelse.

Log, System-benchmark, Forbindelsestuning, Server-diversitet

En logfremviser på siden og de tre selvmålingsværktøjer beskrevet i Ydelsesværktøjer.

5 · Tilføj downloads

MetodeHvordan
Træk & slipSlip en eller flere .nzb-filer hvor som helst på dashboardet.
Watch-mappeVælg en mappe under Indstillinger; enhver .nzb, der gemmes i den, opfanges inden for 5 sekunder, og filen fjernes. Peg din browsers downloadmappe mod den for hentninger med ét klik fra indexer-sites.
Fra en URLIndsæt et NZB-link (API mode=addurl, eller via en tilsluttet app).
Gennemse indeksKlik på en hvilken som helst komplet release i Gennemse-kortet.
Overvågningsliste / RSSAutomatisk - se Automatisering.
Sonarr/Radarr osv.De sender hentninger direkte til køen - se §11.
Kommandolinjenzbfast get file.nzb henter uden daemonen.

Kategorier, prioriteter, adgangskoder

6 · Postervæggen

Klik på 🎬 væg i headeren. Væggen forvandler dit indeks til en medie- browser: hver genkendt film- og tv-release som en posterflise med bedømmelse, år, genrer, medvirkende og synopsis - dine newsgroups, til at gennemse som et katalog.

7 · Forhåndsvisning & verificering

Du behøver ikke vente på, at en download bliver færdig, for at vide, om det er den rigtige fil. Åbn den, mens den henter, tjek at indhold, sprog og kvalitet er som forventet, og annuller tidligt, hvis de ikke er - i stedet for først at opdage det efter hele downloaden.

Afspiller-noteVLC, IINA, mpv og Infuse åbner alle /stream-URL'er. For at kontrollere fra en anden maskine: brug din maskines LAN-adresse i stedet for localhost.
Godkendelses-noteMed en API-nøgle sat kræver det en pr.-job-token (?t=…) at åbne en parkeret biblioteks-post over /stream/<id> - afspillere kan ikke sende API-nøgler, så /m3u-overdragelsen og .strm-pegepinden indlejrer den for dig; at udstede den (/m3u) kræver nøglen. Ren byte-servering af en allerede aktiv download er fortsat åben, og nøglefri installationer opfører sig som før.

8 · Usenet-servere

Indstillinger → Usenet-servere er den fulde editor: tilføje, redigere, fjerne, omarrangere og tage enhver server ind i eller ud af puljen. Hver server har:

FeltNoter
Host / portBrug SSL-port 563. TLS koster intet måleligt - nzbfast krypterer altid.
Brugernavn / adgangskodeGemmes lokalt i config.local.json, vises aldrig tilbage til browseren. Lader du adgangskoden stå tom ved redigering, beholdes den gemte.
ForbindelserSamtidige forbindelser pr. server. Brug Forbindelsestuning (§13) til at finde hver udbyders bedste punkt frem for at gætte højt.
Niveau (tier)0 = primær; højere niveauer er fill-servere, der kun spørges om artikler, som alle lavere niveauer missede. Sæt ubegrænsede konti på 0, blok-konti på 1+.
Blokstørrelse (GB)Til blok-konti (betaling pr. GB): nzbfast holder styr på livstidsforbruget mod dette og holder op med at bruge serveren, når den er brugt op (advarsel ved 85%).

To yderligere indstillinger pr. server har endnu ingen betjening i dashboardet: skriv dem i hånden ved den servers post i config.local.json (se §17), og genstart.

NøgleNoter
bind_ipBinder denne servers udgående forbindelser til en bestemt lokal adresse, til maskiner med flere udgange og delte VPN-tunneler. Adressefamilien vælger samtidig målfamilien: en v4-binding forbinder til serverens v4-adresse.
socks5Sender denne servers NNTP-trafik gennem en SOCKS5-proxy: host:port, eller user:pass@host:port. Værtsnavnet slås op af proxyen, så der er intet lokalt DNS-læk.
AnbefalingTo udbydere på forskellige backbones slår tre på den samme. Kør Server-diversitet (§13) for at se, hvilke af dine udbydere der reelt spreder din dækning, og hvilke der er redundante kopier af hinanden.

9 · Indstillingsoversigt

Næsten alt kan indstilles fra dashboardet under ⚙ Indstillinger; de fire undtagelser står sidst i dette afsnit. Værdier mærket live gælder med det samme; restart-værdier ved næste opstart. Hver ændring, der foretages her, gemmes i settings.json og overlever genstart (værdier fra brugerfladen slår flag på kommandolinjen).

Hastighed & planlægning live

IndstillingHvad den gør
HastighedsgrænseLoft i bytes/sek. (50M, 1G, 0 = ubegrænset). Fjern-apps kan sende procenter - sæt Linjehastighed, så de oversættes korrekt.
Auto-hastighedRTT-styret loft, der viger for anden trafik i husstanden og udvider sig igen, når linjen er stille.
Udskyd langsomme downloads automatiskEt job, der hænger på én langsom server, mens andre venter, flyttes bagest i køen (fremgang beholdes). Se §13.
Prefetch på ledige servereServere, der er ubrugelige for det aktive job, starter det næste i køen. Se §13.
Auto-opdatering / URL til opdateringstjekSe §14.
LinjehastighedDin forbindelses angivne hastighed - muliggør procentvise grænser fra SABnzbd-kompatible apps.
UgeplanRækkeeditor til regler efter ugetidspunkt: pause, genoptag eller sæt en hastighedsgrænse på givne dage/tidspunkter (lokal tid). F.eks. begræns til 20 MB/s på hverdage 9–17, ubegrænset ellers.

Næste download live

Forbindelser (pr. server), vindue (pipelining-dybde pr. forbindelse), decodere (parallelle afkodningstråde). Aflæses, når hvert job starter. Standardværdierne passer til de fleste linjer; brug tuning-værktøjerne, før du hæver blindt.

Hurtig verificering (CRC32) (slået til som standard) gør krav på PAR2-blokke via CRC32, mens downloadet stadig kører, hvilket er 2-3x hurtigere på en langsom CPU. Hver artikels egen kontrolsum bliver stadig verificeret, og den afsluttende runde bruger altid fuld MD5: der gås ikke på kompromis med korrektheden. Fjern fluebenet for også at køre MD5 pr. blok under downloadet.

Disk & kvote live

Minimum fri plads (sæt nye jobs på pause under den), downloadkvote pr. dag eller måned (UTC; Tving-jobs omgår den), hukommelsesgrænse - motorens RAM-budget (standard: ¼ af RAM, med loft; hæv den på en maskine med meget RAM for maksimal hastighed på kæmpe jobs, og se hvad lav hukommelse koster, før du sænker den) genstart.

Flyt fuldførte til: efter udpakning, oprydning og omdøbning flyttes færdige downloads hertil - et NAS-share, et mediedrev, dér hvor dit bibliotek bor. Kategoristrukturen bevares (et job, der blev færdigt under tv/, lander under tv/ på destinationen), og historikken følger med flytningen, så tilsluttede apps importerer og sletter på den nye placering. Er destinationen utilgængelig, når et job bliver færdigt (share offline, ikke mere plads), bliver filerne i downloadmappen, og jobbet fuldføres alligevel helt normalt. Tom = fra. Destinationer pr. kategori sender bestemte kategorier et andet sted hen (tv=/Volumes/NAS/TV, movies=/Volumes/NAS/Movies); hver angivet sti er den kategoris mappe, så der oprettes ingen ekstra kategoriundermappe i den. Kategorier uden en regel følger Flyt fuldførte til.

Dybde for indlejrede arkiver (standard 5) er, hvor mange lag arkiv-i-arkiv der pakkes ud automatisk: et RAR-sæt med en 7z indeni, som igen indeholder en RAR, er normalt på Usenet, og nzbfast følger kæden uden en ekstra omgang. Ved grænsen bliver det dybeste arkiv simpelthen liggende, ikke pakket videre ud, og downloadet fuldføres alligevel. Hæv den kun til usædvanligt dybe udgivelser.

Auto-omdøbning & oprydning live

Omdøb færdige downloads (slået til som standard) giver mappen og hovedfilen et rent, sigende navn: en film bliver Example Movie (2024), serier beholder Show - S01E02. Slørede eller ukendte navne får lov at stå præcis som postet i stedet for at blive gættet.

IndstillingHvad den gør
Medtag opløsningSætter 1080p, 2160p… i navnet. Slået til som standard; de øvrige fire mærker er slået fra.
Medtag videocodecx265, x264, AV1
Medtag lydcodecAtmos, DTS-HD, AC3
Medtag kildeBluRay, WEB, REMUX
Medtag release-gruppeMærket -GROUP til sidst.
Fjern skraldefilerSlået til som standard. Sletter efterladte .par2, .nzb, .sfv, .nfo og sample-klip fra færdige film- og seriemapper. Aldrig videoen eller dens undertekster.
Behold kun mediefilenSlået fra som standard, og destruktiv: sletter permanent alt i mappen undtagen videoen (eller videoerne) og underteksterne. Hvert afsnit i en sæsonpakke bevares. Går forud for Fjern skraldefiler, når begge er slået til.

Hele gruppen kører efter reparation og udpakning og før Flyt fuldførte til, og springes helt over for et job, der stadig venter på en adgangskode. Begge sletttrin gælder kun udgivelser, der er genkendt som film eller serie: en softwarelast eller et sæt, der ikke kan klassificeres (sløret), bliver aldrig ryddet.

Mapper & behandling

Downloadmappe genstart, watch-mappe, efterbehandlingsscript (kører efter hvert job med SABnzbd-kompatible argumenter og SAB_*-miljø - eksisterende SAB-scripts virker uændret), oprydningsendelser (skraldfiler slettet efter fuldførelse), Smarte mapper og tv-arkivering (se §10).

Indeksering live

IndstillingHvad den gør
GrupperNewsgroups, som den indbyggede indexer scanner (f.eks. alt.binaries.teevee).
ScanningsintervalSekunder mellem gennemgange (standard 900).
Backfill-artiklerHeaders hentet ved en gruppes allerførste scanning.
Uddyb pr. scanningHver gennemgang indekserer også så mange ældre artikler og lader din søgbare historik vokse i baggrunden, indtil Maks-alder er nået (standard 200,000 pr. gennemgang ≈ titusinder af millioner artikler pr. døgns oppetid).
Maks-alderIgnorér poster ældre end dette (90d, 6m, 2y) - begrænser indeksstørrelse og scanningstid.
Beskær til aldersvinduetSlået til som standard. Sletter også allerede gemte udgivelser, når de bliver ældre end Maks. alder, så indekset holder omtrent det vindue i stedet for at vokse i det uendelige. Slået fra = kun nye poster filtreres, og det gemte bliver stående. Døde skraldefragmenter (skjulte, stadig ufuldstændige efter en uge) høstes under alle omstændigheder.
Ingest-filtreJSON-regler, der filtrerer, hvad der kommer ind i indekset: typer (obfuskeret skrald droppes som standard), år/opløsning/sprog, størrelsesgrænser.
Scan nu / dyb genscanningKør en gennemgang med det samme; med en dybde genscannes så mange nylige headers.
OMDb-nøgle / genopfrisk metadata / sletKontroller til væg-berigelse (§6). Slet genopbygger databasen fra bunden - genoprettelsesvejen, hvis den nogensinde bliver korrupt.

Bibliotek, Sikkerhed, Grænseflade

Bibliotek: kategorier behandlet som øjeblikkelige biblioteksposter + gentjek-interval. Sikkerhed: den fulde API-nøgle (alt) og NZB-nøglen (kun-tilføj - sikker at give til indexer-sites), begge kan roteres live. Grænseflade: kliklyde, skrivebords- notifikationer ved fuldførelse, interval for gensortering af udbydere.

Hastighedsenheder live afgør, hvordan hver hastighed vises i dashboardet: megabyte (MB/s, normen blandt downloadprogrammer, standarden) eller megabit (Mb/s, sådan som udbydere angiver linjer). Filstørrelser bliver i byte. Det er en egenskab ved daemonen, ikke ved din browser, så det gælder hver enhed, der kigger på denne installation.

Avanceret: indstillinger uden betjening i dashboardet

Fire indstillinger har hverken en betjening i brugerfladen eller et flag på kommandolinjen. Sæt dem via API'et (§16), f.eks. /api?mode=config&name=verify_mode&value=lean&apikey=…. Som alle andre gemmes de i settings.json.

NavnHvad den gør
verify_modefull | fast | lean (standard fast). lean er skubbet til langsomme CPU'er: som fast, men springer desuden yEnc-CRC pr. artikel over, så snart PAR2 dækker en fil, altså ét CRC32-lag i stedet for to. Downloads uden PAR2 beholder deres artikel-CRC'er, og verificering og reparation i slutningen af jobbet er uændrede i begge tilfælde. Hurtig verificering ovenfor er den samme betjening for full mod fast.
auto_retry_minsVentetid før det ene automatiske gentagne forsøg, som en første fejl med manglende artikler får (standard 20). Propagationsforsinkelse er en reel årsag til manglende artikler og løser sig selv; takket være journalen henter genkørslen kun det, der stadig mangler. Fejl på grund af adgangskode eller takedown kvalificerer sig aldrig.
index_scan_parHvor mange grupper indekseringen skanner parallelt (standard 3, begrænset til 1-8).
oracle_sampleTilgængelighedsoraklets STAT-budget i tomgang (§13), sonderinger i timen pr. server. Standard 300, maks. 3600, 0 slår sampling helt fra.

10 · Automatisering

Overvågningsliste

Den enkleste automatisering: tilføj en titel på dashboardet, sæt kvalitetspræferencer, færdig. Nye releases hentes, efterhånden som de dukker op i dine indekserede grupper; kopier af bedre kvalitet opgraderer tidligere hentninger; en kalendervisning viser, hvad der er på vej.

RSS-feeds

Indstillinger → RSS: enhver newznab-/indexer-RSS-URL med interval pr. feed, kategori og filterregler (titelmønstre, størrelsesgrænser). Matchende emner hentes automatisk.

Smarte mapper

Regler, der evalueres, når et job tilføjes: match efter mønster/nøgleord og størrelse, tildel en kategori (første match vinder). Med tv-arkivering slået til omdøbes og arkiveres færdige tv-episoder som Show/Season 01/Show - S01E02.mkv - klar til Plex/Jellyfin uden et eksternt værktøj.

Planlægger

Ugeplanen (se §9) automatiserer pause/genoptag/hastighed efter tidspunkt på dagen.

Scripts

Et efterbehandlingsscript modtager SABnzbds positionsargumenter og SAB_*-miljøvariabler - det store økosystem af SAB-scripts kører som det er.

11 · Sonarr, Radarr & venner

nzbfast taler SABnzbd-API'et native, så hvert *arr virker ud af boksen - og den kan også fungere som deres indexer.

Som downloadklient

  1. I Sonarr/Radarr: Settings → Download Clients → tilføj SABnzbd.
  2. Host: din nzbfast-maskine · Port: 6789 · API-nøgle: din fulde API-nøgle (Indstillinger → Sikkerhed; QR-/kopiér-kontrollen er ved siden af).
  3. Kategori efter ønske (f.eks. tv / movies). Test → grønt flueben → Gem.

Kø, historik, status pr. job, "fjern & slet", nyt forsøg og kategoridirigering opfører sig alle, som *arr-programmerne forventer.

Som en indexer (newznab)

  1. Settings → Indexers → tilføj Newznab.
  2. URL: http://<host>:6789/ · API-sti: /api · nøgle: din API-nøgle.
  3. nzbfast serverer caps-, search-, tvsearch- og movie-forespørgsler fra sit eget indeks over dine overvågede grupper, og /getnzb/<id> giver NZB'en tilbage.
Hvorfor bøvle med det?En selv-hostet indexer over præcis de grupper, du går op i: ingen konti, ingen grænser for API-kald, retention så dyb, som du lader den scanne.

12 · Telefon & fjernbetjenings-apps

nzbfast implementerer begge de store fjernbetjeningsprotokoller, så næsten alle mobil-/tablet-apps virker. Vælg den protokol, din app understøtter:

Apps, der taler NZBGet (nzb360, LunaSea, NZB Unity…)

Felt i app'enVærdi
TypeNZBGet
Host / portdin maskine : 6789
Brugernavnhvad som helst (f.eks. nzbfast)
Adgangskodedin API-nøgle

Hele den JSON-RPC-flade, disse apps bruger, serveres: status, kø med omorganisér/pause/slet, historik, tilføj-NZB, hastighedsgrænse, pause/genoptag, log.

Apps, der taler SABnzbd

Felt i app'enVærdi
TypeSABnzbd
Host / portdin maskine : 6789
API-nøgledin API-nøgle (eller NZB-nøglen for kun-tilføj-adgang)

Dashboardet på din telefon

Åbn bare http://<machine>:6789 i en mobilbrowser - hele dashboardet og væggen har et touch-layout. Panelet Indstillinger → Fjernadgang viser de præcise URL'er og en QR-kode til at scanne.

13 · Ydelsesværktøjer

System-benchmark

Ét klik måler dine tre lofter - netværksgennemløb (en rigtig 8-sekunders multi-forbindelses-sondering), CPU-verificeringshastighed og diskskrivningshastighed - og leder med svaret: din forventede maksimale downloadhastighed, og hvilket loft der er grænsen. Den korteste bjælke er din flaskehals; de andre viser deres reserve. Planlæg den (hver 6. time → ugentligt), og hver kørsel logges til en historiktabel, så du kan se, hvornår din udbyder, ISP eller hardware ændrede adfærd. Planlagte kørsler sker kun, mens køen er i tomgang.

Forbindelsestuning

Måler én udbyder ved stigende antal forbindelser og anbefaler indstillingen - flere sockets hjælper, indtil udbyderen eller din linje mættes, og nogle udbydere straffer, hvis man beder om for meget. Test alle sammenligner hver udbyder og lader dem så alle burste sammen for at tjekke, om poolen mætter din linje.

Server-diversitet

STAT-sampler artikler på tværs af aldre på hver server og klynger udbydere efter fælles huller: udbydere med ~100% fælles manglende artikler er den samme backbone (redundante til genoprettelse); uafhængige udvider reelt din dækning. Slutter med en anbefaling i klart sprog.

Automatisk kø-intelligens

Tilgængelighedsoraklet

Takedowns er den vigtigste grund til, at et Usenet-download slår fejl, og de kan forudsiges: den samme udgivelse forsvinder hos én backbone, mens en anden stadig har den. nzbfast fører et lille register over, hvad dine egne udbydere faktisk har leveret, og bruger et bittelille tomgangsbudget på STAT-sonderinger (nogle få hundrede i timen pr. server, aldrig under et download) for at holde det aktuelt. Den henter aldrig nyttelast for at finde ud af det.

Hvad du får ud af det:

Dommen er en forudsigelse ud fra indicier, ikke en garanti. For et håndfast svar om én NZB tæller nzbfast check (§15) de faktiske artikler.

Hukommelsesbudget - og hvad lav hukommelse koster

Alle motorens caches deler ét budget (standard ¼ af den fysiske RAM, begrænset til 256 MB–16 GB). Sæt det eksplicit med Hukommelsesgrænse under Indstillinger, eller --mem-limit på kommandolinjen.

nzbfast er bygget til at mætte dit netværk og din disk på samme tid, og RAM er det, der lader den gøre begge dele i ét gennemløb: artikler afkodes, verificeres og skrives direkte til deres endelige offsets, så arkivvolumener aldrig behøver at røre disken overhovedet. Sult den for hukommelse, og intet går i stykker - hver cache har en spill-vej, og motoren degraderer til mere disk-I/O frem for at swappe eller fejle. Men den spill er ikke gratis, og på store jobs kan du måle den.

Målt på én maskine og én linje (M1 Ultra, 10 GbE), samme filer ved hvert budget. Hver kørsel frembragte et korrekt, fuldt verificeret, udpakket resultat:

JobstørrelseRigeligt RAM2 GB-budget
≈ 8 GB-maskine
1 GB-budget
≈ 4 GB-maskine
256 MB-budget
≈ 2 GB-NAS
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%

Topforbruget følger budgettet, ikke jobbet: den 190 GB-download fuldføres i cirka 1.1 GB RAM. Det, du bytter for det, er tid - og kun på store jobs.

AnbefalingGiv nzbfast cirka 2 GB budget pr. 100 GB af det største job, du henter, og lad ellers standarden være - ¼ af RAM er allerede det rigtige svar på de fleste maskiner. I praksis: 4 GB RAM dækker jobs op til ~35 GB ved fuld hastighed; 8–16 GB holder også 100 GB-plus-jobs der; en 2 GB-NAS gør alt, du kaster efter den, færdigt, men behandl den som en baggrunds-downloader snarere end noget, der vil mætte en hurtig linje.

På en lille NAS: sænk også Forbindelser (2–4) sammen med budgettet. Ved et 256 MB-budget og 2 forbindelser holder topforbruget sig nær 190 MB - komfortabelt inden for, hvad en 2 GB-NAS har til overs. Vær opmærksom på, at det på det tidspunkt er antallet af forbindelser, ikke hukommelsen, der begrænser dig: samme 35 GB-job tog 286 s i stedet for 65 s. Det er den ærlige form på afvejningen - den bliver altid færdig, og færdig korrekt; den mætter bare ikke linjen.

Benchmarks køres igen for hver udgivelse; metode og tal pr. maskine offentliggøres sammen med resultaterne.

14 · Opdateringer

15 · Kommandolinje

Alt, hvad daemonen gør, kan også scriptes. De daglige kommandoer:

KommandoFormål
nzbfast setupInteraktiv serveropsætning.
nzbfast serveKør daemonen (dashboard + API + automatisering). --open åbner browseren; se --help for hele flag-listen - hver dashboard-indstilling har en flag-tvilling.
nzbfast get file.nzbHent én NZB, fuld pipeline, ingen daemon. --preflight afbryder tidligt, hvis posten ikke kan fuldføres; --password til krypterede sæt.
nzbfast check file.nzbTilgængeligheds-dom - COMPLETE / REPAIRABLE / IMPOSSIBLE - uden at hente payload.
nzbfast verify DIRVerificér filer mod PAR2-sættet i en mappe.
nzbfast sysbenchSystem-benchmarken + diversitetsrapporten, i terminalen.
nzbfast index / searchScan grupper ind i indekset / søg i det, uden daemonen.
nzbfast import-sabImportér servere fra en SABnzbd-ini.

Også tilgængelige: inspect, probe, bench, bench-cpu, soak, fetch, spots/spot-search/spot-get (Spotnet), make-release-nzb/make-test-nzb (test-fixtures). Hver kommando tager --config og --help. Dertil kommer post: den uploader filer som yEnc-artikler og skriver den tilhørende NZB. Et driftsværktøj; det kræver et udtrykkeligt --post-server og vælger aldrig en server for dig.

16 · API-oversigt

Basis-endpoint: http://host:6789/api?mode=…&apikey=…&output=json - SABnzbd-kompatibelt, så eksisterende SAB-integrationer virker uændret. To nøgler: API-nøglen (fuld kontrol) og NZB-nøglen (kun-tilføj: addfile/addurl).

OmrådeModes
queue (med name=delete/pause/resume/priority/switch), pause, resume, addfile, addurl, retry, set_password
Infohistory, status/fullstatus, stats, version, server_stats, usage, log, warnings
Konfigurationget_config, config&name=<setting>&value=… (hvert Indstillinger-felt), server_save/delete/test/enable/reorder, import_probe/apply
Indeks & vægindex_search, index_get, index_stats, index_scan_now, wall, wall_search/fix/refresh/art, plus newznab på /api?t=caps|search|tvsearch|movie og /getnzb/<id>
Automatiseringwatchlist, watchlist_check_now, watch_calendar, feeds, smart_folders, schedule
Diagnostiksysbench, bench_history, connladder, pooltest, diversity, update_check, update_apply
NZBGet JSON-RPC/jsonrpc - status, listgroups, history, append, editqueue, rate, pause, log (Basic auth: enhver bruger, API-nøgle som adgangskode)
Forhåndsvisning / afspilning/stream/<nzo_id> (HTTP-ranges; at starte et parkeret biblioteksjob kræver ?t=-token eller nøgle), /m3u/<id> (kræver nøgle; udsteder token'en), /wall, /art/…

17 · Filer & placeringer

FilIndhold
config.local.jsonServer-loginoplysninger og indstillinger pr. server. Oprettet af guiden; kan redigeres under Indstillinger. Hold den privat.
settings.jsonHver indstilling, der er ændret i dashboardet. Ligger ved siden af konfigurationen; UI-værdier tilsidesætter kommandolinje-flag. Slet en nøgle (eller filen) for at falde tilbage til flag/standarder.
index.dbRelease-indekset (SQLite) + væg-metadata. Sikkert at slette - det genopbygges ved scanning (Indstillinger → Indeksering → Slet gør dette for dig).
<config>/.spool/Kø-tilstand (overlever genstarter), NZB'er pr. job, forbrugsregnskab, benchmark-historik, poster-artwork-cache.
Artikel-journalInde i hvert jobs outputmappe, mens det er ufuldstændigt - driver crash-genoptagelse og nyt forsøg. Fjernes ved succes.
Eksterne værktøjerIngen nødvendige - RAR-udpakning og PAR2-reparation er native. Hvis et eksotisk sæt nogensinde kræver en ekstern unrar eller par2 som fallback, kigger nzbfast ved siden af sin eksekverbare fil, derefter på $PATH.

18 · Fejlfinding

SymptomTjek
Langsomme downloadsKør System-benchmark - den udpeger flaskehalsen direkte. Er det netværket: kør Forbindelsestuning, tjek antal forbindelser pr. server, og bekræft, at dine udbydere ikke alle er én backbone (Server-diversitet).
Langsom kun på meget store jobs
(NAS eller maskine med lidt RAM)
Forventet og måleligt: et udsultet hukommelsesbudget spiller caches til disk og koster 20–40% efter ~87 GB. Se Hukommelsesbudget for tallene og hvor meget RAM, den skal have. Mindre jobs er upåvirkede.
Download fejler med "articles missing"Posten er udløbet eller blev fjernet hos dine udbydere. En anden udbyder på en anden backbone redder de fleste af disse. nzbfast check forudsiger dette før download. Og væggen markerer på forhånd de sandsynligt forsvundne med sin tilgængelighedsprik (§13). En første fejl af den type prøver sig selv igen én gang efter en ventetid, for propagationsforsinkelse ser præcis sådan ud og løser sig selv.
Færdigt arkiv vil have en adgangskodeHistorik-rækken viser 🔑 - indtast adgangskoden der; jobbet bliver færdigt på stedet.
Sonarr/Radarr kan ikke forbindeKan port 6789 nås? API-nøgle korrekt (fuld nøgle, ikke NZB-nøgle)? Klienttype sat til SABnzbd?
Gennemse-kortet forbliver lilleIndexeren vokser i baggrunden - tjek, at grupper er sat under Indstillinger → Indeksering, og giv Uddyb pr. scanning tid til at opbygge historik. "Scan nu" fremtvinger en gennemgang; statuslinjen viser live fremgang.
Væggen viser forkert/intet artworkDetaljeark → ✎ Ret match eller ↻ Genopfrisk metadata. Filmopslag forbedres med en gratis OMDb-nøgle.
Daemonen vil ikke starte: porten er i brugEn anden instans kører - eller skift --port.
Hvor er loggene?Log-kortet på dashboardet, eller den terminal/logfil, du startede serve med.
Stadig gået i stå?Log-kortet udpeger som regel synderen - vedlæg dens hale, når du rapporterer et problem, sammen med din nzbfast --version.

nzbfast - denne manual følger med hver udgivelse. Indstillinger, endpoints og standarder, der er nævnt her, svarer til den version, den blev leveret med.