⚡ 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-<version>-windows-x64-setup.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.

Velkomstkortet spørger også, hvordan du har tænkt dig at bruge nzbfast, med fire svar: en app som Sonarr eller Radarr styrer den, skifter fra SABnzbd, skifter fra NZBGet, eller bare dig, fra dette dashboard. At vælge et ændrer ingenting i sig selv. Det viser en kort gennemgangsliste - hver anbefaling med indstillingens eget navn, dens nuværende værdi, den anbefalede værdi og én linje om hvorfor - og Anvend sætter kun de rækker, du sætter flueben ved. Hver række er en almindelig indstilling, du bagefter kan ændre tilbage for sig selv, og den samme liste er senere stadig tilgængelig under Indstillinger → Anbefalede indstillinger til den måde, du bruger den på.

Din API-nøgle

På en helt ny installation laver nzbfast selv en API-nøgle, første gang daemonen starter, og skriver den ud én gang i et banner lige under dashboardets adresse. Fra da af kræver hver forespørgsel den nøgle, så dashboardet og API'et ikke står åbne for alt, hvad der kan nå maskinen.

Hvad du skal gøre med den, afhænger af, hvordan du startede nzbfast:

Nøglen gemmes i en fil ved navn apikey ved siden af din konfigurationsfil, så den er den samme på tværs af genstarter, og du kan læse den igen, når du har brug for det. På macOS og Linux kan den fil kun læses af den konto, der kører nzbfast. Den står også i daemonens egen udskrift, så dashboardets Log-kort har den, hvis terminalen er rullet væk.

Opgradering ændrer intet.En installation, der allerede findes, bliver præcis, som den var, med eller uden nøgle. En nøgle bliver kun nogensinde lavet ved en første kørsel - en uden dashboard-indstillinger og uden gemt kø - fordi en nøgle, der dukkede op under en fungerende installation, ville lukke hver eneste Sonarr, Radarr og telefon-app, du allerede havde forbundet, ude ved en genstart, som du aldrig koblede sammen med en ændret indstilling.

Vil du hellere bruge din egen nøgle, skriver du den ind under Indstillinger → Sikkerhed; den træder i kraft med det samme. Det panel ændrer nøglen, men viser aldrig den nuværende, så læs filen apikey, hvis du har brug for den genererede værdi igen. Vil du køre helt uden nøgle, fordi noget foran nzbfast allerede håndterer login, så start den med NZBFAST_OPEN=1 i miljøet. nzbfast forbliver så åben og siger det ligeud ved opstart.

Hvilke maskiner der overhovedet kan nå daemonen, er et separat valg: serve --bind. Standarden er 0.0.0.0, altså hver eneste netværksgrænseflade, fordi en NAS-boks, en telefon og en Sonarr på en anden computer alle skal kunne forbinde. --bind 127.0.0.1 indsnævrer det til den maskine, nzbfast kører på, hvilket er det, du vil have på en enkelt stationær computer, hvor intet andet har brug for adgang.

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).

