⚡ nzbfast
Den snabba Usenet-nedladdaren - användarhandbok
1 · Välkommen
nzbfast laddar ner från Usenet så snabbt som din linje, dina providers och din maskin tillåter - och oftast betyder det så snabbt som din linje. Det är ett enda fristående program: motorn, en webbaserad instrumentpanel, en postervägg för mediabläddring, en inbyggd indexerare, förhandsgranskning i realtid, native PAR2-reparation och native RAR-uppackning ligger alla inuti en och samma körbara fil. Det finns inget annat att installera.
Det som gör den snabb är arkitektur, inte trixande:
- Pipelinead NNTP - många artikelförfrågningar rider på varje anslutning rygg mot rygg, så att varje anslutning hålls i full fart i stället för att vänta ut tur-och-retur-tider.
- En enpassrörledning - nedladdning, verifiering och uppackning överlappar. Arkivvolymer packas upp i strömmen; på ett typiskt store-mode-inlägg rör RAR-filerna aldrig din disk, så jobbet behöver 1× releasens storlek, inte 2×, och blir klart när nedladdningen blir klar.
- Union över flera providers - varje konfigurerad server bidrar; en artikel som saknas på en backbone hämtas från en annan. Långsamma eller döda servrar stoppar aldrig upp kön.
- En minnesbudget - motorn anpassar sig till en begränsad RAM-tilldelning och faller tillbaka på disk vid behov. Den swappar aldrig din maskin.
Mätt mot fältet på identisk hårdvara, samma jobb och providers har nzbfast gjort klart en 190 GB nedladdning på omkring 5 minuter på en 10 GbE-linje - med de ledande alternativen 30–220 % efter på samma tester, där de överhuvudtaget slutförde dem. Siffrorna finns i §3.
2 · Snabbstart
macOS
- Öppna
nzbfast-<version>-macos.dmgoch dra NzbFast till Program (universell: Apple Silicon + Intel). - Första starten: macOS varnar för att nzbfast ännu inte är Apple-notariserad. Högerklicka på appen → Öppna - eller öppna Systeminställningar → Integritet & säkerhet, scrolla ner och klicka Öppna ändå. Detta är ett engångssteg.
- Appfönstret visar instrumentpanelen med ett välkomstkort - klicka på det och lägg till minst en Usenet-server (host, port 563, användarnamn, lösenord). Du kan lägga till fler senare i Inställningar.
- Släpp en
.nzbvar som helst på instrumentpanelen - eller dubbelklicka bara på.nzb-filer i Finder. Nedladdningar hamnar i~/Downloads/nzbfast. Avsluta från menyn; nedladdningar återupptas där de slutade.
Föredrar du ingen app? Det vanliga zip-arkivet (binär +
Start nzbfast.command-startare, samma motor) fungerar fortfarande som förr -
stegen nedan under "Från en terminal".
Windows
- Kör
nzbfast-<version>-windows-x64-setup.exe. Den installerar bara för din användare (inget administratörslösenord). Eftersom den här utgåvan ännu inte är kodsignerad kan SmartScreen visa "Windows skyddade din dator" - klicka Mer information → Kör ändå. - nzbfast bor i systemfältet: dubbelklicka på fältikonen (eller använd Öppna instrumentpanelen i dess högerklicksmeny) för att öppna instrumentpanelen, och lägg sedan till din Usenet-server från välkomstkortet. Fältmenyn har också Pausa/Återuppta, din nedladdningsmapp och Avsluta.
- Att dubbelklicka på en
.nzb-fil lägger den i kön. Windows Defender kan fråga en gång om att tillåta lokal nätverkslyssning - tillåt det.
Föredrar du en portabel kopia? -windows-x64.zip fungerar fortfarande: packa upp
var som helst och dubbelklicka på nzbfast.exe (eller Start nzbfast.bat)
för terminalguiden.
Från en terminal (valfri plattform)
nzbfast setup # interactive server setup (writes config.local.json)
nzbfast serve --open # start the daemon and open the dashboard
nzbfast import-sab
på kommandoraden.Välkomstkortet frågar också hur du tänker använda nzbfast, med fyra svar: en app som Sonarr eller Radarr styr den, byter från SABnzbd, byter från NZBGet, eller bara du, från den här instrumentpanelen. Att välja ett ändrar ingenting i sig. Det visar en kort granskningslista - varje rekommendation med inställningens eget namn, dess nuvarande värde, det rekommenderade värdet och en rad om varför - och Verkställ sätter bara de rader du bockar i. Varje rad är en vanlig inställning du kan ändra tillbaka för sig efteråt, och samma lista finns kvar senare under Inställningar → Rekommenderade inställningar för hur du använder den.
Din API-nyckel
Vid en verkligt ny installation skapar nzbfast en API-nyckel åt sig själv första gången daemonen startar, och skriver ut den en gång i en banner precis under instrumentpanelens adress. Från och med då kräver varje förfrågan den nyckeln, så att instrumentpanelen och API:et inte står öppna för allt som kan nå maskinen.
Vad du gör med den beror på hur du startade nzbfast:
- macOS-appen, Windows-fältikonen eller
serve --open: ingenting. De skickar nyckeln till webbläsarfönstret de öppnar, instrumentpanelen kommer ihåg den, och du är redan inloggad. - En webbläsare du öppnat själv, eller instrumentpanelen på en telefon eller en annan dator: sidan frågar efter nyckeln en gång och kommer ihåg den efter det.
- Sonarr, Radarr, nzb360 med flera: klistra in den som deras SABnzbd- eller NZBGet-nyckel (§11, §12).
Nyckeln sparas i en fil som heter apikey bredvid din konfigurationsfil,
så den är densamma efter omstarter och du kan läsa tillbaka den när du behöver.
På macOS och Linux är den filen läsbar endast för kontot som kör nzbfast. Den finns
också i daemonens egen utskrift, så instrumentpanelens Logg-kort har den om
terminalen redan rullat förbi.
Vill du använda en egen nyckel i stället skriver du in den under Inställningar →
Säkerhet; den gäller direkt. Den panelen ändrar nyckeln men visar aldrig den
nuvarande, så läs filen apikey om du behöver få tillbaka det genererade
värdet. Vill du köra helt utan nyckel, för att något framför nzbfast redan sköter
inloggningen, startar du den med NZBFAST_OPEN=1 i miljön. nzbfast förblir
då öppen och säger det rakt ut vid start.
Vilka maskiner som över huvud taget kan nå daemonen är ett separat val:
serve --bind. Standard är 0.0.0.0, alltså varje
nätverksgränssnitt, eftersom en NAS-låda, en telefon och en Sonarr på en annan dator
alla måste kunna ansluta. --bind 127.0.0.1 smalnar av det till maskinen
som nzbfast kör på, vilket är vad du vill ha på ett enskilt skrivbord där inget annat
behöver åtkomst.
3 · Så fungerar nzbfast
En snabb ordlista så att resten av handboken blir lätt att läsa:
| Term | Betydelse |
|---|---|
| Provider / server | En Usenet-tjänst du har ett konto hos (Newshosting, Eweka, XS News…). Var och en tillåter ett visst antal samtidiga anslutningar. |
| Backbone | Infrastrukturen bakom en provider. Flera varumärken återförsäljer ofta samma backbone - bra att veta, eftersom två providers på en backbone saknar samma artiklar. Se Serverdiversitet. |
| NZB | En liten XML-fil som listar artiklarna som utgör ett inlägg. Det är detta du matar nzbfast med. |
| PAR2 | Återställningsdata som postas vid sidan av en release. nzbfast verifierar mot den under nedladdningen och reparerar automatiskt när artiklar är skadade eller saknas. |
| Store-mode-RAR | De flesta releaser packas i RAR-volymer utan komprimering. nzbfast känner igen detta och skriver innerfilen direkt till dess slutliga plats under nedladdningen - inget uppackningssteg efteråt. |
Rörledningen kör nedladdning → avkodning → verifiering → uppackning samtidigt. Pipeline-kortet på instrumentpanelen visar alla tre banor röra sig på en gång. När den sista byten anländer är verifieringen redan klar och filen redan uppackad; ett typiskt jobbs "efterbehandlingstid" är noll. Om reparation behövs materialiseras först då volymer till disk, repareras på plats av den native GF(2¹⁶)-motorn (omdöpt eller byteförskjuten obfuskerad data hittas och adopteras av en glidande blockskanning) och packas upp på nytt - allt automatiskt.
Avbrutna nedladdningar (krasch, strömavbrott, kill -9) återupptas från artikeljournalen: byte som redan finns på disken hämtas aldrig två gånger. Journalen registrerar var varje artikels byte fysiskt landade - även byte som blev direktuppackade till slutfilen - så en återupptagning bygger om från lokal disk och verifierar allt den återställde mot PAR2-blockkartan innan den litar på det.
Hur det står sig i jämförelse
Mätt mot SABnzbd 5.0.4 och NZBGet 26.2 på samma maskin, samma providers och samma NZB:er, tidsatt till en användbar fil - nedladdning, verifiering, reparation och uppackning inräknade, för det är då jobbet faktiskt är klart:
| Jobbstorlek | nzbfast | NZBGet 26.2 | SABnzbd 5.0.4 |
|---|---|---|---|
| 7 GB | 13.7 s | +26% | +39% |
| 35 GB | 67 s | +61% | +325% |
| 87 GB | 272 s | +36% | +160% |
| 190 GB | 9 m 00 s | +30% | +111% |
Glappet är efterbehandlingen som de andra fortfarande måste göra efter att den sista byten landat. Båda konkurrenterna trimmades inför jämförelsen, inte lämnade på standardvärden - SABnzbd i synnerhet levereras med request-pipelining av, vilket kostar den dyrt, så den slogs på.
Två skillnader betyder lika mycket som tiderna:
- Diskutrymme. Ett pass behöver 1× releasens storlek; klienter som skriver arkivvolymer och sedan packar upp dem behöver 2×. På en testmaskin med 97 GB ledigt blev ett 87 GB-jobb klart här på 3 m 08 s och de andra två kunde inte köra alls.
- Minne. På 190 GB-jobbet var toppanvändningen 3.9 GB mot SABnzbds 9.3 GB - och nzbfast klarar samma jobb i ungefär 1 GB om man säger till den (se Minnesbudget).
4 · Instrumentpanelen
Öppna http://localhost:6789 (eller din maskins adress från en annan
enhet - telefonlayouten anpassar sig automatiskt). Allt uppdateras live, en gång i
sekunden. Korten, uppifrån och ner:
Rubrikrad
- Hastighetsgräns-meny - fasta tak, auto · ge plats åt LAN (ett RTT-styrt läge som backar när någon annan i huset behöver linjen) eller obegränsat.
- Pausa i… - pausa allt i 15 min/30 min/1 h/3 h med automatisk återupptagning, eller använd Pausa-knappen för en öppen paus. Paus är omedelbar: den aktiva överföringen stoppar inom sekunder och återupptas senare från journalen utan att förlora något. (Jobb med Tvinga-prioritet fortsätter ladda ner, SABnzbd-stil.)
- En uppdateringsbanner dyker upp här när en ny version är tillgänglig (se Uppdateringar).
Hastighet
Live MB/s med ett rullande diagram; de streckade vattenmärkena markerar sessionens högsta/lägsta, den svaga linjen är ett glidande medelvärde. Under det visar ett histogram hur sessionens hastighetsmätningar fördelar sig - typiskt vs topp. Bredda fönstret så visar diagrammen mer historik (upp till en timme).
Statistikrutor
Nedladdat denna session, ködjup, antal klara/misslyckade, sessionens toppfart.
Resurser - en maskin, fyra tak
CPU, RAM (mot nzbfasts minnesbudget), diskskrivhastighet och nätverk på ett normaliserat diagram, med verkliga värden i teckenförklaringen och en varning för lite disk. Ingen annan NZB-klient visar dig detta; det finns för att bevisa en poäng - nzbfast maxar din linje, inte din maskin.
Pipeline - stegen överlappar
Tre banor: nedladdning, verifiering (PAR2-block kontrollerade), uppackning. På ett friskt jobb rör sig alla tre tillsammans.
Providers
Live-hastighet per server, anslutningsutnyttjande, andel av trafiken, sessionens GB och en livstidspoäng för artikelkomplettering (färgad när en server faller under 98 %). Ett staplat areadiagram visar varje providers bidrag över tid. Rader ordnas om efter live- prestanda var 10:e s (konfigurerbart i Inställningar → Gränssnitt) så att din snabbaste provider alltid ligger överst.
Kö
- Dra rader för att ändra ordning (inom ett prioritetsband - Tvinga/Hög körs ändå först); ändra prioritet direkt i raden.
- Klicka på en rad för detaljlådan: förloppsstaplar per fil, verifieringsblockantal,
vilken server som bidrog med hur mycket till detta jobb, och en "tillagd av"-rad
som säger var jobbet kom ifrån (bevakningsmapp, en ansluten app, API:et…).
Knappen Hämta .nzb-filen sparar jobbets
.nzb-fil - nzbfast behåller en egen kopia, så det fungerar för varje jobb, även när originalfilen sedan länge är borta. - Märken visar specialtillstånd: uppskjuten (långsam), prefetchar, pausad (se Prestandaverktyg).
- Ett nedräkningsdiagram spårar totalt GB kvar i hela kön.
Bläddra i indexet
Sök i allt den inbyggda indexeraren katalogiserat från dina bevakade grupper (se Automatisering) och ladda ner med ett klick - ingen extern indexerare behövs. Statusraden visar skanningsförloppet; Skanna nu tvingar fram ett pass.
Bevakningslista
Lägg till titlar efter namn - inklusive sådana som inte postats än. När en matchande release dyker upp i indexet hämtas den automatiskt, med kvalitetspreferenser och uppgraderingsregler (en bättre kopia ersätter en sämre).
Kortet kan också följa en lista du har i Plex. Lägg till en listkälla: koppla antingen ditt Plex-konto (du godkänner en kort kod på Plex egen sida, så inget lösenord når någonsin nzbfast) eller klistra in adressen till din Plex-bevakningslista. Behandla den adressen som ett lösenord - den som har den kan läsa din lista - och därför maskeras den när den sparats. Synkade titlar visas som skrivskyddade rader bredvid dina egna. Ett kopplat konto ser hela din lista, så tar du bort en titel där slutar den också bevakas här (färdiga nedladdningar rörs aldrig); en adress visar bara de nyaste posterna, så en titel som saknas kan helt enkelt ha rullat ut och inget tas bort. Båda beteendena kan slås om per källa.
Historik
Senaste nedladdningarna, en rad var. Misslyckade jobb erbjuder Försök igen
(återupptar från journalen). Krypterade arkiv visar en 🔑 upplåsningskontroll - ange
lösenordet så blir jobbet klart på plats. Verifieringshälsoremsan diagramlägger dåliga PAR2-
block per nedladdning - en stigande svans betyder att artiklar kommer in skadade.
Varje rads detaljlåda säger vem som lade till jobbet och har samma knapp
Hämta .nzb-filen som kön - praktiskt när du vill ladda ner en release igen
någon annanstans, eller bifoga .nzb-filen till en problemrapport.
Kortet listar tio nedladdningar som standard och resten är ett klick bort, på knappen ▤. Status, plats och orsaken till ett misslyckande ligger bakom ett klick på själva raden, så att det vanliga fallet - vad som blev klart, hur stort, när - förblir läsbart utan att scrolla. Dra i kortets nederkant för att låta listan scrolla på en höjd du väljer i stället. History rows under Inställningar → Gränssnitt ändrar tian; eftersom det är en egenskap hos daemonen och inte hos din webbläsare gäller det varje enhet som tittar på den här installationen. Colour History names bredvid färgar klara namn gröna och misslyckade röda; avstängt blir namnen neutrala, och den färgade pricken och radens egna detaljer säger fortfarande vilket som är vilket.
Dataförbrukning
Dagliga staplar per provider och Idag / 7-dagars / 30-dagars totaler - nödvändigt för mätade konton och blockkonton. Blockkonton visar livstidsförbrukning mot sin storlek.
Logg, Systembenchmark, Anslutningstrimning, Serverdiversitet
En loggvisare på sidan, och de tre självmätande verktygen som beskrivs i Prestandaverktyg.
Ordna instrumentpanelen
Instrumentpanelen är din att ordna. Fyra åtgärder, med samma namn var du än möter dem: Flytta ett kort, Komprimera det, Ändra storlek på det eller Dölj det. Varje val minns den webbläsare du gjorde det i, så varje enhet behåller sin egen ordning, och Återställ layout under Inställningar → Gränssnitt ställer varje kort, storlek och kolumn tillbaka som de levererades.
Anpassa layout är den guidade vägen in, och det snabbaste sättet att se vad ett kort kan. Öppna det från den diskreta länken strax ovanför det första kortet, eller från Inställningar → Gränssnitt, där det är den första knappen i raden Instrumentpanelens layout. Så länge det är på har varje kort som går att flytta en kontur, de tre verktygen i titelraden ritas med full styrka och med sitt ord bredvid ikonen, och varje storlekslist ritas i accentfärgen; ett kort utan list säger varför på en egen rad i stället för att låta dig leta efter en. Klar eller Escape-tangenten avslutar. Läget är ett sätt att se på sidan och inte en inställning: det ändrar ingenting i din ordning, och efter en omladdning är det av igen.
På en instrumentpanel som ingen har ordnat ännu säger en rad ovanför korten att de går att flytta, ändra storlek på, komprimera eller dölja, och pekar på den länken. Den visas en gång: Uppfattat stänger den, och det gör även att öppna läget eller att ordna någonting alls.
- Flytta. Dra ett kort i dess titel. Hela rubriken är handtaget, inte bara den lilla ikonen till vänster om den, så det finns inget kinkigt mål att träffa. Ikonen är dessutom ett tabbstopp: ge den fokus, så flyttar piltangenterna upp och ner kortet.
- Komprimera. Knappen bredvid handtaget drar åt kortets mellanrum: samma siffror, mindre plats. På Historik växlar den mellan de tio senaste nedladdningarna och resten av din historik. Kompakt läge under Inställningar → Gränssnitt gör hela instrumentpanelen på en gång.
- Ändra storlek. Ett kort som rymmer en lista eller ett diagram bär en list längs sin underkant: dra den till den höjd du vill ha. Listen är svag tills du pekar på kortet, då den ritas som en hårfin linje i full bredd med räfflor i bakre hörnet; den tar även tangentbordsfokus, där piltangenterna upp och ner sätter höjden och Skift tar ett större steg. Vilka kort som har en ändras allteftersom kort får och tappar egna listor: ta listen som svar i stället för någon uppräkning här. I Anpassa layout säger korten utan list det själva.
- Dölj. Den sista knappen i titelraden döljer kortet. Dolda kort samlas i en rad Dolda längst ner på instrumentpanelen; klicka på ett namn där för att ta tillbaka ett.
Högerklicka på ett korts titel för samma åtgärder i en enda lista: Flytta upp, Flytta ner, Komprimera, Ändra storlek och Dölj, plus en väg in i Anpassa layout när du inte redan är där. Ändra storlek erbjuds bara på ett kort som har en list att dra i. Flytta upp och Flytta ner slocknar vid ändarna, och de räknar bara de kort du ser: ett dolt kort kliv förbi, så första och sista betyder första och sista synliga.
Den menyn är en tangentbordsväg lika mycket som en musväg. Tabba till ett korts flytthandtag, tryck på Snabbmenytangenten eller Skift+F10, så öppnas den under rubriken. Piltangenterna upp och ner går igenom den och hoppar över allt som är släckt; Escape stänger den och lämnar tillbaka fokus till handtaget du öppnade den från. Att välja Ändra storlek ger fokus åt kortets list, där pilarna upp och ner sätter höjden och Skift tar ett större steg.
Escape stänger alltid bara det översta lagret. Att stänga kortmenyn medan läget är på lämnar läget på; ett andra Escape lämnar läget.
Instrumentpanelens kort under Inställningar → Gränssnitt ger samma ordnande som en vanlig lista med kontroller: en ruta Visa per kort, en ruta Kompakt bredvid, och knapparna Flytta upp och Flytta ner. På en telefon, en surfplatta eller i vilket smalt fönster som helst är kortverktygen och dragandet avstängda, för att dra ett kort över en sida som rullar under fingret är en dålig kontroll: där är det den här listan som ordnar instrumentpanelen. Den skriver det som skrivbordet läser, så en ordning du sätter på telefonen är den ordning skrivbordet visar. Dess knappar följer menyns regel: de slocknar vid ändarna av de synliga korten, och ett kort du har dolt går inte att flytta förrän du visar det igen.
Tabellkolumner ordnas på plats och inte från något av ovanstående. I tabellerna för kön, historiken och indexet drar du en kolumnrubrik i sidled för att flytta kolumnen, eller dess bakre kant för att ändra bredden; ett dubbelklick på kanten återställer bredderna. Med en rubrik i fokus flyttar vänster- och högerpilen den, och Skift med en pil ändrar bredden.
5 · Lägga till nedladdningar
| Metod | Så här |
|---|---|
| Dra & släpp | Släpp en eller flera .nzb-filer var som helst på instrumentpanelen. |
| Bevakningsmapp | Ange en mapp i Inställningar; varje .nzb som sparas i den
plockas upp inom 5 sekunder och flyttas till papperskorgen, och en öppen instrumentpanel
meddelar varje upphämtning med namn ("… hämtad från Hämtningar"), så en fil som lämnar
mappen är aldrig ett mysterium. Vill du hellre behålla dina filer? Slå på Behåll
.nzb-filer efter upphämtning (se §9). Rikta din webbläsares nedladdnings-
mapp mot den för grabbar med ett klick från indexersidor. |
| Från en URL | Klistra in en NZB-länk (API mode=addurl, eller via valfri ansluten app). |
| nzblnk:-länkar | Klistra in en nzblnk:-länk var som helst på panelen, eller dra in den. Har du installerat från macOS-DMG:en eller Windows-installeraren kan du också klicka på en direkt på ett board. Se nzblnk-länkar nedan. |
| Bläddra i indexet | Klicka på valfri komplett release i Bläddra-kortet. |
| Sök på indexerare | Sök på de indexerarkonton du har lagt till och köa ett resultat direkt från listan. Se Söka på dina indexerarkonton längre ned. |
| Bevakningslista / RSS | Automatiskt - se Automatisering. |
| Sonarr/Radarr m.fl. | De skickar grabbar rakt till kön - se §11. |
| Kommandoraden | nzbfast get file.nzb laddar ner utan daemonen. |
Kategorier, prioriteter, lösenord
- Kategorier är fritt formulerade etiketter; var och en blir en undermapp i din nedladdnings- mapp, och Smarta mappar (se §10) kan tilldela dem per regel.
- Prioriteter: Tvinga > Hög > Normal > Låg. Tvinga kringgår paus och kvot.
- Lösenord till krypterade arkiv plockas upp automatiskt från
<meta type="password">inuti NZB:n, från ett filnamnName{{password}}.nzbeller från fältetp=i en nzblnk-länk, och kan anges per jobb via API:et eller efteråt från Historik (🔑).
Söka på dina indexerarkonton
Har du ett konto hos en NZB-indexerarsajt kan nzbfast söka där härifrån och köa det du väljer, i stället för att du ska gå till sajten, hämta en NZB och bära tillbaka den. Det talar det vanliga indexerar-API som alla de sajterna erbjuder, så det finns inget att ställa in per sajt: NZBGeek, NZBFinder, DrunkenSlug, DOGnzb och de andra fungerar likadant. En Prowlarr- eller NZBHydra2-instans är också en enda rad, och tar med sig varje indexerare bakom sig.
Lägga till ett konto. Inställningar → Sök på indexerare →
+ Lägg till indexerare. Fyll i ett namn du väljer själv, sajtens API-adress (dess
vanliga webbadress räcker; en Prowlarr-rad ser ut som
http://host:9696/1/api) och API-nyckeln från din kontosida där, och sedan
Tillämpa indexerare. Testa frågar sajten vad den klarar och visar vad som
kom tillbaka, vilket bevisar adressen och nyckeln med ett klick. En sparad nyckel visas
aldrig igen: rutan säger det, och att lämna den tom behåller nyckeln som redan finns
där.
Att söka. Öppna 🎬 väggen i sidhuvudet och byt till releaselistan. Rullgardinen bredvid sökrutan avgör var en sökning tittar: Detta index, alltså det den här maskinen själv har skannat, Indexerare, eller Båda. Ditt val kommer ihåg. Att fråga dina konton kräver något i rutan, för att bläddra i dem med en tom fråga skulle göra av med ett dygns tilldelning på en lista ingen bad om. Med den inbyggda indexeraren avstängd, vilket är så nzbfast kommer, finns inga affischer att visa och sidan är precis detta: en sökruta, dina konton och resultaten.
Resultaten. En rad per release, de nyaste först, med storlek, ålder och hur ofta den indexerarens egna användare har hämtat den. En release som flera av dina konton har dyker upp en gång. Under Båda vinner en kopia som ditt eget index redan har och den utifrån faller bort, för att hämta det du redan indexerat kostar dig ingenting. Ladda ned köar den med hög prioritet: nzbfast hämtar NZB:n själv, och därifrån är jobbet som vilket annat som helst, med reparation, uppackning, kategorier och skript oförändrade.
Att fråga om en enda titel. Öppna en titels kort på väggen och tryck på ⌕ Sök på mina indexerare. För filmer går frågan via IMDb-numret överallt där sajten tar emot ett, och det är skillnaden mellan filmen du menade och varje release vars namn råkar innehålla just de orden. nzbfast slår upp numret själv, så sidan håller aldrig något. Sajter som inte erbjuder matchning på nummer får frågan i ord i stället.
Din tilldelning. Indexerarkonton är mätta: så och så många sökningar och så och så många nedladdningar om dagen, beroende på din nivå. Skriv in de två talen på raden så räknar nzbfast mot dem, med start om från midnatt UTC. 0, standardvärdet, betyder obegränsat, och räkningen fortsätter ändå. Ett konto som gjort av med sin tilldelning sitter över medan de andra arbetar, och en rad ovanför resultaten namnger det som hoppades över: att ta slut är aldrig tyst. En sajt som svarar med en egen gräns, eller ber oss sakta ned, ställs åt sidan i en timme.
Vart din nyckel tar vägen. Bara till den indexerare den hör till. Nycklar stannar på den här maskinen, lämnas aldrig till webbläsaren - varje resultatrad bär en biljett som gäller en halvtimme i stället för en länk - och rensas ur loggen och ur varje fel sajten skickar tillbaka, så ett inklistrat felmeddelande kan inte läcka någon. En nedladdning kan bara hämta en länk som någon av dina egna sökningar gav.
Det är samma konton som en nzblnk-länk faller tillbaka på när det lokala indexet inte känner igen dess huvud, och de som bevakningslistan kan fråga om det du vill ha (§10).
nzblnk-länkar
Vissa board, mest tyska och nederländska, publicerar en nzblnk:-länk
i stället för en NZB-fil. Inlägget är fördunklat, så det finns inget filnamn att länka
till. Länken bär i stället ett huvud, h=, som är en söknyckel och inte en
plats, plus en valfri titel t=, ett lösenord p= och en grupp
g=. Någon måste först gå och hitta inlägget.
nzbfast slår upp huvudet i sitt eget index först, vilket inte kräver något nätverk alls, och bara om det missar frågar det sökindexerarna du har ställt in (Inställningar → Sök på indexerare, §9), under samma dagsbudgetar och samma backoff som varje annan sökning. Titeln blir jobbets namn och lösenordet läggs på jobbet automatiskt.
- Klistra in eller dra fungerar på varje installation, Docker och NAS inräknade: kopiera länken från boardet och klistra in den var som helst på panelen.
- Att klicka på en länk kräver att schemat är registrerat hos ditt skrivbord. Appen från macOS-DMG:en registrerar det, och Windows-installeraren erbjuder det som en uppgift: den frågar först och lämnar schemat i fred om NZB Monkey eller NZBDonkey redan håller det. Den rena macOS-tarbollen, Homebrew och Linux-installationerna har ingen skrivbordshanterare, där är inklistring vägen in.
- Uppslagningen är hastighetsbegränsad med flit. Ett registrerat schema ligger en webbläsarfråga bort från varje sida du besöker, så länkar har ett tak per minut och bara de första under en minut får nå dina indexerare; därefter besvaras de enbart ur det lokala indexet.
6 · Posterväggen
Klicka på 🎬 vägg i rubriken. Väggen förvandlar ditt index till en media- bläddrare: varje igenkänd film- och TV-release som en posterruta med betyg, år, genrer, skådespelare och synopsis - dina newsgroups, bläddringsbara som en katalog.
- Flikar för Filmer / Serier / Övrigt, direktsökning och sju sorteringar: För dig, Nyaste posterna, Utgivningsår, Högst betyg, Titel A–Ö, Största och Mest postade.
- Endast matchade är på som standard och döljer oidentifierat skräp; ett "+N omatchade"- märke visar det.
- Klicka på en ruta för detaljbladet: synopsis, IMDb-betyg och röster, skådespelare - och ▶ Spela (förhandsgranska den direkt, se §7) eller ⬇ Ladda ner.
- ✎ Korrigera matchning - om en titel matchade fel serie eller film, välj rätt en från kandidatposters, eller mata in titel/år/typ manuellt. Manuell text skrivs aldrig över av berikaren. ↻ Uppdatera metadata hämtar om en titel; Inställningar → Indexering kan uppdatera alla eller radera/bygga om hela indexet.
- Metadata är nyckellös som standard - TVmaze, iTunes, IMDb-dataset, Wikidata, Wikipedia och AniList kräver inga konton. En OMDb-nyckel (gratis, registrering med bara e-post - det finns en registreringshjälp i Inställningar → Indexering) förbättrar filmmatchning; en TMDB-nyckel respekteras om du redan har en.
- För dig rangordnar väggen efter en smakprofil som byggs på den här datorn utifrån din egen färdiga historik och din bevakningslista: favoritgenrer, om du lutar åt film eller serier, och ungefär vilken epok. Titlar du redan har sjunker till botten i stället för att försvinna, och en bildtext ”Eftersom du tittar på …” säger vad den tog fasta på. Utan historik faller den tillbaka på Mest postade, så fliken är aldrig tom. Inget av detta lämnar daemonen.
- Inte intresserad på en bricka döljer den titeln, och att dölja några liknande lär väggen något: den föreslår ett filter du godtar med ett klick (”Dölj alla Reality-titlar från och med nu?”). Allt du dolt, och varje inlärt filter, finns under Dolda & filter och kan ångras där.
- En liten tillgänglighetsprick på en bricka är oraklets utlåtande (§13): ett gult ”?” betyder osäkert hos dina leverantörer, rött att delarna gång på gång saknas. Hela grupper som just rensas får en rensad-markering.
7 · Förhandsgranskning & verifiering
Du behöver inte vänta på att en nedladdning blir klar för att veta att det är rätt fil. Öppna den medan den laddas ner, kontrollera att innehåll, språk och kvalitet är vad du väntade dig, och avbryt tidigt om de inte är det - i stället för att upptäcka det efter hela nedladdningen.
Den första halvan av det finns redan på sidan. Öppna raden för en nedladdning i kön (eller i historiken) så visar lådan vad som finns inne i videofilen, utläst ur de byte som hittills anlänt: upplösning, video- och ljudcodec, ljudspråk, undertexter, kapitel. En release som är fel version, fel språk eller en uppskalning avslöjar sig i den panelen långt innan nedladdningen är klar.
Sidan räknar också ut om den här webbläsaren kan spela filen, och säger det i stället för att gissa: webbläsare skiljer sig åt (Safari avkodar HEVC där Chrome inte gör det, och nästan ingen avkodar AC-3- eller DTS-ljud), så frågan ställs till den webbläsare du faktiskt sitter i. När svaret är ja öppnar ▶ Spela en spelare direkt på sidan, som visar filen medan den laddas ner. De flesta släpp är MKV, som många webbläsare vägrar att öppna trots att de kan avkoda allt inuti, så nzbfast packar om dem medan de spelas. Ingenting kodas om: bild och ljud är de ursprungliga byten i ett annat hölje, och att hoppa till ett annat ställe fungerar fortfarande. Är ljudspåret ett som den här webbläsaren inte kan avkoda och släppet bär med sig ett andra som den klarar, är det det andra spåret som spelas, så att bilden inte kommer stum. Först när webbläsaren saknar avkodare för själva videon lämnar knappen över filen till din egen mediespelare, som beskrivs nedan.
En inställning styr alltihop: Inställningar → Gränssnitt → Kontrollera en fil medan den laddas ner. Endast detaljer, standardvalet, visar panelen och erbjuder ingen spelare på sidan; Detaljer och en spelare lägger till spelaren; Av stoppar all läsning av filen - med den av öppnar ingenting en halvnedladdad fil för någon.
För att i stället kontrollera i din egen mediespelare:
- ▶ Spela på väggen (eller
/m3u/<id>) ger din mediespelare en URL; daemonen startar eller återanvänder nedladdningen bakom den. - Slutpunkten
/stream/<nzo_id>serverar filen med fullt HTTP- range-stöd medan den laddas ner. Att kontrollera valfri punkt fungerar: stickprovskolla minut 40 så flyttas artiklarna för det området fram i nedladdningskön - den öppnas där typiskt på ett par sekunder i stället för minuter. Filens huvud och svans hämtas först så att spelare hittar sin indexdata direkt. - Biblioteksläge: kategorier som listas i library_cats blir direkta
poster med enbart metadata - en
.strm-fil dyker upp direkt, tillgängligheten verifieras i bakgrunden och den riktiga nedladdningen startar när du öppnar den första gången.
/stream-URL:er. För att kontrollera från en annan maskin, använd din maskins LAN-adress i
stället för localhost./stream/<id> en token per jobb
(?t=…) - spelare kan inte skicka API-nycklar, så /m3u-överlämningen
och .strm-pekaren bäddar in den åt dig; att skapa den (/m3u)
kräver nyckeln. Rå byte-servering av en redan aktiv nedladdning förblir öppen, och
nyckellösa installationer beter sig som förr.8 · Usenet-servrar
Inställningar → Usenet-servrar är den fullständiga redigeraren: lägga till, redigera, ta bort, ordna om och ta in eller ur poolen vilken server som helst. Varje server har:
| Fält | Anmärkningar |
|---|---|
| Host / port | Använd SSL-port 563. TLS kostar inget mätbart - nzbfast krypterar alltid. |
| Användarnamn / lösenord | Lagras lokalt i config.local.json, visas aldrig tillbaka till webbläsaren. Att lämna lösenordet tomt vid redigering behåller det sparade. Lösenord är fördunklade på disk, inte krypterade. |
| Anslutningar | Samtidiga anslutningar per server. Använd Anslutningstrimning (§13) för att hitta varje providers optimala punkt i stället för att gissa högt. |
| Nivå (tier) | 0 = primär; högre nivåer är fyllnadsservrar, som bara tillfrågas om artiklar varje lägre nivå missat. Sätt obegränsade konton på 0, blockkonton på 1+. |
| Blockstorlek (GB) | För block-konton (betala per GB): nzbfast spårar livstidsförbrukning mot detta och slutar använda servern när den är slut (varning vid 85 %). |
| Varje byte faktureras | Slå på för ett konto med mätt trafik. Dina nedladdningar använder servern precis som förut; det som upphör är att nzbfast skickar den egen trafik - den automatiska anslutningstrimningen, systemtestets nätverksdel och rubrikskanningar för det inbyggda indexet hoppar alla över den. Oberoende av nivån och av blockstorleken, eftersom ett mätt konto kan vara din enda leverantör och ett obegränsat kan ligga på nivå 2. Av som standard. Det manuella Test i Anslutningstrimning (§13) fungerar fortfarande på en flaggad server och frågar först, eftersom det där är du som väljer att spendera. |
Lämna lite marginal under kontots anslutningstak. Att ställa anslutningarna en bit under taket kostar ingenting: genomströmningen planar ut långt före de sista en eller två anslutningarna, och Anslutningstrimning (§13) hamnar ändå under. Det är de lediga platserna som låter en andra enhet, ett annat program eller ett nytt försök efter en bruten socket komma in ändå, i stället för att nekas medan den här upptar varenda plats.
Du behöver inte sköta maskinens gräns för öppna filer. Systemet räknar varje anslutning som en öppen fil, och macOS startar ett program med en gräns på 256 stycken, vilket en full uppsättning anslutningar över flera servrar kan passera. På macOS och Linux höjer nzbfast den gränsen själv vid start: det ber om 65536 öppna filer och går ned via 16384, 4096 och 1024 tills systemet går med på det, aldrig över den hårda gräns systemet sätter, och det fortsätter med den gräns det hade om varje steg nekas. Windows har ingen sådan gräns per process. Andra program nöjer sig med den gräns skalet gav dem, och ett som får slut på öppna filer mitt i ett jobb kan stanna utan att säga varför i sin logg. Ställ alltså in anslutningarna per server efter vad ditt abonnemang tillåter, minus marginalen ovan, och inte efter vad du tror att maskinen tål.
Så lagras dina leverantörslösenord
Leverantörslösenord i config.local.json är fördunklade, inte
krypterade. De sparas som obf1: följt av en kodad form, så att filen
inte läses som klartext om den dyker upp i en skärmbild, ett foruminlägg, en
felrapport eller på en skärm som någon annan kan se.
Låt oss vara tydliga med vad det ger dig och vad det inte ger:
- Det är inte kryptering och skyddar inte alls mot någon som har filen. Metoden finns i vår öppna källkod och avkodaren följer med inuti nzbfast, så den som har filen får fram lösenordet på några sekunder. Behandla filen som hemlig precis som du skulle gjort om lösenorden var läsbara.
- Det tar bort den slarviga läckan, som är den vanliga. Konfigurationer klistras in i supporttrådar och fastnar på skärmbilder betydligt oftare än de stjäls från disk.
- Ett lösenord du själv skrivit in som klartext fungerar fortfarande. nzbfast läser båda formerna, så handredigerade konfigurationer och import från andra klienter går aldrig sönder; nästa gång det sparar skriver det den fördunklade formen.
- Filen skrivs dessutom läsbar endast för kontot som kör nzbfast (läge 0600 på macOS och Linux).
Som jämförelse: NZBGet och SABnzbd lagrar båda leverantörslösenord som läsbar klartext i sina konfigurationsfiler. Vi tycker att fördunkling är en liten förbättring på det, inte en säkerhetsfunktion.
Varför inte systemets nyckelring? macOS Keychain, Windows Credential Manager och Linux hemlighetstjänster skulle ge verkligt skydd, och vi kan komma att återvända till det. Två saker hindrar oss i dag. Åtkomst till nyckelringen hänger på programmets identitet, och nzbfast är ännu inte kodsignerat, så dialogerna och beteendet efter varje uppdatering blir dåliga. Och en stor andel av installationerna är Docker, skärmlösa servrar och NAS-lådor där det inte finns någon nyckelring alls, vilket skulle lämna två olika lagringsvägar att hålla korrekta. Ett enda välförstått format som beter sig likadant överallt är tills vidare den bättre affären.
Två ytterligare alternativ per server har ännu ingen kontroll i panelen: lägg in
dem för hand i serverns post i config.local.json
(se §17) och starta om.
| Nyckel | Noteringar |
|---|---|
bind_ip | Binder den här serverns utgående anslutningar till en bestämd lokal adress, för maskiner med flera utgångar och delade VPN-tunnlar. Adressfamiljen väljer också målfamiljen: en v4-bindning ansluter till serverns v4-adress. |
socks5 | Skickar den här serverns NNTP-trafik genom en SOCKS5-proxy: host:port, eller user:pass@host:port. Värdnamnet slås upp av proxyn, så det blir ingen lokal DNS-läcka. |
- Bocken bredvid varje server är dess på/av-reglage: ibockad betyder att servern är med i nedladdningspoolen, urbockad betyder inaktiverad. En inaktiverad server behåller sina inloggningsuppgifter och inställningar och går fortfarande att testa; den blir bara aldrig tillfrågad om artiklar. Raden tonas ned, räknaren i rubriken (2 av 3 aktiva) sjunker och ändringen gäller från nästa nedladdning. Bra för att spara på ett blockkonto, eller för att bevisa att en leverantör ligger bakom ett problem utan att ta bort den.
- Testa gör en riktig anslutning + TLS + inloggning och rapporterar tur-och-retur-tiden.
- Importera från SABnzbd / NZBGet… skannar de vanliga installationsplatserna, visar vad den hittade och kopierar in servrar (hoppar över dubbletter).
- Serverändringar gäller från nästa nedladdning - ingen omstart.
9 · Inställningsreferens
Nästan allt går att ställa in från panelen, under ⚙ Inställningar; de fyra
undantagen listas i slutet av det här avsnittet. Värden märkta
live gäller direkt,
restart-värden vid nästa start. Varje ändring som
görs här sparas i settings.json och överlever omstarter (värden från
gränssnittet slår flaggor på kommandoraden).
Hastighet & schemaläggning live
| Inställning | Vad den gör |
|---|---|
| Hastighetsgräns | Tak i byte/sek (50M, 1G, 0 = obegränsat). Fjärrappar kan skicka procenttal - sätt Linjehastighet så att de översätts korrekt. |
| Auto-hastighet | RTT-styrt tak som ger plats åt annan hushållstrafik och breder ut sig igen när linjen är tyst. |
| Skjut upp långsamma nedladdningar automatiskt | Ett jobb som fastnat på en långsam server medan andra väntar flyttas sist i kön (förloppet behålls). Se §13. |
| Prefetch på lediga servrar | Servrar som är onyttiga för det aktiva jobbet startar nästa köade. Se §13. |
| Auto-uppdatering / URL för uppdateringskontroll | Se §14. |
| Linjehastighet | Din anslutnings nominella hastighet - möjliggör procentuella gränser från SABnzbd-kompatibla appar. |
| Veckoschema | Radredigerare för regler per veckotid: pausa, återuppta eller sätt en hastighetsgräns vid givna dagar/tider (lokal tid). T.ex. begränsa till 20 MB/s vardagar 9–17, obegränsat annars. |
Nästa nedladdning live
Anslutningar (per server), fönster (pipelining-djup per anslutning), avkodare (parallella avkodartrådar). Provtas när varje jobb startar. Standardvärden är rätt för de flesta linjer; använd trimningsverktygen innan du höjer blint.
Kontroll under nedladdning väljer hur mycket som verifieras medan data kommer in. Fullständig bekräftar varje PAR2-block med MD5. Snabb (standard) gör anspråk på block via CRC32, vilket är 2-3x snabbare på en långsam processor, och verifierar fortfarande varje artikels egen kontrollsumma. Lätt hoppar dessutom över de artikelkontrollsummorna så snart PAR2 täcker en fil: skadan visar sig då ett ögonblick senare, vid sitt block. I alla tre använder den avslutande omgången och varje reparation full MD5, och en nedladdning utan PAR2-filer behåller sina artikelkontrollsummor.
Disk & kvot live
Minsta lediga utrymme (pausa nya jobb under det; 2 GB som standard, 0 stänger av det), nedladdningskvot per dag eller månad (UTC; Tvinga-jobb kringgår), minnesgräns - motorns RAM-budget (standard: ¼ av RAM, begränsad; höj den på en maskin med mycket RAM för maximal fart på stora jobb, och se vad lite minne kostar innan du sänker den) restart.
Flytta färdiga till: efter uppackning, städning och namnbyte flyttas
färdiga nedladdningar hit - en NAS-utdelning, en mediadisk, där ditt bibliotek
finns. Kategoristrukturen behålls (ett jobb som blev klart under
tv/ hamnar under tv/ på målet), och historiken följer
med flytten, så anslutna appar importerar och raderar på den nya platsen. Är
målet onåbart när ett jobb blir klart (utdelningen nere, slut på utrymme)
stannar filerna i nedladdningsmappen och jobbet slutförs ändå som vanligt.
Tomt = av. Mål per kategori skickar enskilda kategorier någon annanstans
(tv=/Volumes/NAS/TV, movies=/Volumes/NAS/Movies); varje listad sökväg är den kategorins mapp, så ingen extra
kategoriundermapp skapas i den. Olistade kategorier följer Flytta färdiga
till.
Djup för nästlade arkiv (standard 5) är hur många lager av arkiv-i-arkiv som packas upp automatiskt: en RAR-uppsättning som innehåller en 7z som innehåller ännu en RAR är normalt på Usenet, och nzbfast följer kedjan utan en andra omgång. Vid gränsen lämnas det djupaste arkivet helt enkelt kvar, inte vidare uppackat, och nedladdningen blir ändå färdig. Höj bara för ovanligt djupa releaser.
Auto-namnbyte & städning live
Byt namn på färdiga nedladdningar (på som standard) ger mappen och
huvudfilen ett rent, informativt namn: en film blir Example Movie (2024),
serier behåller Show - S01E02. Obfuskerade eller okända namn lämnas exakt
som de postades i stället för att gissas.
| Inställning | Vad den gör |
|---|---|
| Ta med upplösning | Lägger 1080p, 2160p… i namnet. På som standard; de andra fyra märkena är av. |
| Ta med videocodec | x265, x264, AV1… |
| Ta med ljudcodec | Atmos, DTS-HD, AC3… |
| Ta med källa | BluRay, WEB, REMUX… |
| Ta med releasegrupp | Märket -GROUP på slutet. |
| Ta bort skräpfiler | På som standard. Raderar kvarblivna .par2, .nzb, .sfv, .nfo och samplingsklipp ur färdiga film- och seriemappar. Aldrig videon eller dess undertexter. |
| Behåll bara mediefilen | Av som standard, och destruktiv: raderar permanent allt i mappen utom videon (eller videorna) och undertexterna. Varje avsnitt i ett säsongspaket behålls. Går före Ta bort skräpfiler när båda är på. |
| Namnge nedladdningar efter .nzb-filen | Av som standard. Den färdiga mappen och dess huvudfil tar namnet från .nzb-filen, i stället för det uppstädade namn som räknats fram ur releasen. Bara den största filen byter namn: resten av ett avsnittspaket, samplingen, undertexterna och .nfo-filen behåller namnen de kom med. Varje kategori kan tillåta eller neka det för sig under Dina kategorier, vilket är så du får det för en sorts nedladdning och inte en annan. |
| Keep the other words in the name | På som standard. Sport, tävlingar och andra evenemang är ofta en och samma titel upprepad hela säsongen, och bara ett ord eller två isär - "Round11 Hungary Race" mot "Round11 Hungary Qualifying". Att behålla de orden är det som hindrar en hel säsong från att falla ihop till samma namn. Gäller bara där namnet inte kunde städas upp på annat sätt, så vanliga filmer och avsnitt lämnas orörda. |
Hela gruppen körs efter reparation och uppackning och före Flytta färdiga till, och hoppas över helt för ett jobb som fortfarande väntar på lösenord. Båda raderingsstegen gäller bara releaser som känts igen som film eller serie: en programvarulast eller en oklassificerbar (obfuskerad) uppsättning städas aldrig.
Raderade filer hamnar i papperskorgen avgör vad "radera" betyder ovan. Med den på flyttar rensningen filer till systemets papperskorg, så en felgissning om vad som var skräp kan ångras; med den av raderas de direkt. Den är på som standard på macOS och Windows, där papperskorgen är någonstans du kan se och tömma, och av som standard på Linux, där den oftast inte är det.
.Trash-1000 (siffran är ditt användar-id)
högst upp på nedladdningsdisken och flyttar filerna dit i stället. Ingenting visar
dig den mappen, ingenting tömmer den, och utrymmet den håller kommer aldrig
tillbaka.
Om du körde en tidigare version av nzbfast på Linux med den på, leta efter den mappen i roten av din nedladdningsutdelning. Den är säker att tömma: allt i den är filer som en rensning redan avgjort att du inte ville ha. nzbfast tömmer den inte åt dig, för den ligger på din disk och är din att bedöma.
Mappar & behandling
Nedladdningsmapp restart, bevakningsmapp,
efterbehandlingsskript (körs efter varje jobb med SABnzbd-kompatibla argument
och SAB_*-miljö - befintliga SAB-skript fungerar oförändrade),
städtillägg (skräpfiler som raderas efter slutförande), Smarta mappar
och TV-arkivering (se §10).
Behåll .nzb-filer efter upphämtning (av som standard) lämnar kvar
original-.nzb:n i bevakningsmappen efter att den köats, i stället för att
flytta den till papperskorgen - för samlare, och för att kunna ge filen till någon när
en nedladdning strular. En kvarlämnad fil kommer nzbfast ihåg, även över omstarter, och
köar den inte igen; spara om den för att ladda ner den på nytt. Oavsett vilket har varje
jobbs detaljlåda en knapp Hämta .nzb-filen, så en kopia av vilket jobbs
.nzb som helst är aldrig mer än ett klick bort.
Sök på indexerare live
Dina konton hos NZB-indexerarsajter, en rad var, så att en sökning på väggen kan fråga dem också. Vad funktionen gör, och hur man söker med den, står i §5.
| Fält | Vad det gör |
|---|---|
| Namn | En etikett du väljer själv, och den identitet dagens räknare och gränser förs under. Att byta namn på en rad börjar en ny rad, så skriv in nyckeln igen. |
| API-adress | Sajtens API-adress. Dess vanliga webbadress räcker; en Prowlarr- eller NZBHydra2-rad ser ut som http://host:9696/1/api. |
| API-nyckel | Från din kontosida på den sajten. Stannar på den här maskinen, skickas bara till sajten den hör till, visas aldrig igen och skrivs aldrig i loggen. Tom behåller den sparade. |
| Sökningar per dag | Hur många sökningar det här kontot får göra av med per dag. 0 = obegränsat, och standard. |
| Nedladdningar per dag | Hur många hämtningar det får göra av med per dag. 0 = obegränsat. Båda räknarna börjar om vid midnatt UTC. |
| på, Testa | på är det som gör en rad sökbar; kryssa ur för att behålla ett konto utan att använda det. Testa frågar sajten vad den klarar och visar svaret, eller felet, på plats. |
Indexering live
| Inställning | Vad den gör |
|---|---|
| Inbyggd indexerare | Huvudreglaget, av tills du slår på det. Av innebär ingen skanning, inga metadatasökningar, ingen tillgänglighetsprovtagning och inget newznab-flöde; ett index som redan finns på disk behålls (det finns en raderaknapp), så att slå på igen återupptar i stället för att skanna om. |
| Grupper | Newsgroups som den inbyggda indexeraren skannar (t.ex. alt.binaries.teevee). |
| Skanningsintervall | Sekunder mellan pass (standard 900). |
| Backfill-artiklar | Headers som hämtas vid en grupps allra första skanning. |
| Fördjupa per skanning | Varje pass indexerar även så här många äldre artiklar och bygger ut din sökbara historik i bakgrunden tills Max ålder nås (standard 200 000 per pass ≈ tiotals miljoner artiklar per dygns drifttid). |
| Max ålder | Ignorera poster äldre än detta (90d, 6m, 2y) - begränsar indexstorlek och skanningstid. |
| Gallra till åldersfönstret | På som standard. Raderar även redan lagrade releaser när de blir äldre än Max ålder, så att indexet håller ungefär det fönstret i stället för att växa för alltid. Av = bara nya poster filtreras och det som redan lagrats blir kvar. Döda skräpfragment (dolda, fortfarande ofullständiga efter en vecka) rensas i vilket fall. |
| Ingest-filter | JSON-regler som filtrerar vad som kommer in i indexet: typer (obfuskerat skräp släpps som standard), år/upplösning/språk, storleksgränser. |
| Skanna nu / djup omskanning | Kör ett pass direkt; med ett djup, skanna om så här många färska headers. |
| OMDb-nyckel / metadatauppdatering / radera | Berikningskontroller för väggen (§6). Radera bygger om databasen från grunden - återställningsvägen om den någonsin blir korrupt. |
| Pre-flöde | Av tills du slår på det. Många uppladdningar publiceras utan sitt namn, och då har en genomsökning inget att läsa. Publika relräkanaler annonserar det riktiga namnet, den enda öppna vägen att para ihop sådana inlägg. Att slå på håller en anslutning till ett IRC-nät öppen och lyssnar: ingenting skickas någonsin och inget konto skapas. Kräver att indexeraren är på, för ett flöde utan någonstans att lägga det den hör är bara en socket som står öppen i onödan. |
| Reläserver, Reläkanaler | IRC-nätet som bär annonserna (värd eller värd:port) och kanalerna att lyssna i, kommaseparerade. En ändring träder i kraft vid nästa anslutning: slå av och på flödet för att tillämpa den direkt. |
| Namnge genom korrelation | De publika direktreläerna bär inga filnamn, så de flesta fördunklade inlägg går inte att para ihop direkt. Vad en annons däremot fastslår är när en utgåva dök upp och hur stor den är. Detta jämför annonserad tid och storlek med namnlösa inlägg och föreslår, när de passar, det riktiga namnet under Bläddra. Ett förslag är märkt som ett förslag, kräver din klickning och byter aldrig namn på filer på disk. |
| Tillämpa starka träffar automatiskt | Av som standard, och strikt när det är på: storleken måste stämma tätt, ingen annan annons får passa nästan lika bra, och annonsen måste välja tillbaka det här inlägget vid kontrollen åt andra hållet. Ett tillämpat namn ändrar bara hur utgåvan visas, är märkt som härlett och tas bort av sig självt om en färdig nedladdning motbevisar det. Allt svagare förblir ett förslag. |
| Annonshistorik | Direktflödet hör bara annonser som gjorts efter att det slagits på. Detta hämtar ungefär sex månader av tidigare annonser från en publik pre-databas, artigt och en gång, så att även redan indexerade inlägg kan paras ihop. Kör en halvtimme eller så i bakgrunden. |
Bibliotek, Säkerhet, Gränssnitt
Bibliotek: kategorier som behandlas som direkta biblioteksposter + omkontrollintervall. Säkerhet: den fullständiga API-nyckeln (allt) och NZB-nyckeln (enbart tillägg - säker att ge till indexersidor), båda roterbara live. Vardera rutan ersätter den nyckel den hör till så snart du lämnar fältet, och lämnar du en ruta tom behåller den nyckeln den redan har. API-nyckeln har dessutom Show, som visar och kopierar den nuvarande nyckeln så att du kan klistra in den i Sonarr, Radarr eller NZB360 när det passar dig, och Create new, som präglar en ersättare - den gamla nyckeln slutar fungera omedelbart, så allt som redan är anslutet måste få den nya. Båda är beroende av själva API-nyckeln: NZB-nyckeln för enbart tillägg kan inte läsa den, vilket är hela poängen med den nyckeln. Var nyckeln kommer ifrån på en ny installation, se §2. Gränssnitt: klickljud, skrivbords- aviseringar vid slutförande, omsorteringsintervall för providers.
Hastighetsenheter live avgör hur varje hastighet visas i panelen: megabyte (MB/s, normen bland nedladdningsprogram, standardvalet) eller megabit (Mb/s, som operatörer anger linjer). Filstorlekar står kvar i byte. Det är en egenskap hos daemonen, inte hos din webbläsare, så det gäller varje enhet som tittar på den här installationen.
Avancerat: rattarna bakom de självklara
Sex inställningar utan flagga på kommandoraden. Var och en har nu en avancerad rad på
det inställningskort som äger den, och går fortfarande att sätta via API:et
(§16), t.ex.
/api?mode=config&name=verify_mode&value=lean&apikey=…. Precis
som alla andra sparas de i settings.json.
| Namn | Vad den gör |
|---|---|
verify_mode | full | fast | lean (standard fast). lean är knuffen för långsamma processorer: som fast, men hoppar dessutom över yEnc-CRC per artikel så snart PAR2 täcker en fil, vilket ger ett CRC32-lager i stället för två. Nedladdningar utan PAR2 behåller sina artikel-CRC:er, och verifiering och reparation i slutet av jobbet är oförändrade i båda fallen. Väljaren Kontroll under nedladdning ovan är denna inställning. |
auto_retry_mins | Väntetid före det enda automatiska omförsök som ett första misslyckande med saknade artiklar får (standard 20). Propagationsfördröjning är en verklig orsak till saknade artiklar och löser sig själv; tack vare journalen hämtar omkörningen bara det som fortfarande saknas. Misslyckanden på grund av lösenord eller takedown kvalificerar sig aldrig. |
index_scan_par | Hur många grupper indexeraren skannar parallellt (standard 3, begränsat till 1-8). |
oracle_sample | Tillgänglighetsoraklets STAT-budget i vila (§13), sonderingar per timme och server. Standard 300, max 3600, 0 stänger av samplingen helt. |
predb_max_rows | Hur många pre-annonseringar flödestabellen behåller (standard 250000, begränsat till 10000-5000000). Den timvisa gallringen skär ner till den siffran och den historiska importen vägrar starta om den skulle gå förbi den, så en import lägger aldrig till rader som nästa gallring tar bort. |
predb_seed_days | Hur långt bak en historisk import når när den startas utan eget fönster (standard 180 dagar, högst 366). Ett större fönster är fler förfrågningar till pre-källan, som går i takten en varannan sekund. |
10 · Automatisering
Bevakningslista
Den enklaste automatiseringen: lägg till en titel på instrumentpanelen, sätt kvalitetspreferenser, klart. Nya releaser grabbas när de dyker upp i dina indexerade grupper; kopior med bättre kvalitet uppgraderar tidigare grabbar; en kalendervy visar vad som är på väg.
En listkälla matar bevakningslistan från en lista du har i Plex, på ett av två sätt: koppla ditt Plex-konto genom att godkänna en kort kod på Plex sida, eller klistra in adressen till en Plex-bevakningslista. Adressen fungerar som en inloggningsuppgift - den ger var och en som har den rätt att läsa listan - så den maskeras efter att den sparats. Synkning av borttagningar skiljer sig avsiktligt mellan lägena: ett kopplat konto ser hela listan, så en titel som tas bort där slutar bevakas här (redan färdiga nedladdningar blir kvar); ett adressflöde innehåller bara de senaste posterna, så frånvaro bevisar ingenting och titlar läggs bara till. Båda standardvalen kan ändras per källa.
Sök även på mina indexerarkonton efter det jag vill ha, längst ned på bevakningslistans kort, låter den fråga kontona från Inställningar → Sök på indexerare utöver ditt eget index (§5). Det börjar avstängt, för det är det enda här som gör av med ett mätt konto utan att du klickar. Påslaget frågar varje bevakad post ungefär två gånger om dagen, och bara efter det den inte redan hittat, under samma dagsgränser och med samma noteringar när ett konto hoppas över. En kandidat från en indexerare bedöms precis som en lokal, så kvalitetsgolv, uppgraderingar, säsongspaket och dubbletthantering gäller allihop, och en lokal kopia vinner varje lika-läge eftersom den inte kostar någon tilldelning. Med den inbyggda indexeraren avstängd är det detta som ger bevakningslistan något att arbeta med över huvud taget.
RSS-flöden
Inställningar → RSS: valfri newznab/indexer-RSS-URL med intervall per flöde, kategori och filterregler (titelmönster, storleksgränser). Matchande objekt laddas ner automatiskt.
Smarta mappar
Regler som utvärderas när ett jobb läggs till: matcha på mönster/nyckelord och storlek, tilldela en
kategori (första träffen vinner). Med TV-arkivering på döps färdiga TV-avsnitt om
och arkiveras som Show/Season 01/Show - S01E02.mkv -
Plex/Jellyfin-redo utan ett externt verktyg.
Schemaläggare
Veckoschemat (se §9) automatiserar pausa/återuppta/hastighet efter tid på dygnet.
Skript
Ett efterbehandlingsskript tar emot SABnzbds positionsargument och
SAB_*-miljövariabler: det stora ekosystemet av SAB-skript körs
som det är. NZBGets dialekt tillhandahålls bredvid - NZBPP_*-variabler
(DIRECTORY, NZBNAME, CATEGORY,
TOTALSTATUS, PARSTATUS, UNPACKSTATUS,
FINALDIR) och slutkoderna 93/94/95 - så kärnlogiken i ett
NZBGet-tilläggsskript körs också. Mappningen är ärlig snarare än en emulering:
reparation och uppackning sker inne i one-pass-nedladdningen, så en ren fullbordan
rapporterar PARSTATUS=0 och en reparerad PARSTATUS=2.
Skriptegna alternativformer (NZBPO_*) tillhandahålls inte.
Ett skript får lämna en hjälpprocess igång i bakgrunden när det avslutas och
nzbfast dödar den inte, men nzbfast slutar läsa skriptets utdata
i samma stund som skriptet självt blir klart: ge en bakgrundshjälpare sin egen
utdataomdirigering, annars stoppas den första gången den försöker skriva ut.
Förkö-skript
En andra krok körs innan en nedladdning hamnar i kön
(Inställningar → Mappar → Förkö-skript), med SABnzbds förkö-kontrakt:
argumenten name, pp, category, script, priority, size, group plus
SAB_*-miljön. Dess första utdatarad godtar (1)
eller avvisar (0) nedladdningen; rad 2-7 kan byta namn på den, sätta
pp, byta kategori, välja ett skript eller ändra prioriteten
(tomma rader behåller standarden). En avvisad nedladdning går till historiken som
Misslyckad med orsaken, och Försök igen från historiken tar tillbaka den utan att
fråga skriptet på nytt. Kroken kan aldrig tappa en nedladdning: om skriptet
saknas, kraschar, överskrider sin tidsbudget eller skriver något som inte är ett
utlåtande fortsätter tillägget orört och loggen säger varför.
Livscykelhändelser och signerade webhookar
Varje jobbmilstolpe är en versionerad händelse: job.added,
job.started, job.finishing, job.repaired,
job.completed, job.failed, plus
queue.idle, giveup.tripped, disk.low,
storage.slow och quota.reached. Var och en bär
schema_version (för närvarande 1; nya nycklar kan dyka upp utan höjning -
ignorera det du inte känner till), ett monotont seq och en
at-tidsstämpel i millisekunder.
För att ta emot dem, lägg till ett webhook-aviseringsmål
(Inställningar → Automatisering) och lista i dess events-fält vilka
händelsetyper det ska få - exakta typer, eller ett prefix som job.*.
Målet tar sedan emot en POST per händelse: händelsens JSON som kropp plus ett
delivery-id (<boot>-<seq>, handtaget att
avduplicera på), rubrikerna X-NzbFast-Event och
X-NzbFast-Delivery, och - när målet har en signeringshemlighet -
X-NzbFast-Signature: sha256=<hex>, en HMAC-SHA256
av exakt kroppens byte under din hemlighet (samma form som GitHubs webhookar
använder). Verifiera i Python:
expected = "sha256=" + hmac.new(secret, body, hashlib.sha256).hexdigest()
ok = hmac.compare_digest(expected, request.headers["X-NzbFast-Signature"])
Leveransen är minst-en-gång: ett mål som inte kan nås provas igen efter
10 s, 60 s och 5 min, och släpps sedan med felet visat på
målets inställningsrad. Ett HTTP-felsvar (404, 401...) provas inte igen - laga
mottagaren och använd Test. Varje mål har sin egen leveransbana, så ett som
är långsamt eller onåbart håller aldrig upp ett annat; inom en bana behåller
leveranserna den ordning händelserna skedde i, och tappas en visar
sekvensnumren luckan. De klassiska händelseorden
(completed, failed, repaired,
disk, quota) behåller sin betydelse för mänskliga
aviseringar på samma mål.
11 · Sonarr, Radarr & vänner
nzbfast talar SABnzbd-API:et native, så varje *arr fungerar direkt - och den kan agera som deras indexerare också.
Som nedladdningsklient
- I Sonarr/Radarr: Settings → Download Clients → lägg till SABnzbd.
- Host: din nzbfast-maskin · Port: 6789 · API-nyckel: din fullständiga API-nyckel (var du hittar den: §2).
- Kategori efter önskemål (t.ex.
tv/movies). Test → grön bock → Save.
Instrumentpanelen räcker dig adressen: på en installation som ännu inte laddat ner något visar välkomstkortets väg "Låt Sonarr, Radarr eller en app lägga till nedladdningar" den exakta adressen med en Copy-knapp bredvid. API-nyckeln står avsiktligt inte på den raden; den ligger kvar bakom sin egen visning i Inställningar → Säkerhet (§2).
Kö, historik, status per jobb, "remove & delete", nytt försök och kategoriroutning beter sig alla som *arr-verktygen förväntar sig.
Som en indexerare (newznab)
- Settings → Indexers → lägg till Newznab.
- URL:
http://<host>:6789/· API-sökväg:/api· nyckel: din API-nyckel. - nzbfast serverar
caps-,search-,tvsearch- ochmovie-frågor från sitt eget index över dina bevakade grupper, och/getnzb/<id>lämnar tillbaka NZB:en.
<error code="101"> i stället för ett tomt
resultat, så ett misstag syns när du lägger till indexeraren och inte veckor senare.Varför bry sig? En egen indexerare över precis de grupper du bryr dig om: inga konton, inga API-taktgränser, retention så djup som du låter den skanna. Den är ett tillägg till dina vanliga indexerare snarare än en ersättning, eftersom den bara hittar det som postats under ett riktigt filnamn.
12 · Telefon & fjärrappar
nzbfast implementerar båda de stora fjärrstyrningsprotokollen, så nästan varje mobil-/surfplatteapp fungerar. Välj det protokoll din app stödjer:
Appar som talar NZBGet (nzb360, LunaSea, NZB Unity…)
| Fält i appen | Värde |
|---|---|
| Typ | NZBGet |
| Host / port | din maskin : 6789 |
| Användarnamn | vad som helst (t.ex. nzbfast) |
| Lösenord | din API-nyckel |
Hela JSON-RPC-ytan som dessa appar använder serveras: status, kö med omordning/paus/radering, historik, add-NZB, hastighetsgräns, paus/återuppta, logg.
Appar som talar SABnzbd
| Fält i appen | Värde |
|---|---|
| Typ | SABnzbd |
| Host / port | din maskin : 6789 |
| API-nyckel | din API-nyckel (eller NZB-nyckeln för åtkomst med enbart tillägg) |
Instrumentpanelen på din telefon
Öppna bara http://<machine>:6789 i en mobilwebbläsare - hela
instrumentpanelen och väggen har en touchlayout. Panelen Inställningar → Fjärråtkomst visar
de exakta URL:erna och en QR-kod att skanna.
Nå nzbfast utifrån
Det finns ingen inloggningssida, och det är avsiktligt. En inloggning med sessionscookie är en säkerhetsyta att underhålla för alltid, och den skulle ändå vara det svagaste låset på något som står mot öppna internet. nzbfast autentiserar i stället med din API-nyckel, och tar emot nyckeln både i en förfrågningsrubrik och i URL:en (X-Api-Key eller Authorization: Bearer) - vilket är just det som låter något framför sköta inloggningen ordentligt.
Enklast är att inte publicera den alls. Installera Tailscale på den här datorn och i telefonen så hamnar båda i samma privata nät: ingenting exponeras, ingen router eller certifikat behöver röras, och Inställningar → Fjärråtkomst visar en adress som fungerar överallt så snart Tailscale körs. Välj det här om du inte uttryckligen behöver en publik domän.
nzbfast kan också servera HTTPS självt. Peka Inställningar → Säkerhet →
HTTPS-certifikat / HTTPS-privat nyckel mot ett PEM-certifikat och dess nyckel (eller
starta med --tls-cert cert.pem --tls-key key.pem), starta om, så svarar
instrumentpanelen och API:et på https:// i stället för ren HTTP - en
lyssnare, ett schema. Använd certifikatet din domän redan har (till exempel
från Let's Encrypt via certbot), eller ett självsignerat för LAN:et, vilket
webbläsare godtar efter en engångsvarning. Ett trasigt eller utgånget certifikat
vägrar start med filen namngiven, så misstaget syns där du gjorde det; förnya
genom att byta ut filerna och starta om. Native HTTPS krypterar trafiken men
lägger inte till någon inloggning, så behåll API-nyckeln satt.
Om du behöver en publik domän, sätt en omvänd proxy framför, ge den certifikatet och låt den sköta autentiseringen. Starta nzbfast med --bind 127.0.0.1 så att proxyn är enda vägen in, och peka proxyn mot 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ägg på det din proxy erbjuder: basic auth, en forward-auth-tjänst som Authelia eller Authentik, eller klientcertifikat. En sak överraskar alla - Sonarr, Radarr och telefonapparna kan inte genomföra en webbläsarinloggning, så lämna dem en väg förbi. De flesta proxyer kan släppa igenom en förfrågan med en giltig X-Api-Key-rubrik och kräva autentisering för allt annat.
13 · Prestandaverktyg
Systembenchmark
Ett klick mäter dina tre tak - nätverkshastighet (en riktig 8-sekunders multi-anslutningsprob), CPU-verifieringshastighet och diskskrivhastighet - och leder med svaret: din förväntade maximala nedladdningshastighet och vilket tak som är gränsen. Den kortaste stapeln är din flaskhals; de andra visar sin marginal. Schemalägg den (var 6:e h → veckovis) så loggas varje körning till en historiktabell, så att du kan se när din provider, ISP eller hårdvara ändrade beteende. Schemalagda körningar sker bara medan kön är i vila.
Anslutningstrimning
Mäter en provider vid stigande antal anslutningar och rekommenderar inställningen - fler sockets hjälper tills providern eller din linje mättas, och vissa providers bestraffar överbegäran. Testa alla jämför varje provider och kör dem sedan alla ihop för att kontrollera att poolen mättar din linje.
Serverdiversitet
STAT-provtar artiklar över olika åldrar på varje server och klustrar providers efter gemensamma luckor: providers med ~100 % gemensamma saknade artiklar är samma backbone (redundanta för återställning); oberoende sådana breddar verkligen din täckning. Slutar med en rekommendation i klartext.
Automatisk köintelligens
- Auto-uppskjutning: en nedladdning som stapplar på en enda långsam server medan andra jobb väntar parkeras sist (journalen behåller dess förlopp) och försöks igen när kön är fri.
- Prefetch på lediga servrar: servrar som inte kan hjälpa det aktiva jobbet (deras kopior är borta) börjar under tiden ladda ner nästa köade jobb. Ingen annan klient gör överlappning mellan jobb.
- Överlappning mellan jobb: medan ett färdigt jobbs svans (verifiering/uppackning) blir klar på disken äger nästa jobbs nedladdning redan linjen.
Tillgänglighetsoraklet
Takedowns är det främsta skälet till att en Usenet-nedladdning misslyckas, och de går att förutse: samma release försvinner hos en backbone medan en annan fortfarande har den. nzbfast för ett litet register över vad dina egna leverantörer faktiskt har svarat för, och lägger en pytteliten vilobudget på STAT-sonderingar (några hundra i timmen per server, aldrig under en nedladdning) för att hålla det aktuellt. Den laddar aldrig ner nyttolast för att ta reda på det.
Vad du får ut av det:
- Ett tillgänglighetsutlåtande på väggens brickor och indexets rader (§6): gult ”?” för osäkert hos dina leverantörer, rött för säkert borta. Ingen markering betyder att det ser bra ut.
- En rensad-markering på grupper där färska poster redan tas bort, så att du kan skilja en döende grupp från en otursförföljd release.
- Providers som oraklet dömt ut frågas sist (Inställningar, av som standard, experimentell): när kontrollen är säker på att en leverantörs backbone har tappat en release frågas den leverantören sist för den nedladdningen i stället för först. Inget tas bort, så en felbedömning kostar lite tid i stället för nedladdningen.
Utlåtandet är en förutsägelse från indicier, inte en garanti. För ett
hårt svar om en enskild NZB räknar nzbfast check
(§15) de faktiska artiklarna.
Minnesbudget - och vad lite minne kostar
Alla motorns cachar delar en budget (standard ¼ av fysiskt RAM, begränsad till
256 MB–16 GB). Sätt den uttryckligen med Minnesgräns i Inställningar, eller
--mem-limit på kommandoraden.
nzbfast är byggd för att suga upp ditt nätverk och din disk samtidigt, och RAM är det som låter den göra båda i ett pass: artiklar avkodas, verifieras och skrivs rakt till sina slutliga offset, så arkivvolymer behöver aldrig röra disken alls. Svält den på minne och inget går sönder - varje cache har en spill-väg, och motorn degraderar till mer disk-I/O i stället för att swappa eller misslyckas. Men det spillet är inte gratis, och på stora jobb kan du mäta det.
Uppmätt på en maskin och en linje (M1 Ultra, 10 GbE), samma filer vid varje budget. Varje körning gav ett korrekt, fullt verifierat, uppackat resultat:
| Jobbstorlek | Gott om RAM | 2 GB budget ≈ 8 GB maskin | 1 GB budget ≈ 4 GB maskin | 256 MB budget ≈ 2 GB NAS |
|---|---|---|---|---|
| 7 GB | 15 s | 15 s | 15 s | 15 s |
| 35 GB | 65 s | 70 s | 70 s | 65 s |
| 87 GB | 148 s | 206 s +39% | 196 s +32% | 180 s +22% |
| 190 GB | 330 s | 427 s +29% | 402 s +22% | 411 s +25% |
Toppminnet följer budgeten, inte jobbet: den 190 GB-nedladdningen blir klar i ungefär 1.1 GB RAM. Det du byter mot det är tid - och bara på stora jobb.
- Upp till ~35 GB är lite minne gratis. Arbetsuppsättningen får plats oavsett, så en 4 GB-maskin blir klar med ett sådant jobb lika snabbt som en 64 GB-maskin.
- Förbi ~87 GB betalar du 20–40 % - men bara när din linje springer om din disk. Verifieringsblock och arkivvolymer som skulle ha stannat i RAM skrivs ut och läses tillbaka i stället, och det kostar bara tid om nätverket kan leverera snabbare än disken hinner absorbera den extra trafiken. De 20–40 % ovan mättes på 10 GbE; samma 87 GB-jobb vid samma budgetar på en ~2.4 Gbps-linje visade ingen straffavgift alls (−1 till +7 %, inom brus mellan körningar). Straffet är en funktion av hur långt linjen springer om disken, inte av jobbstorleken - på en typisk hemuppkoppling är en liten budget nära gratis även på mycket stora jobb.
- Straffet planar ut. När ett jobb är stort nog att spilla spiller varje begränsad budget ungefär lika mycket - 2 GB-, 1 GB- och 256 MB-körningarna läser tillbaka i stort sett samma antal block från disk, och blir klara inom brus av varandra. Så lite mer RAM under tröskeln som helt undviker spill köper inte tillbaka kostnaden: ge den nog för att hålla jobbet i minnet, annars spelar den exakta siffran knappt någon roll.
På en liten NAS, sänk även Anslutningar (2–4) tillsammans med budgeten. Vid en 256 MB budget och 2 anslutningar stannar toppminnet nära 190 MB - bekvämt inom vad en 2 GB NAS har till övers. Var medveten om att det då är antalet anslutningar, inte minnet, som begränsar dig: samma 35 GB-jobb tog 286 s i stället för 65 s. Det är den ärliga formen på avvägningen - den blir alltid klar, och korrekt; den kommer bara inte att mätta linjen.
Benchmarks körs om för varje utgåva; metod och siffror per maskin publiceras vid sidan av resultaten.
14 · Uppdateringar
- Uppdateringar är endast avisering: nzbfast laddar aldrig ner eller byter ut sin egen binär, och det finns ingen kod i den som kan. När en ny version finns visar sidhuvudet ⬆ v X tillgänglig - ladda ner; chippen länkar till den officiella nedladdningssidan (länken är fast i appen, den kommer aldrig från uppdateringsmanifestet). Installera den nya versionen på samma sätt som du installerade den nuvarande.
- nzbfast söker efter nya versioner två gånger om dagen. Stäng av Sök efter uppdateringar (Inställningar) så kontaktar den aldrig uppdateringsmanifestet; en tom URL för uppdateringskontroll gör detsamma.
Uppdatera utan att förlora dina inställningar
En regel täcker varje installation: en uppdatering byter ut programmet, aldrig dina inställningar. Allt du har konfigurerat - servrar, sökvägar, API-nyckeln, kön - bor i en handfull filer i en enda mapp (§17), och ingen installerare, image-hämtning eller paketuppgradering rör den mappen. När inställningar ändå ser borta ut efter en uppdatering är det nästan alltid för att den nya installationen läser en annan, tom mapp, inte för att något raderades; de gamla filerna ligger kvar där de alltid har legat. §18 har återställningsstegen.
| Installation | Så uppdaterar du |
|---|---|
| macOS-appen | Öppna den nya DMG:en och dra NzbFast till Program så att den gamla ersätts. Din datamapp är separat och rörs inte. |
| Windows-installeraren | Kör den nya installeraren ovanpå den gamla installationen. Din datamapp är separat och rörs inte. |
| Docker (kommandoraden) | docker pull nzbfast/nzbfast,
ta bort den gamla containern och kör sedan den nya med exakt samma
-v-mappningar. Imagen är förbrukningsvara; den mappade
/config-mappen är din installation. Om ditt körkommando använder en
relativ sökväg som -v ./config:/config, kör det från samma katalog varje
gång - från vilken annan plats som helst är ./config en annan, tom
mapp. |
| Docker Compose | docker compose pull && docker compose
up -d, med samma compose-fil på samma plats. ./config i filen
är förankrad i filens egen mapp, så låt filen ligga kvar där den är. |
| Watchtower | Inget att göra: den återskapar containern med samma mappningar när en ny image släpps. |
| Unraid | Fliken Docker → Check for Updates → Apply
Update. Ta aldrig bort och lägg till appen på nytt för att uppdatera den; om du
någon gång ändå installerar om, behåll samma appdata-sökväg så att den hittar din
befintliga /config. |
| Synology (Container Manager) | Ladda ner den nya imagen, stoppa containern och återskapa den med samma volyminställningar - genomgången i Synology-guiden täcker det klick för klick, inklusive hur du gör det enligt schema. |
| Synology (paket) | Installera den nya .spk-filen i Package
Center; den uppgraderar på plats. |
| QNAP (paket, beta) | Installera den nya .qpkg-filen
i App Center; den uppgraderar på plats. Dina inställningar och nedladdningar
ligger utanför appens egen mapp, så varken en uppgradering eller en
avinstallation tar med dem. |
| Debian / Ubuntu (.deb) Fedora / RHEL (.rpm) | Installera det nya paketet över det gamla: sudo dpkg -i nzbfast_*.deb eller sudo rpm -U nzbfast-*.rpm. Din inställningsmapp ingår inte i paketet, så en uppgradering kan inte ersätta något i den, och dina egna ändringar i /etc/nzbfast/nzbfast.env behålls. Tjänsten startas om bara om den redan kördes. |
| Homebrew | brew upgrade nzbfast |
| Ren binär | Byt ut binären. Din config ligger kvar var du än skapade den (§17). |
-e NZBFAST_APIKEY=…, eller environment-blocket i din compose-fil
eller Unraid-mall). En nyckel som ligger där överlever varje containermissöde,
eftersom den bor på värden, i definitionen, och läggs på igen vid varje start. En
nyckel du senare sätter i Inställningar vinner fortfarande över den.15 · Kommandoraden
Allt daemonen gör går också att skripta. De vardagliga kommandona:
| Kommando | Syfte |
|---|---|
nzbfast setup | Interaktiv serverkonfiguration. |
nzbfast serve | Kör daemonen (instrumentpanel + API + automatisering). --open öppnar webbläsaren; --apikey sätter nyckeln för hand (§2); --bind väljer lyssningsadressen, standard 0.0.0.0 (varje gränssnitt), 127.0.0.1 för bara den här maskinen. Se --help för hela flagglistan; varje inställning på instrumentpanelen har en flaggtvilling. |
nzbfast get file.nzb | Ladda ner en NZB, hela rörledningen, ingen daemon. --preflight avbryter tidigt om inlägget inte kan slutföras; --password för krypterade set. |
nzbfast check file.nzb | Tillgänglighetsutlåtande - COMPLETE / REPAIRABLE / IMPOSSIBLE - utan att ladda ner nyttolast. |
nzbfast verify DIR | Verifiera filer mot PAR2-setet i en katalog. |
nzbfast sysbench | Systembenchmarken + diversitetsrapporten, i terminalen. |
nzbfast index / search | Skanna grupper till indexet / sök i det, utan daemonen. |
nzbfast import-sab | Importera servrar från en SABnzbd-ini. |
Även tillgängliga: inspect, probe,
bench, bench-cpu, soak, fetch,
spots/spot-search/spot-get (Spotnet),
predb-seed (fyller pre-databasen med tiden före flödet slogs på),
make-release-nzb/make-test-nzb (testfixturer). Varje
kommando tar --config och --help. Till dem kommer post: den laddar upp filer som
yEnc-artiklar och skriver den matchande NZB:n. Ett driftverktyg; det kräver ett
uttryckligt --post-server och väljer aldrig server åt dig.
16 · API-översikt
Bas-slutpunkt: http://host:6789/api?mode=…&apikey=…&output=json -
SABnzbd-kompatibel, så befintliga SAB-integrationer fungerar oförändrade. Två nycklar:
API-nyckeln (full kontroll) och NZB-nyckeln (enbart tillägg:
addfile/addurl). addnzblnk ingår med flit inte i uppsättningen för enbart tillägg: att lösa upp en länk kan förbruka mätt indexerarkvot, vilket en nyckel för enbart tillägg inte har med att göra.
| Område | Lägen |
|---|---|
| Kö | queue (med name=delete/pause/resume/priority/switch), pause, resume, addfile, addurl, addnzblnk, retry, set_password |
| Info | history, status/fullstatus, stats, version, server_stats, usage, log, warnings, plus /jobnzb/<nzo_id> (jobbets egen sparade .nzb tillbaka ut, kö eller historik; endast full API-nyckel) |
| Konfig | get_config, config&name=<setting>&value=… (varje inställningsfält), server_save/delete/test/enable/reorder, import_probe/apply |
| Index & vägg | index_search, index_get, index_stats, index_scan_now, wall, wall_search/fix/refresh/art, plus newznab på /api?t=caps|search|tvsearch|movie och /getnzb/<id> |
| Automatisering | watchlist, watchlist_check_now, watch_calendar, feeds, smart_folders, schedule |
| Diagnostik | sysbench, bench_history, connladder, pooltest, diversity, update_check |
| NZBGet JSON-RPC | /jsonrpc - status, listgroups, history, append, editqueue, rate, pause, log (Basic auth: valfri användare, API-nyckel som lösenord) |
| Förhandsgranskning / uppspelning | /stream/<nzo_id> (HTTP-ranges; att starta ett parkerat biblioteksjobb kräver ?t=-token eller nyckel), /m3u/<id> (kräver nyckel; skapar token), /wall, /art/… |
17 · Filer & platser
Var inställningsmappen ligger beror på hur nzbfast installerades. Denna enda mapp rymmer allt som är värt att säkerhetskopiera:
| Installation | Inställningsmapp |
|---|---|
| macOS-appen | ~/Library/Application Support/nzbfast/ |
| Windows | %LOCALAPPDATA%\nzbfast\ |
| Docker / NAS-containrar | /config inuti containern,
vilket är värdmappen du mappade till den. På Unraid är det appens
appdata-mapp. |
| Synology-paketet | /var/packages/nzbfast/var/ |
| QNAP-paketet | Oftast
/share/Download/nzbfast/config/. Mappen väljs vid installationen och
namnges i App Center-loggen; appens egen nzbfast.env noterar den
också. |
| Debian-/RPM-paket | /var/lib/nzbfast/ |
| Terminalen | Mappen du körde nzbfast setup i, eller
dit --config / $NZBFAST_CONFIG pekar. |
Och vad som finns i den:
| Fil | Innehåll |
|---|---|
config.local.json | Serverinloggningar och alternativ per server. Skapas av guiden; redigerbar i Inställningar. Håll den privat. Lösenord är fördunklade, inte krypterade. |
settings.json | Varje inställning som ändrats på instrumentpanelen. Ligger bredvid config; UI-värden åsidosätter kommandoradsflaggor. Radera en nyckel (eller filen) för att falla tillbaka på flaggor/standardvärden. |
apikey | API-nyckeln nzbfast skapade åt sig själv vid en första körning (§2). Ligger bredvid config; läsbar endast för kontot som kör nzbfast på macOS och Linux. Radera den inte för att få en ny nyckel: på en installation som redan körts ersätts den inte av något, och daemonen kommer tillbaka helt utan nyckel. Sätt en ny under Inställningar → Säkerhet i stället. |
index.db | Releaseindexet (SQLite) + väggmetadata. Säkert att radera - det byggs om från skanning (Inställningar → Indexering → Radera gör detta åt dig). |
<config>/.spool/ | Kötillstånd (överlever omstarter), NZB:er per jobb, förbrukningsjournal, benchmark-historik, cache för posteromslag. |
| Artikeljournal | Inuti varje jobbs utmapp medan det är ofullständigt - driver kraschåterupptagning och nytt försök. Tas bort vid framgång. |
| Externa verktyg | Inga behövs - RAR-uppackning och PAR2-reparation är native. Om ett exotiskt set någonsin behöver en extern unrar eller par2 som reserv letar nzbfast bredvid sin körbara fil, sedan på $PATH. |
18 · Felsökning
| Symptom | Kontrollera |
|---|---|
| Långsamma nedladdningar | Kör Systembenchmark - den namnger flaskhalsen rakt av. Om det är nätverket: kör Anslutningstrimning, kontrollera antalet anslutningar per server och bekräfta att dina providers inte alla är en och samma backbone (Serverdiversitet). |
| Långsam bara på mycket stora jobb (NAS eller maskin med lite RAM) | Förväntat, och mätbart: en svält minnesbudget spiller cachar till disk och kostar 20–40 % förbi ~87 GB. Se Minnesbudget för siffrorna och hur mycket RAM du ska ge den. Mindre jobb påverkas inte. |
| Nedladdning misslyckas "articles missing" | Inlägget har gått ut eller togs ner på dina providers. En andra provider på en annan backbone räddar de flesta av dessa. nzbfast check förutsäger detta innan nedladdning. Och väggen märker ut de sannolikt borttagna i förväg med sin
tillgänglighetsprick (§13). Ett första misslyckande av den här
formen görs om en gång av sig självt efter en väntetid, eftersom
propagationsfördröjning ser likadan ut och löser sig själv. |
| Färdigt arkiv vill ha ett lösenord | Historikraden visar 🔑 - ange lösenordet där; jobbet blir klart på plats. |
| Ett arkiv packas inte upp | Lösenords- och reparationsfel namnger sig själva i historikraden. För allt annat finns en nödutgång: Inställningar → Bevakningsmapp & efterbehandling → Packa upp med externt unrar (en avancerad inställning) lämnar uppackningen till programmet unrar som är installerat på din maskin i stället för den inbyggda uppackaren. Låt den annars vara av: den inbyggda vägen är snabbare på varje form vi har mätt, och obfuskerade poster med hashnamn använder den ändå alltid, eftersom unrar inte kan följa deras namnbyten. Samma omkopplare för nzbfast get-körningar är miljövariabeln NZBFAST_NO_NATIVE_UNRAR=1. Om unrar packar upp ett arkiv som den inbyggda uppackaren vägrade, rapportera det gärna så att vi kan laga den inbyggda vägen. |
| Sonarr/Radarr kan inte ansluta | Port 6789 nåbar? API-nyckel korrekt (full nyckel, inte NZB-nyckel)? Klienttyp satt till SABnzbd? |
| Instrumentpanelen frågar efter en API-nyckel jag aldrig satt | En ny installation skapar en åt sig själv och skriver ut den en gång vid start (§2). Den finns i filen apikey bredvid din config, och i startutskriften. Eller skriv in en egen nyckel under Inställningar → Säkerhet från en webbläsare som redan är inloggad. |
| Alla mina inställningar ser borta ut efter en uppdatering (servrar, sökvägar, API-nyckel) | Ingenting i en uppdatering raderar inställningar; det här betyder att nzbfast läser en annan, tom mapp. Först: API-nyckelfältet i Inställningar visas tomt med avsikt - klicka Show innan du drar slutsatsen att den är borta. På Docker, jämför den nya containerns /config-mappning med den gamlas: en ändrad värdsökväg, en relativ sökväg körd från en annan katalog eller en färsk appdata-mapp startar alla nzbfast från noll, medan dina riktiga inställningar ligger orörda kvar på den tidigare sökvägen. Hitta den gamla mappen (leta efter settings.json, din config-fil och apikey - platser i §17), och peka sedan antingen tillbaka mappningen mot den, eller kopiera de filerna till den nya mappen och starta om. Startloggen namnger exakt vilken inställningsfil som används: [settings] applying saved settings from … |
| Ingenting på nätverket når daemonen | Kontrollera --bind: 127.0.0.1 betjänar bara maskinen som nzbfast kör på. Standarden, 0.0.0.0, betjänar varje gränssnitt. Kontrollera sedan maskinens egen brandvägg för port 6789. |
| Bläddra-kortet förblir litet | Indexeraren växer i bakgrunden - kontrollera att grupper är satta i Inställningar → Indexering, och ge Fördjupa per skanning tid att samla historik. "Skanna nu" tvingar fram ett pass; statusraden visar live-förlopp. |
| Väggen visar fel/inget omslag | Detaljblad → ✎ Korrigera matchning eller ↻ Uppdatera metadata. Filmuppslag blir bättre med en gratis OMDb-nyckel. |
| macOS säger att programmet "nzbfast" inte kan öppnas | Två orsaker, båda snabbt åtgärdade. Om du använder den enkla -macos-universal.zip: dubbelklicka på Start nzbfast.command, inte på filen nzbfast bredvid - den är själva programmet, och Finder svarar på en dubbelklick där med precis det här meddelandet. Det är startaren som ställer i ordning allt och startar det. Om startaren ger samma meddelande har kopian tappat sin Unix-körbit på vägen: macOS bevarar den biten inuti .zip-filen, men chattappar, molndiskar och omzippning gör det inte, så en kopia som skickats vidare för hand kommer fram utan körrättighet. Ladda ner .dmg eller .zip direkt från releases-sidan så händer det inte. För att rädda kopian du redan har: öppna Terminal, skriv chmod +x med ett mellanslag efter, dra Start nzbfast.command och filen nzbfast till fönstret och tryck Retur - dubbelklicka sedan på startaren igen. |
| Daemonen vill inte starta: porten upptagen | En annan instans körs - eller ändra --port. |
| Var finns loggarna? | Logg-kortet på instrumentpanelen, eller terminalen/loggfilen du startade serve med. |
nzbfast --version.nzbfast - den här handboken följer med varje utgåva. Inställningar, slutpunkter och standardvärden som refereras här matchar den version den levererades med.