Kortet kan også følge en liste, du har i Plex. Tilføj en listekilde: forbind enten din Plex-konto (du godkender en kort kode på Plex' egen side, så ingen adgangskode nogensinde når nzbfast), eller indsæt adressen på din Plex-overvågningsliste. Behandl den adresse som en adgangskode - enhver, der har den, kan læse din liste - og derfor maskeres den, når den er gemt. Synkroniserede titler vises som skrivebeskyttede rækker ved siden af dine egne. En forbundet konto ser hele din liste, så fjerner du en titel dér, overvåges den heller ikke længere her (færdige downloads røres aldrig); en adresse viser kun de nyeste poster, så en manglende titel kan simpelthen være rullet ud, og intet fjernes. Begge adfærd kan slås om pr. kilde.

Historik

Seneste downloads, én række hver. 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. Hver rækkes skuffe fortæller, hvem der tilføjede jobbet, og har den samme Hent .nzb-filen-knap som køen - praktisk til at hente en release igen et andet sted, eller til at vedhæfte dens .nzb til en fejlrapport.

Kortet viser ti downloads som standard, og resten er ét klik væk, på knappen ▤. Status, placering og årsagen til et fejlet job ligger bag et klik på selve rækken, så det almindelige tilfælde - hvad der blev færdigt, hvor stort, hvornår - forbliver læsbart uden at scrolle. Træk i kortets nederste kant for i stedet at lade listen scrolle i en højde, du selv vælger. History rows under Indstillinger → Grænseflade ændrer de ti; da det er en egenskab ved daemonen og ikke ved din browser, gælder det enhver enhed, der kigger på denne installation. Colour History names ved siden af farver færdige navne grønne og fejlede røde; slået fra forbliver navnene neutrale, og den farvede prik og rækkens egne detaljer siger stadig, hvad der er hvad.

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.

Indret dashboardet

Dashboardet er dit at indrette. Fire handlinger, med samme navn hvor du end møder dem: Flyt et kort, gør det Kompakt, Skift størrelse på det eller Skjul det. Hvert valg husker den browser, du traf det i, så hver enhed beholder sin egen indretning, og Nulstil layout under Indstillinger → Grænseflade sætter hvert kort, hver størrelse og hver kolonne tilbage, som de blev leveret.

Tilpas layout er den guidede vej ind og den hurtigste måde at se, hvad et kort kan. Åbn det fra det diskrete link lige over det første kort eller fra Indstillinger → Grænseflade, hvor det er den første knap i rækken Dashboard-layout. Mens det er slået til, har hvert kort, der kan flyttes, en kant, de tre værktøjer i titelrækken tegnes i fuld styrke med deres ord ved siden af ikonet, og hver størrelseslinje tegnes i accentfarven; et kort uden linje siger hvorfor på sin egen linje i stedet for at lade dig lede efter en. Færdig eller Escape-tasten forlader det. Tilstanden er en måde at se siden på og ikke en indstilling: den ændrer ingenting ved din indretning, og efter en genindlæsning er den slået fra igen.

På et dashboard, ingen har indrettet endnu, siger en linje over kortene, at de kan flyttes, ændres i størrelse, gøres kompakte eller skjules, og peger på det link. Den vises én gang: Forstået lukker den, og det gør det også at åbne tilstanden eller at indrette noget som helst.

Højreklik på et korts titel for de samme handlinger i én liste: Flyt op, Flyt ned, Kompakt, Skift størrelse og Skjul, plus en vej ind i Tilpas layout, når du ikke allerede er der. Skift størrelse tilbydes kun på et kort, der har en linje at trække i. Flyt op og Flyt ned bliver grå ved enderne, og de tæller kun de kort, du kan se: et skjult kort springes over, så første og sidste betyder første og sidste synlige.

Den menu er en tastaturvej lige så vel som en musevej. Tabulér hen til et korts flyttehåndtag, tryk på Kontekstmenu-tasten eller Skift+F10, og den åbner under overskriften. Pilene op og ned går gennem den og springer alt gråt over; Escape lukker den og giver fokus tilbage til håndtaget, du åbnede den fra. At vælge Skift størrelse giver fokus til kortets linje, hvor pilene op og ned sætter højden, og Skift tager et større skridt.

Escape lukker altid kun det øverste lag. At lukke kortmenuen, mens tilstanden er slået til, lader tilstanden blive; et andet Escape forlader tilstanden.

Dashboard-kort under Indstillinger → Grænseflade giver den samme indretning som en almindelig liste med kontroller: et felt Vis per kort, et felt Kompakt ved siden af og knapperne Flyt op og Flyt ned. På en telefon, en tablet eller ethvert smalt vindue er kortværktøjerne og trækket slået fra, for at trække et kort rundt på en side, der ruller under fingeren, er en dårlig kontrol: dér er det denne liste, der indretter dashboardet. Den skriver det, skrivebordet læser, så en rækkefølge, du sætter på telefonen, er den, skrivebordet viser. Dens knapper følger menuens regel: de bliver grå ved enderne af de synlige kort, og et kort, du har skjult, kan ikke flyttes, før du viser det igen.

Tabelkolonner ordnes på stedet og ikke fra noget af ovenstående. I tabellerne for køen, historikken og indekset trækker du en kolonneoverskrift sidelæns for at flytte kolonnen, eller dens bageste kant for at ændre bredden; et dobbeltklik på kanten stiller bredderne tilbage. Med en overskrift i fokus flytter venstre- og højrepilen den, og Skift med en pil ændrer bredden.

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 flyttes til papirkurven, og et åbent dashboard melder hver afhentning ved navn ("… hentet fra Downloads"), så en fil, der forlader mappen, aldrig er et mysterium. Vil du hellere beholde dine filer? Slå Behold .nzb-filer efter afhentning til (se §9). 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).
nzblnk:-linksIndsæt et nzblnk:-link hvor som helst på dashboardet, eller træk det ind. Har du installeret fra macOS-DMG'en eller Windows-installationsprogrammet, kan du også klikke på et direkte på et board. Se nzblnk-links nedenfor.
Gennemse indeksKlik på en hvilken som helst komplet release i Gennemse-kortet.
Søg på indeksereSøg på de indekser-konti, du har tilføjet, og sæt et resultat i kø direkte fra listen. Se Søg på dine indekser-konti længere nede.
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

Søg på dine indekser-konti

Har du en konto hos et NZB-indekserwebsted, kan nzbfast søge der herfra og sætte det, du vælger, i kø, i stedet for at du skal gå til webstedet, hente en NZB og bære den tilbage. Det taler det almindelige indekser-API, som alle de websteder tilbyder, så der er ikke noget at sætte op pr. websted: NZBGeek, NZBFinder, DrunkenSlug, DOGnzb og resten virker ens. En Prowlarr- eller NZBHydra2-instans er også kun én linje, og tager alle de indeksere, der ligger bag den, med sig.

Tilføj en konto. Indstillinger → Søg på indeksere → + Tilføj indekser. Udfyld et navn efter eget valg, webstedets API-adresse (dets almindelige webadresse er nok; en Prowlarr-linje ser ud som http://host:9696/1/api) og API-nøglen fra din kontoside der, og derefter Anvend indeksere. Test spørger webstedet, hvad det understøtter, og viser, hvad der kom tilbage, hvilket beviser adressen og nøglen med ét klik. En gemt nøgle vises aldrig igen: feltet siger det, og lader du det stå tomt, beholdes den nøgle, der allerede er der.

At søge. Åbn 🎬 væggen i overskriftslinjen, og skift til release-listen. Rullemenuen ved siden af søgefeltet afgør, hvor en søgning kigger: Dette indeks, altså det, denne maskine selv har skannet, Indeksere eller Begge. Dit valg huskes. At spørge dine konti kræver noget i feltet, for at blade i dem med en tom forespørgsel ville bruge et døgns tildeling på en liste, ingen bad om. Med den indbyggede indekser slået fra, hvilket er sådan nzbfast kommer, er der ingen plakater at vise, og siden er præcis dette: et søgefelt, dine konti og resultaterne.

Resultaterne. Én linje pr. release, de nyeste først, med størrelse, alder og hvor ofte den indeksers egne brugere har hentet den. En release, som flere af dine konti fører, optræder én gang. Under Begge vinder en kopi, dit eget indeks allerede har, og den udefra falder væk, for at hente det, du allerede har indekseret, koster dig ikke noget. Hent sætter den i kø med høj prioritet: nzbfast henter selv NZB'en, og derfra er jobbet som ethvert andet, med reparation, udpakning, kategorier og scripts uændret.

At spørge om én titel. Åbn en titels kort på væggen, og tryk på ⌕ Søg på mine indeksere. For film går spørgsmålet via IMDb-nummeret alle de steder, webstedet tager imod et, og det er forskellen på den film, du mente, og enhver release, hvis navn tilfældigvis indeholder de ord. nzbfast slår selv nummeret op, så siden har aldrig et. Websteder uden match på nummer bliver spurgt med ord i stedet.

Din tildeling. Indekser-konti tælles: så og så mange søgninger og så og så mange downloads om dagen, alt efter dit niveau. Skriv de to tal på linjen, så trækker nzbfast fra dem og begynder forfra ved midnat UTC. 0, standardværdien, betyder ubegrænset, og der tælles alligevel. En konto, der har brugt sin tildeling, sidder over, mens de andre arbejder, og en linje over resultaterne nævner den, der blev sprunget over: at løbe tør er aldrig tavst. Et websted, der svarer med en grænse af sin egen, eller beder os sætte farten ned, sættes til side i en time.

Hvor din nøgle havner. Kun hos den indekser, den hører til. Nøgler bliver på denne maskine, gives aldrig til browseren - hver resultatlinje bærer en billet, der gælder en halv time, i stedet for et link - og fjernes fra loggen og fra enhver fejl, webstedet sender tilbage, så en indsat fejlmeddelelse ikke kan lække en. En download kan kun hente et link, som en af dine egne søgninger gav.

Det er de samme konti, som et nzblnk-link falder tilbage på, når det lokale indeks ikke kender dets hoved, og dem, overvågningslisten kan spørge om det, du vil have (§10).

nzblnk-links

Nogle boards, mest tyske og hollandske, udgiver et nzblnk:-link i stedet for en NZB-fil. Indlægget er sløret, så der er slet ikke noget filnavn at linke til. Linket bærer i stedet et header, h=, som er en søgenøgle og ikke et sted, plus en valgfri titel t=, en adgangskode p= og en gruppe g=. Nogen skal først ud og finde indlægget.

nzbfast slår headeren op i sit eget indeks først, hvilket slet ikke kræver netværk, og kun hvis det ikke rammer, spørger den de søgeindeksere, du har sat op (Indstillinger → Søg på indeksere, §9), under de samme dagsbudgetter og den samme backoff som enhver anden søgning. Titlen bliver jobbets navn, og adgangskoden lægges automatisk på jobbet.

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.

Den første halvdel af det står allerede på siden. Åbn en downloads række i køen (eller i historikken), så viser skuffen, hvad der er inde i videofilen, læst ud af de bytes, der er ankommet indtil nu: opløsning, video- og lydcodecs, lydsprog, undertekster, kapitler. En release, der er den forkerte version, det forkerte sprog eller en opskalering, afslører sig selv i det panel, længe før downloaden er færdig.

Siden finder også ud af, om denne browser kan afspille filen, og siger det i stedet for at gætte: browsere er forskellige (Safari afkoder HEVC, hvor Chrome ikke gør, og næsten ingen afkoder AC-3- eller DTS-lyd), så spørgsmålet stilles til den browser, du faktisk sidder i. Når svaret er ja, åbner ▶ Afspil en afspiller direkte på siden, som viser filen, mens den hentes. De fleste udgivelser er MKV, som mange browsere nægter at åbne, selv om de kan afkode alt indeni, så nzbfast pakker dem om, mens de afspilles. Intet bliver kodet om: billede og lyd er de oprindelige bytes i en anden indpakning, og at springe til et andet sted virker stadig. Er lydsporet et, som denne browser ikke kan afkode, og bærer udgivelsen et andet, som den kan, er det det andet spor, der afspilles, så billedet ikke kommer stumt. Først når browseren mangler afkoderen til selve videoen, giver knappen filen videre til din egen medieafspiller, som beskrevet nedenfor.

Én indstilling styrer det hele: Indstillinger → Grænseflade → Tjek en fil, mens den henter. Kun detaljer, standarden, viser panelet og tilbyder ingen afspiller på siden; Detaljer og en afspiller tilføjer afspilleren; Fra standser al læsning af filen - med den slået fra åbner intet en halvt hentet fil for nogen.

For i stedet at tjekke i din egen medieafspiller:

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. Adgangskoder er sløret på disken, ikke krypteret.
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%).
Hver byte faktureresSlå til for en konto med målt forbrug. Dine downloads bruger serveren præcis som før; det, der stopper, er, at nzbfast sender den trafik på egen hånd - den automatiske forbindelsestuner, systemtestens netværksdel og header-scanninger til det indbyggede indeks springer den alle over. Uafhængig af niveauet og af blokstørrelsen, for en målt konto kan være din eneste udbyder, og en ubegrænset kan stå på niveau 2. Slået fra som standard. Den manuelle Test i Forbindelsestuning (§13) virker stadig på en markeret server og spørger først, for dér er det dig, der vælger at bruge penge.

Lad der være lidt luft under kontoens forbindelsesgrænse. At sætte forbindelserne lidt under grænsen koster ingenting: gennemløbet flader ud længe før de sidste en eller to forbindelser, og Forbindelsestuning (§13) lander alligevel under. Det er de ledige pladser, der lader en anden enhed, et andet program eller et nyt forsøg efter en afbrudt socket komme ind alligevel i stedet for at blive afvist, mens denne her optager hver eneste plads.

Du behøver ikke holde styr på maskinens grænse for åbne filer. Systemet tæller hver forbindelse som en åben fil, og macOS starter et program med en grænse på 256 af dem, som et fuldt sæt forbindelser fordelt på flere servere kan passere. På macOS og Linux hæver nzbfast selv den grænse ved opstart: det beder om 65536 åbne filer og går ned gennem 16384, 4096 og 1024, indtil systemet siger ja, aldrig over den hårde grænse systemet sætter, og det kører videre med den grænse, det havde, hvis hvert trin bliver afvist. Windows har ingen grænse af den slags pr. proces. Andre programmer tager den grænse, skallen gav dem, og et program, der løber tør for åbne filer midt i et job, kan stoppe uden at skrive hvorfor i sin log. Sæt derfor forbindelserne pr. server efter, hvad dit abonnement tillader, minus luften ovenfor, og ikke efter hvad du tror maskinen kan holde til.

Sådan gemmes dine udbyderadgangskoder

Udbyderadgangskoder i config.local.json er sløret, ikke krypteret. De gemmes som obf1: efterfulgt af en kodet form, så filen ikke læses som ren tekst, hvis den dukker op i et skærmbillede, et forumindlæg, en fejlrapport eller på en skærm, en anden kan se.

Lad os være tydelige om, hvad det giver dig, og hvad det ikke giver:

Til sammenligning gemmer NZBGet og SABnzbd begge udbyderadgangskoder som læsbar ren tekst i deres konfigurationsfiler. Vi mener, at sløring er en lille forbedring oven på det, ikke en sikkerhedsfunktion.

Hvorfor ikke systemets nøglering? macOS Keychain, Windows Credential Manager og Linux' secret services ville give ægte beskyttelse, og vi vender måske tilbage til det. To ting stopper os i dag. Adgang til nøgleringen hænger på programmets identitet, og nzbfast er endnu ikke kodesigneret, så dialogerne og opførslen efter hver opdatering er dårlige. Og en stor del af installationerne er Docker, servere uden skærm og NAS-kasser, hvor der slet ikke findes en nøglering, hvilket ville efterlade to forskellige lagringsveje at holde korrekte. Ét velforstået format, der opfører sig ens alle steder, er indtil videre den bedre handel.

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.

Kontrol under download vælger, hvor meget der verificeres, mens data kommer ind. Fuld bekræfter hver PAR2-blok med MD5. Hurtig (standard) gør krav på blokke via CRC32, hvilket er 2-3x hurtigere på en langsom CPU, og verificerer stadig hver artikels egen kontrolsum. Let springer desuden de artikelkontrolsummer over, så snart PAR2 dækker en fil: skaden dukker så op et øjeblik senere, ved sin blok. I alle tre bruger den afsluttende runde og enhver reparation fuld MD5, og et download uden PAR2-filer beholder sine artikelkontrolsummer.

Disk & kvote live

Minimum fri plads (sæt nye jobs på pause under den; 2 GB som standard, 0 slår det fra), 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.
Navngiv downloads efter .nzb-filenSlået fra som standard. Den færdige mappe og dens hovedfil tager navnet fra .nzb-filen i stedet for det ryddede navn, der er regnet ud fra releasen. Kun den største fil omdøbes: resten af en episodepakke, samplen, underteksterne og .nfo-filen beholder de navne, de ankom med. Enhver kategori kan tillade eller afvise det for sig selv under Dine kategorier, og det er sådan, du får det for én slags download og ikke en anden.
Keep the other words in the nameSlået til som standard. Sport, løb og andre begivenheder er ofte én og samme titel gentaget hele sæsonen, kun et ord eller to fra hinanden - "Round11 Hungary Race" over for "Round11 Hungary Qualifying". At beholde de ord er det, der forhindrer en hel sæson i at falde sammen til samme navn. Gælder kun, hvor navnet ikke kunne ryddes op på anden vis, så almindelige film og afsnit røres ikke.

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.

Slettede filer ryger i papirkurven afgør, hvad "slette" betyder ovenfor. Slået til flytter oprydningen filer til systemets papirkurv, så et forkert gæt om, hvad der var skrald, kan fortrydes; slået fra slettes de med det samme. Den er slået til som standard på macOS og Windows, hvor papirkurven er et sted, du kan se og tømme, og slået fra som standard på Linux, hvor den som regel ikke er det.

På en NAS eller i en container: lad den være slået fra. Når dine downloads ligger på en anden disk end din hjemmemappe - hvilket er det normale setup på Unraid, Synology, en seedbox eller enhver Docker-installation med et monteret share - bruger Linux' papirkurvsregler slet ikke nogen skrivebordspapirkurv. De opretter en skjult mappe .Trash-1000 (tallet er dit bruger-id) øverst på downloaddisken og flytter filerne derhen i stedet. Intet viser dig den mappe, intet tømmer den, og pladsen, den holder på, kommer aldrig tilbage.

Har du kørt en tidligere version af nzbfast på Linux med den slået til, så kig efter den mappe i roden af dit download-share. Den er sikker at tømme: alt i den er filer, en oprydning allerede har afgjort, at du ikke ville have. nzbfast tømmer den ikke for dig, for den ligger på din disk, og det er dig, der dømmer.

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).

Behold .nzb-filer efter afhentning (slået fra som standard) lader den originale .nzb blive i watch-mappen, efter den er sat i kø, i stedet for at flytte den til papirkurven - for samlere, og til at give filen videre, når en download driller. En beholdt fil huskes, også på tværs af genstarter, og sættes ikke i kø igen; gem den igen for at hente den på ny. Uanset hvad du vælger, har hvert jobs skuffe en Hent .nzb-filen-knap, så en kopi af ethvert jobs .nzb aldrig er mere end et klik væk.

Søg på indeksere live

Dine konti hos NZB-indekserwebsteder, én linje hver, så en søgning på væggen også kan spørge dem. Hvad funktionen gør, og hvordan man søger med den, står i §5.

FeltHvad det gør
NavnEn etiket efter eget valg, og den identitet, dagens tællere og grænser føres under. At omdøbe en linje begynder en ny linje, så indtast nøglen igen.
API-adresseWebstedets API-adresse. Dets almindelige webadresse er nok; en Prowlarr- eller NZBHydra2-linje ser ud som http://host:9696/1/api.
API-nøgleFra din kontoside på det websted. Bliver på denne maskine, sendes kun til det websted, den hører til, vises aldrig igen og skrives aldrig i loggen. Tom beholder den gemte.
Søgninger om dagenHvor mange søgninger denne konto må bruge om dagen. 0 = ubegrænset, og standard.
Downloads om dagenHvor mange hentninger den må bruge om dagen. 0 = ubegrænset. Begge tællere begynder forfra ved midnat UTC.
til, Testtil er det, der gør en linje søgbar; fjern fluebenet for at beholde en konto uden at bruge den. Test spørger webstedet, hvad det understøtter, og viser svaret, eller fejlen, på stedet.

Indeksering live

Den indbyggede indekser er slået fra som standard. Den finder indlæg, der er postet under et rigtigt filnavn, og en stor og voksende del af Usenet postes bevidst uden et: tilfældigt emne, tilfældige filnavne indeni, smidt i en samlegruppe. Det rigtige navn lever kun i en NZB, som uploaderen udgiver et andet sted, så det var aldrig på Usenet, hvor en skanner kunne læse det. Målt på vores eget indeks gav 14,8 millioner skannede indlæg omkring 31.000 gennemsøgelige releases, groft sagt én ud af fem hundrede. Bliv ved med at bruge kommercielle indeksere, og tilføj dem under Indstillinger → Søg på indeksere, så du kan søge i dem fra væggen. Slå det her til, hvis du følger bestemte grupper, hvor folk stadig poster under rigtige navne, eller hvis du vil se, hvad din udbyder faktisk fører. Med kontakten slået fra skannes eller hentes ingenting, og der oprettes ingen database; Gennemse og newznab-feedet forsvinder, væggen bliver en almindelig søgeside for de indekser-konti, du har tilføjet, og overvågningslisten arbejder på de konti i stedet.
IndstillingHvad den gør
Indbygget indekserHovedkontakten, slået fra medmindre du slår den til. Fra betyder ingen skanning, ingen metadataopslag, ingen tilgængelighedsstikprøver og intet newznab-feed; et indeks, der allerede ligger på disken, bevares (der er en sletteknap), så at slå til igen fortsætter i stedet for at skanne forfra.
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.
Pre-feedSlået fra, indtil du slår det til. Mange uploads udgives uden deres navn, og så har en skanning intet at læse. Offentlige relækanaler annoncerer det rigtige navn, den eneste åbne vej til at parre de indlæg. At slå til holder en forbindelse til et IRC-net åben og lytter: der sendes aldrig noget, og der oprettes ingen konto. Kræver at indekseringen er slået til, for et feed uden et sted at lægge det, det hører, er bare en socket, der står åben til ingen nytte.
Relæserver, RelækanalerIRC-nettet, der bærer annonceringerne (vært eller vært:port), og kanalerne at lytte med i, kommasepareret. En ændring træder i kraft ved næste forbindelse: slå feedet fra og til igen for at anvende den straks.
Navngiv ved korrelationDe offentlige direkte relæer bærer ingen filnavne, så de fleste sløre indlæg kan ikke parres direkte. Hvad en annoncering derimod fastslår, er hvornår en udgivelse dukkede op, og hvor stor den er. Dette sammenligner annonceret tid og størrelse med navnløse indlæg og foreslår, når de passer, det rigtige navn under Gennemse. Et forslag er markeret som et forslag, kræver dit klik og omdøber aldrig filer på disken.
Anvend stærke match automatiskSlået fra som standard, og streng når den er til: størrelsen skal passe tæt, ingen anden annoncering må passe næsten lige så godt, og annonceringen skal vælge dette indlæg tilbage ved kontrollen den anden vej. Et anvendt navn ændrer kun, hvordan udgivelsen vises, er markeret som udledt og trækker sig selv tilbage, hvis en færdig download modbeviser det. Alt svagere forbliver et forslag.
AnnonceringshistorikDet direkte feed hører kun annonceringer fra efter det blev slået til. Dette henter cirka seks måneders tidligere annonceringer fra en offentlig pre-database, høfligt og én gang, så også allerede indekserede indlæg kan parres. Kører en halv times tid i baggrunden.

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. Hvert af felterne erstatter den nøgle, det hører til, så snart du forlader feltet, og lader du et felt stå tomt, beholder det den nøgle, det allerede har. API-nøglen har desuden Show, som viser og kopierer den nuværende nøgle, så du kan sætte den ind i Sonarr, Radarr eller NZB360, når det passer dig, og Create new, som laver en afløser - den gamle nøgle holder op med at virke med det samme, så alt, der allerede er forbundet, skal have den nye. Begge afhænger af selve API-nøglen: den kun-tilføjende NZB-nøgle kan ikke læse den, hvilket er hele pointen med den nøgle. Hvor nøglen kommer fra på en ny installation, se §2. 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: knapperne bag de indlysende

Seks indstillinger uden flag på kommandolinjen. Hver har nu en avanceret række på det indstillingskort, den hører til, og kan stadig sættes 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. Vælgeren Kontrol under download ovenfor er denne indstilling.
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.
predb_max_rowsHvor mange pre-annonceringer feed-tabellen beholder (standard 250000, begrænset til 10000-5000000). Den timelige beskæring skærer ned til det tal, og den historiske import nægter at starte, hvis den ville gå forbi det, så en import aldrig tilføjer rækker, som den næste beskæring sletter.
predb_seed_daysHvor langt tilbage en historisk import når, når den startes uden sit eget vindue (standard 180 dage, højst 366). Et større vindue er flere forespørgsler til pre-kilden, som kører i takten en hvert andet sekund.

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.

En listekilde fodrer overvågningslisten fra en liste, du har i Plex, på en af to måder: forbind din Plex-konto ved at godkende en kort kode på Plex' side, eller indsæt adressen på en Plex-overvågningsliste. Adressen er en adgangsnøgle - den giver enhver, der har den, ret til at læse listen - så den maskeres, når den er gemt. Synkronisering af fjernelser er med vilje forskellig pr. tilstand: en forbundet konto ser hele listen, så en titel, der fjernes dér, overvåges ikke længere her (allerede færdige downloads bliver); et adressefeed indeholder kun de nyeste poster, så fravær beviser ingenting, og titler bliver kun tilføjet. Begge standarder kan ændres pr. kilde.

Søg også på mine indekser-konti efter det, jeg vil have, nederst på overvågningslistens kort, lader den spørge kontiene fra Indstillinger → Søg på indeksere ud over dit eget indeks (§5). Det begynder slået fra, for det er det eneste her, der bruger en målt konto, uden at du klikker. Slået til spørger hver overvåget post cirka to gange om dagen, og kun efter det, den ikke allerede har fundet, under de samme daglige grænser og med de samme bemærkninger, når en konto springes over. En kandidat fra en indekser bedømmes præcis som en lokal, så kvalitetsgulve, opgraderinger, sæsonpakker og dublethåndtering gælder alle sammen, og en lokal kopi vinder enhver lige stilling, fordi den ikke koster tildeling. Med den indbyggede indekser slået fra er det dette, der overhovedet giver overvågningslisten noget at arbejde med.

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. NZBGets dialekt leveres ved siden af - NZBPP_*-variabler (DIRECTORY, NZBNAME, CATEGORY, TOTALSTATUS, PARSTATUS, UNPACKSTATUS, FINALDIR) og exitkoderne 93/94/95 - så kernelogikken i et NZBGet-udvidelsesscript kører også. Mapningen er ærlig snarere end en emulering: reparation og udpakning sker inde i one-pass-downloaden, så en ren fuldførelse rapporterer PARSTATUS=0 og en repareret PARSTATUS=2. Scriptegne indstillingsformer (NZBPO_*) leveres ikke. Et script må gerne efterlade en hjælper kørende i baggrunden, når det slutter, og nzbfast dræber den ikke, men nzbfast holder op med at læse scriptets output, i det øjeblik scriptet selv er færdigt: giv en baggrundshjælper sin egen output-omdirigering, ellers bliver den standset, første gang den prøver at skrive.

Præ-kø-script

En anden krog kører, før en download kommer i køen (Indstillinger → Mapper → Præ-kø-script), med SABnzbds præ-kø-kontrakt: argumenterne name, pp, category, script, priority, size, group plus SAB_*-miljøet. Dets første outputlinje accepterer (1) eller afviser (0) downloaden; linje 2-7 kan omdøbe den, sætte pp, skifte kategori, vælge et script eller ændre prioriteten (tomme linjer beholder standarden). En afvist download går i historikken som Mislykket med årsagen, og Prøv igen fra historikken bringer den tilbage uden at spørge scriptet igen. Krogen kan aldrig miste en download: hvis scriptet mangler, går ned, overskrider sit tidsbudget eller skriver noget, der ikke er en dom, fortsætter tilføjelsen urørt, og loggen siger hvorfor.

Livscyklushændelser og signerede webhooks

Hver jobmilepæl er en versioneret hændelse: job.added, job.started, job.finishing, job.repaired, job.completed, job.failed, plus queue.idle, giveup.tripped, disk.low, storage.slow og quota.reached. Hver bærer schema_version (i øjeblikket 1; nye nøgler kan dukke op uden et hop - ignorer det, du ikke kender), et monotont seq og et at-tidsstempel i millisekunder.

For at modtage dem tilføjer du et webhook-notifikationsmål (Indstillinger → Automatisering) og skriver i dets events-felt, hvilke hændelsestyper det skal have - præcise typer eller et præfiks som job.*. Målet modtager derefter én POST pr. hændelse: hændelsens JSON som krop plus et delivery-id (<boot>-<seq>, håndtaget at deduplikere på), headerne X-NzbFast-Event og X-NzbFast-Delivery, og - når målet har en signeringshemmelighed - X-NzbFast-Signature: sha256=<hex>, en HMAC-SHA256 af kroppens nøjagtige bytes under din hemmelighed (samme form, som GitHubs webhooks bruger). Verificér i Python:

expected = "sha256=" + hmac.new(secret, body, hashlib.sha256).hexdigest()
ok = hmac.compare_digest(expected, request.headers["X-NzbFast-Signature"])

Levering er mindst-én-gang: et mål, der ikke kan nås, prøves igen efter 10 s, 60 s og 5 min og droppes derefter med fejlen vist på målets indstillingsrække. Et HTTP-fejlsvar (404, 401...) prøves ikke igen - ret modtageren og brug Test. Hvert mål har sin egen leveringsbane, så et, der er langsomt eller unåeligt, aldrig holder et andet tilbage; inden for en bane beholder leveringerne den rækkefølge, hændelserne skete i, og droppes én, viser sekvensnumrene hullet. De klassiske hændelsesord (completed, failed, repaired, disk, quota) beholder deres betydning for menneskelige notifikationer på samme mål.

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 (hvor du finder den: §2).
  3. Kategori efter ønske (f.eks. tv / movies). Test → grønt flueben → Gem.

Dashboardet rækker dig adressen: på en installation, der endnu ikke har hentet noget, viser velkomstkortets rute "Lad Sonarr, Radarr eller en app tilføje downloads" den præcise adresse med en Copy-knap ved siden af. API-nøglen står med vilje ikke på den linje; den bliver bag sin egen visning i Indstillinger → Sikkerhed (§2).

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.
Slå den indbyggede indekser til først (Indstillinger → Indeksering). Den er slået fra som standard, og så længe den er det, svarer denne facade på hver forespørgsel med <error code="101"> i stedet for et tomt resultat, så en fejl viser sig, når du tilføjer indekseren, og ikke uger senere.

Hvorfor overhovedet? En selvhostet indekser over præcis de grupper, du går op i: ingen konti, ingen API-kaldsgrænser, opbevaring så dyb, som du lader den skanne. Den er en tilføjelse til dine sædvanlige indeksere frem for en erstatning, for den finder kun det, der blev postet under et rigtigt filnavn.

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.

Nå nzbfast udefra

Der er ingen loginside, og det er med vilje. Et login med sessionscookie er en sikkerhedsflade, der skal vedligeholdes for altid, og den ville stadig være den svageste lås på noget, der vender mod det åbne internet. nzbfast godkender i stedet med din API-nøgle og tager nøglen både i en forespørgselsheader og i URL'en (X-Api-Key eller Authorization: Bearer) - og det er netop det, der lader noget foran klare loginet ordentligt.

Det enkleste er slet ikke at offentliggøre den. Installer Tailscale på denne maskine og på telefonen, så er begge på det samme private net: intet er eksponeret, hverken router eller certifikat skal røres, og Indstillinger → Fjernadgang viser en adresse, der virker overalt, så snart Tailscale kører. Vælg det, medmindre du direkte har brug for et offentligt domæne.

nzbfast kan også selv servere HTTPS. Peg Indstillinger → Sikkerhed → HTTPS-certifikat / HTTPS-privatnøgle på et PEM-certifikat og dets nøgle (eller start med --tls-cert cert.pem --tls-key key.pem), genstart, så svarer dashboardet og API'et på https:// i stedet for almindelig HTTP - én lytter, ét skema. Brug det certifikat, dit domæne allerede har (for eksempel fra Let's Encrypt via certbot), eller et selvsigneret til LAN'et, som browsere accepterer efter en engangsadvarsel. Et defekt eller udløbet certifikat nægter opstart med filen nævnt ved navn, så fejlen er synlig, hvor du lavede den; forny ved at udskifte filerne og genstarte. Indbygget HTTPS krypterer trafikken, men tilføjer intet login, så behold API-nøglen sat.

Har du brug for et offentligt domæne, så sæt en omvendt proxy foran, giv den certifikatet, og lad den stå for godkendelsen. Start nzbfast med --bind 127.0.0.1, så proxyen er eneste vej ind, og peg proxyen på 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;
}

Læg det på, som din proxy tilbyder: basic auth, en forward-auth-tjeneste som Authelia eller Authentik, eller klientcertifikater. Én ting fanger alle - Sonarr, Radarr og telefonapperne kan ikke gennemføre et browserlogin, så lad dem slippe udenom. De fleste proxyer kan lukke en forespørgsel med en gyldig X-Api-Key-header igennem og kræve godkendelse af alt andet.

Videresend ikke bare port 6789 på routeren. Uden et konfigureret certifikat taler dashboardet almindelig HTTP, så din API-nøgle og alt, hvad du bruger den til, ville krydse internettet læsbart for enhver undervejs, og en installation helt uden nøgle står åben for den, der finder den. Videresender du alligevel en port, så sæt en API-nøgle først og slå HTTPS til.

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

Opdatering uden at miste dine indstillinger

Én regel dækker enhver installation: en opdatering udskifter programmet, aldrig dine indstillinger. Alt, hvad du har konfigureret - servere, stier, API-nøglen, køen - bor i en håndfuld filer i én mappe (§17), og intet installationsprogram, image-pull eller pakkeopgradering rører den mappe. Når indstillinger alligevel ser væk ud efter en opdatering, er det næsten altid, fordi den nye installation læser en anden, tom mappe, ikke fordi noget blev slettet; de gamle filer ligger stadig, hvor de altid har ligget. §18 har trinnene til at få dem tilbage.

InstallationSådan opdaterer du
macOS-appenÅbn den nye DMG og træk NzbFast ind i Programmer, så den gamle erstattes. Din datamappe er separat og bliver ikke rørt.
Windows-installationsprogrammetKør den nye installation oven på den gamle. Din datamappe er separat og bliver ikke rørt.
Docker (kommandolinjen)docker pull nzbfast/nzbfast, fjern den gamle container, og kør så den nye med præcis de samme -v-mapninger. Imaget er til at smide væk; den mappede /config-mappe er din installation. Bruger din run-kommando en relativ sti som -v ./config:/config, så kør den fra den samme mappe hver gang - alle andre steder fra er ./config en anden, tom mappe.
Docker Composedocker compose pull && docker compose up -d, med den samme compose-fil samme sted. ./config i filen er forankret i filens egen mappe, så lad filen blive, hvor den er.
WatchtowerIntet at gøre: den genskaber containeren med de samme mapninger, når et nyt image udkommer.
UnraidDocker-fanen → Check for UpdatesApply Update. Fjern og gentilføj aldrig appen for at opdatere den; skulle du en dag geninstallere, så behold den samme appdata-sti, så den finder din eksisterende /config.
Synology (Container Manager)Hent det nye image, stop containeren, og genskab den med de samme volume-indstillinger - gennemgangen i Synology-guiden dækker det klik for klik, inklusive hvordan du gør det efter et skema.
Synology (pakke)Installér den nye .spk i Package Center; den opgraderer på stedet.
QNAP (pakke, beta)Installer den nye .qpkg i App Center; den opgraderes på stedet. Dine indstillinger og downloads ligger uden for appens egen mappe, så hverken en opgradering eller en afinstallation tager dem med.
Debian / Ubuntu (.deb)
Fedora / RHEL (.rpm)
Installer den nye pakke oven på den gamle: sudo dpkg -i nzbfast_*.deb eller sudo rpm -U nzbfast-*.rpm. Din indstillingsmappe er ikke en del af pakken, så en opgradering kan ikke erstatte noget i den, og dine egne ændringer i /etc/nzbfast/nzbfast.env bevares. Tjenesten genstartes kun, hvis den allerede kørte.
Homebrewbrew upgrade nzbfast
Ren binærUdskift binæren. Din konfiguration bliver, hvor du lavede den (§17).
TipDocker-brugere, der kobler Sonarr eller Radarr på: læg API-nøglen i selve containerdefinitionen (-e NZBFAST_APIKEY=…, eller environment-blokken i din compose-fil eller Unraid-skabelon). En nøgle, der ligger dér, overlever ethvert containeruheld, fordi den bor på værten, i definitionen, og bliver lagt på igen ved hver start. En nøgle, du senere sætter under Indstillinger, vinder stadig over den.

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; --apikey sætter nøglen i hånden (§2); --bind vælger lytteadressen, standard 0.0.0.0 (hver grænseflade), 127.0.0.1 for kun denne maskine. 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), predb-seed (fylder pre-databasen med tiden før feedet blev slået til), 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). addnzblnk er med vilje ikke med i sættet for kun at tilføje: at slå et link op kan bruge målt indekserkvote, og det har en nøgle til kun at tilføje ikke noget at gøre med.

OmrådeModes
queue (med name=delete/pause/resume/priority/switch), pause, resume, addfile, addurl, addnzblnk, retry, set_password
Infohistory, status/fullstatus, stats, version, server_stats, usage, log, warnings, plus /jobnzb/<nzo_id> (jobbets egen gemte .nzb ud igen, kø eller historik; kun fuld API-nøgle)
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
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

Hvor indstillingsmappen ligger, afhænger af, hvordan nzbfast blev installeret. Denne ene mappe rummer alt, hvad der er værd at tage backup af:

InstallationIndstillingsmappe
macOS-appen~/Library/Application Support/nzbfast/
Windows%LOCALAPPDATA%\nzbfast\
Docker / NAS-containere/config inde i containeren, som er den værtsmappe, du har mappet til den. På Unraid er det appens appdata-mappe.
Synology-pakken/var/packages/nzbfast/var/
QNAP-pakkenSom regel /share/Download/nzbfast/config/. Mappen vælges under installationen og nævnes i App Center-loggen; appens egen nzbfast.env noterer den også.
Debian-/RPM-pakke/var/lib/nzbfast/
TerminalDen mappe, du kørte nzbfast setup i, eller hvor end --config / $NZBFAST_CONFIG peger hen.

Og hvad der ligger i den:

FilIndhold
config.local.jsonServer-loginoplysninger og indstillinger pr. server. Oprettet af guiden; kan redigeres under Indstillinger. Hold den privat. Adgangskoder er sløret, ikke krypteret.
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.
apikeyDen API-nøgle, nzbfast lavede til sig selv ved en første kørsel (§2). Ligger ved siden af konfigurationen; kan på macOS og Linux kun læses af den konto, der kører nzbfast. Slet den ikke for at få en frisk nøgle: på en installation, der allerede har kørt, kommer der intet i stedet, og daemonen starter op igen helt uden nøgle. Sæt i stedet en ny under Indstillinger → Sikkerhed.
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.
Et arkiv pakkes ikke udAdgangskode- og reparationsfejl navngiver sig selv i historik-rækken. For alt andet findes der en nødudgang: Indstillinger → Watch-mappe & efterbehandling → Udpak med eksternt unrar (en avanceret indstilling) overlader udpakningen til programmet unrar, der er installeret på din maskine, i stedet for den indbyggede udpakker. Lad den ellers være slået fra: den indbyggede vej er hurtigere på alle former, vi har målt, og slørede poster med hash-navne bruger den alligevel altid, fordi unrar ikke kan følge deres omdøbning. Den samme kontakt for nzbfast get-kørsler er miljøvariablen NZBFAST_NO_NATIVE_UNRAR=1. Hvis unrar udpakker et arkiv, som den indbyggede udpakker afviste, så meld det gerne, så vi kan reparere den indbyggede vej.
Sonarr/Radarr kan ikke forbindeKan port 6789 nås? API-nøgle korrekt (fuld nøgle, ikke NZB-nøgle)? Klienttype sat til SABnzbd?
Dashboardet beder om en API-nøgle, jeg aldrig har satEn ny installation laver selv en og skriver den ud én gang ved opstart (§2). Den står i filen apikey ved siden af din konfiguration, og i opstartsudskriften. Eller skriv din egen nøgle ind under Indstillinger → Sikkerhed fra en browser, der allerede er logget ind.
Alle mine indstillinger ser væk ud efter en opdatering
(servere, stier, API-nøgle)
Intet i en opdatering sletter indstillinger; det her betyder, at nzbfast læser en anden, tom mappe. Først: API-nøglefeltet under Indstillinger vises tomt med vilje - klik Show, før du konkluderer, at den er væk. På Docker: sammenlign den nye containers /config-mapning med den gamles: en ændret værtssti, en relativ sti kørt fra en anden mappe eller en frisk appdata-mappe starter alle sammen nzbfast helt forfra, mens dine rigtige indstillinger ligger urørte på den tidligere sti. Find den gamle mappe (kig efter settings.json, din konfigurationsfil og apikey - placeringer i §17), og peg så enten mapningen tilbage på den, eller kopiér de filer ind i den nye mappe og genstart. Opstartsloggen navngiver præcis den indstillingsfil, der er i brug: [settings] applying saved settings from …
Intet på netværket kan nå daemonenTjek --bind: 127.0.0.1 betjener kun den maskine, nzbfast kører på. Standarden, 0.0.0.0, betjener hver grænseflade. Tjek derefter maskinens egen firewall for port 6789.
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.
macOS siger, at programmet "nzbfast" ikke kan åbnesTo årsager, begge hurtige. Bruger du den enkle -macos-universal.zip, så dobbeltklik på Start nzbfast.command og ikke på filen nzbfast ved siden af - den er selve programmet, og Finder svarer på et dobbeltklik der med præcis denne besked. Det er starteren, der sætter det hele op og starter det. Giver starteren den samme besked, har kopien mistet sin Unix-kørselsbit undervejs: macOS bevarer den bit inde i .zip-filen, men chat-apps, cloud-drev og ny zipning gør det ikke, så en kopi, der er sendt videre i hånden, ankommer uden kørselstilladelse. Hent .dmg eller .zip direkte fra releases-siden, så sker det ikke. For at redde den kopi, du allerede har: åbn Terminal, skriv chmod +x med et mellemrum til sidst, træk Start nzbfast.command og filen nzbfast ind i vinduet og tryk Retur - dobbeltklik derefter på starteren igen.
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.