⚡ nzbfast

מוריד ה-Usenet המהיר - מדריך למשתמש

1 · ברוכים הבאים

nzbfast מוריד מ-Usenet מהר ככל שהקו שלך, הספקים שלך והמכונה שלך מתירים - ובדרך כלל זה אומר מהר כמו הקו שלך. זהו תוכנית עצמאית יחידה: המנוע, לוח מחוונים בדפדפן, דפדפן מדיה של קיר פוסטרים, אינדקסר מובנה, תצוגה מקדימה בזמן אמת, תיקון PAR2 מקורי, וחילוץ RAR מקורי - כולם בתוך קובץ הפעלה אחד. אין שום דבר אחר להתקין.

מה שהופך אותו למהיר הוא ארכיטקטורה, לא כיוונונים:

נמדד מול השדה על חומרה, משימות וספקים זהים, nzbfast סיים הורדה של 190 GB תוך כ-5 דקות על קו 10 GbE - כאשר החלופות המובילות פיגרו ב-30–220% באותן בדיקות, היכן שהשלימו אותן בכלל. המספרים נמצאים ב-§3.

2 · התחלה מהירה

macOS

  1. פתח את nzbfast-<version>-macos.dmg וגרור את NzbFast אל Applications (אוניברסלי: Apple Silicon + Intel).
  2. הפעלה ראשונה: macOS מזהיר ש-nzbfast עדיין אינו מאושר-נוטריון של Apple. לחץ ימני על האפליקציה → Open - או פתח את System Settings → Privacy & Security, גלול למטה, ולחץ Open Anyway. זהו שלב חד-פעמי.
  3. חלון האפליקציה מציג את לוח המחוונים עם כרטיס ברוכים הבאים - לחץ עליו והוסף לפחות שרת Usenet אחד (מארח, פורט 563, שם משתמש, סיסמה). אפשר להוסיף עוד מאוחר יותר ב-Settings.
  4. הנח קובץ .nzb בכל מקום על לוח המחוונים - או פשוט לחץ פעמיים על קובצי .nzb ב-Finder. הורדות נוחתות ב- ~/Downloads/nzbfast. צא מהתפריט; הורדות מתחדשות היכן שהופסקו.

מעדיף בלי אפליקציה? ה-zip הפשוט (בינארי + משגר Start nzbfast.command, אותו מנוע) עדיין עובד כמו קודם - השלבים למטה תחת "מטרמינל".

Windows

  1. הרץ את nzbfast-setup-<version>.exe. הוא מותקן למשתמש שלך בלבד (בלי סיסמת מנהל). מכיוון שמהדורה זו עדיין אינה חתומה בקוד, SmartScreen עשוי להציג "Windows protected your PC" - לחץ More infoRun anyway.
  2. nzbfast חי במגש המערכת: לחץ פעמיים על סמל המגש (או השתמש ב- Open Dashboard בתפריט הלחיצה הימנית שלו) כדי לפתוח את לוח המחוונים, ואז הוסף את שרת ה-Usenet שלך מכרטיס ברוכים הבאים. תפריט המגש כולל גם השהיה/חידוש, תיקיית ההורדות שלך, ויציאה.
  3. לחיצה כפולה על קובץ .nzb מכניסה אותו לתור. Windows Defender עשוי לבקש פעם אחת לאפשר האזנה לרשת מקומית - אפשר זאת.

מעדיף עותק נייד? ה--windows-x64.zip עדיין עובד: חלץ בכל מקום ולחץ פעמיים על nzbfast.exe (או Start nzbfast.bat) עבור אשף הטרמינל.

מטרמינל (כל פלטפורמה)

nzbfast setup            # interactive server setup (writes config.local.json)
nzbfast serve --open     # start the daemon and open the dashboard
טיפכבר הרצת SABnzbd או NZBGet? דלג על הקלדת אישורים: Settings → Usenet servers → Import from SABnzbd / NZBGet… מוצא את ההתקנה הקיימת שלך ומעתיק את השרתים שלה. יש גם nzbfast import-sab בשורת הפקודה.

3 · איך nzbfast עובד

אוצר מילים מהיר כדי ששאר המדריך ייקרא בקלות:

מונחמשמעות
ספק / שרתשירות Usenet שיש לך חשבון אצלו (Newshosting, Eweka, XS News…). כל אחד מתיר מספר מסוים של חיבורים בו-זמניים.
עמוד שדרההתשתית שמאחורי ספק. מותגים רבים לעתים קרובות מוכרים מחדש את אותו עמוד שדרה - כדאי לדעת, כי שני ספקים על עמוד שדרה אחד מחמיצים את אותם מאמרים. ראה גיוון שרתים.
NZBקובץ XML קטן המפרט את המאמרים שמרכיבים פוסט. זה מה שאתה מזין ל-nzbfast.
PAR2נתוני שחזור המפורסמים לצד רליס. nzbfast מאמת מולם תוך כדי ההורדה ומתקן אוטומטית כשמאמרים פגומים או חסרים.
RAR במצב אחסוןרוב הרליסים ארוזים בכרכי RAR ללא דחיסה. nzbfast מזהה זאת וכותב את הקובץ הפנימי ישירות ל מיקומו הסופי תוך כדי הורדה - בלי שלב פריקה אחר כך.

הצינור מריץ הורדה → פענוח → אימות → חילוץ בו-זמנית. כרטיס הצינור בלוח המחוונים מציג את כל שלושת המסלולים נעים בבת אחת. כשהבייט האחרון מגיע, האימות כבר הסתיים והקובץ כבר מחולץ; זמן "עיבוד לאחר הורדה" של משימה טיפוסית הוא אפס. אם נדרש תיקון, רק אז כרכים ממומשים לדיסק, מתוקנים במקום על ידי מנוע ה-GF(2¹⁶) המקורי (נתונים מעורפלים ששמם שונה או הוזזו בבייטים נמצאים ומאומצים על ידי סריקת בלוקים מחליקה), ומחולצים מחדש - הכול אוטומטי.

הורדות שהופרעו (קריסה, אובדן חשמל, kill -9) מתחדשות מ יומן המאמרים: בייטים שכבר על הדיסק לעולם לא מורדים פעמיים. היומן מתעד היכן נחתו הבייטים של כל מאמר פיזית - אפילו בייטים ש חולצו ישירות אל הקובץ הסופי - כך שחידוש בונה מחדש מהדיסק המקומי ו מאמת מחדש כל מה ששיחזר מול מפת בלוקי ה-PAR2 לפני שהוא סומך עליו.

איך זה משתווה

נמדד מול SABnzbd 5.0.4 ו-NZBGet 26.2 על אותה מכונה, אותם ספקים ואותם קובצי NZB, מתוזמן לקובץ שמיש - הורדה, אימות, תיקון וחילוץ כלולים כולם, כי אז המשימה באמת מסתיימת:

גודל משימהnzbfastNZBGet 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%

הפער הוא העיבוד לאחר הורדה שהאחרים עדיין צריכים לבצע לאחר שהבייט האחרון נוחת. שני המתחרים כווננו לצורך ההשוואה, לא הושארו בברירות מחדל - SABnzbd בפרט מגיע עם צנרת בקשות כבויה, מה שעולה לו ביוקר, אז היא הופעלה.

שני הבדלים חשובים באותה מידה כמו הזמנים:

חידוש לאחר קריסה, נמדדהרוג הורדה באמצע התעופה (kill -9 ב-15 GB של משימת 34.5 GB) והחידוש מוריד מחדש ~0.3 GB - רק את המאמרים שהיו באמת בתעופה בזמן ההריגה - מול 0.2 GB של NZBGet באותה בדיקה. זה היה פעם הפסד שפרסמנו (15.3 GB הורדו מחדש, כשהיומן לא יכל להסביר בייטים שחולצו ישירות); יומן המיקום תיקן זאת: החידוש משחזר את הבייטים האלה מקובצי הפלט המקומיים ומאמת מחדש כל בייט משוחזר מול מפת בלוקי ה-PAR2 לפני שהוא סומך עליו. כל תרחיש שאנחנו מפסידים מתפרסם לצד הניצחונות, עם השיטה המלאה והמספרים הגולמיים.

4 · לוח המחוונים

פתח את http://localhost:6789 (או את הכתובת של המכונה שלך ממכשיר אחר - פריסת הטלפון מסתגלת אוטומטית). הכול מתעדכן חי, פעם בשנייה. הכרטיסים, מלמעלה למטה:

סרגל כותרת

תפוקה

MB/s חי עם גרף מתגלגל; סימני המים המקווקווים מסמנים את השיא/שפל של הסשן הזה, הקו הדהוי הוא ממוצע נע. מתחתיו, היסטוגרמה מציגה איך דגימות המהירות של הסשן מתפלגות - טיפוסי מול שיא. הרחב את החלון והגרפים מציגים יותר היסטוריה (עד שעה).

אריחי סטטיסטיקה

הורד בסשן זה, עומק התור, ספירות הושלמו/נכשלו, מהירות שיא הסשן.

משאבים - מכונה אחת, ארבע תקרות

מעבד, RAM (מול תקציב הזיכרון של nzbfast), קצב כתיבה לדיסק ורשת על גרף מנורמל אחד, עם ערכים אמיתיים במקרא ואזהרת מקום-נמוך. שום קליינט NZB אחר לא מראה לך זאת; הוא קיים כדי להוכיח נקודה - nzbfast ימצה את הקו שלך, לא את המכונה שלך.

צינור - שלבים חופפים

שלושה מסלולים: הורדה, אימות (בלוקי PAR2 נבדקים), חילוץ. במשימה בריאה כל השלושה נעים יחד.

ספקים

קצב חי לכל שרת, ניצול חיבורים, נתח מהתעבורה, GB לסשן, ו ניקוד השלמת מאמרים לכל החיים (צבוע כששרת יורד מתחת ל-98%). גרף שטח מוערם מציג את תרומת כל ספק לאורך זמן. שורות מתמיינות לפי ביצועים חיים כל 10 שנ' (ניתן להגדרה ב-Settings → Interface) כך שהספק המהיר ביותר שלך תמיד למעלה.

תור

עיון באינדקס

חפש בכל מה שהאינדקסר המובנה קטלג מהקבוצות במעקב שלך (ראה אוטומציה) והורד בלחיצה אחת - בלי אינדקסר חיצוני. שורת הסטטוס מציגה את התקדמות הסריקה; סרוק עכשיו מכריח מעבר.

רשימת מעקב

הוסף כותרים לפי שם - כולל כאלה שעדיין לא פורסמו. כשרליס מתאים מופיע באינדקס הוא נתפס אוטומטית, עם העדפות איכות וכללי שדרוג (עותק טוב יותר מחליף גרוע יותר).

היסטוריה

הורדות אחרונות עם סטטוס, גודל, מיקום; משימות שנכשלו מציעות נסה שוב (מתחדש מהיומן). ארכיונים מוצפנים מציגים בקרת שחרור 🔑 - הזן את הסיסמה והמשימה מסתיימת במקום. רצועת תקינות-האימות מגרפת בלוקי PAR2 פגומים לכל הורדה - זנב עולה פירושו שמאמרים מגיעים פגומים.

שימוש בנתונים

פסים יומיים לכל ספק וסה"כ היום / 7 ימים / 30 ימים - חיוני לחשבונות מדודים ובלוק. חשבונות בלוק מציגים שימוש לכל החיים מול גודלם.

יומן, בדיקת ביצועי מערכת, כוונון חיבורים, גיוון שרתים

מציג יומן בעמוד, ושלושת כלי המדידה-העצמית המתוארים ב כלי ביצועים.

5 · הוספת הורדות

שיטהאיך
גרור והשלךהנח קובץ .nzb אחד או יותר בכל מקום על לוח המחוונים.
תיקיית מעקבהגדר תיקייה ב-Settings; כל .nzb שנשמר בתוכה נקלט תוך 5 שניות והקובץ מוסר. כוון אליה את תיקיית ההורדות של הדפדפן שלך לתפיסות בלחיצה אחת מאתרי אינדקסרים.
מכתובת URLהדבק קישור NZB (API mode=addurl, או דרך כל אפליקציה מחוברת).
עיון באינדקסלחץ על כל רליס שלם בכרטיס העיון.
רשימת מעקב / RSSאוטומטי - ראה אוטומציה.
Sonarr/Radarr וכו'הם שולחים תפיסות ישר לתור - ראה §11.
שורת פקודהnzbfast get file.nzb מוריד בלי הדימון.

קטגוריות, עדיפויות, סיסמאות

6 · קיר הפוסטרים

לחץ 🎬 קיר בכותרת. הקיר הופך את האינדקס שלך לדפדפן מדיה: כל סרט ורליס טלוויזיה שזוהה כאריח פוסטר עם דירוג, שנה, ז'אנרים, שחקנים ותקציר - קבוצות הדיון שלך, ניתנות לעיון כקטלוג.

7 · תצוגה מקדימה ואימות

אתה לא חייב להמתין לסיום ההורדה כדי לדעת שזה הקובץ הנכון. פתח אותו תוך כדי ההורדה, בדוק שהתוכן, השפה והאיכות הם מה שציפית, ובטל מוקדם אם לא - במקום לגלות זאת רק אחרי ההורדה המלאה.

הערת נגןVLC, IINA, mpv ו-Infuse כולם פותחים כתובות /stream. לבדיקה ממכונה אחרת השתמש בכתובת ה-LAN של המכונה שלך במקום localhost.
הערת אימותעם מפתח API מוגדר, פתיחת רשומת ספרייה חונה דרך /stream/<id> דורשת אסימון לכל משימה (?t=…) - נגנים לא יכולים לשלוח מפתחות API, כך שמסירת ה-/m3u ומצביע ה-.strm משבצים אותו עבורך; יצירתו (/m3u) דורשת את המפתח. הגשת בייטים פשוטה של הורדה שכבר פעילה נשארת פתוחה, ו התקנות ללא מפתח מתנהגות כמו קודם.

8 · שרתי Usenet

Settings → Usenet servers הוא העורך המלא: הוספה, עריכה, הסרה, שינוי סדר, והכנסה או הוצאה של כל שרת מהמאגר. לכל שרת יש:

שדההערות
מארח / פורטהשתמש בפורט SSL 563. TLS לא עולה שום דבר מדיד - nzbfast תמיד מצפין.
שם משתמש / סיסמהנשמרים מקומית ב-config.local.json, לעולם לא מוצגים חזרה לדפדפן. השארת סיסמה ריקה בעריכה שומרת על השמורה.
חיבוריםחיבורים בו-זמניים לכל שרת. השתמש ב-כוונון חיבורים (§13) כדי למצוא את הנקודה המתוקה של כל ספק במקום לנחש גבוה.
דרגה (רמה)0 = ראשי; רמות גבוהות יותר הן שרתי מילוי, נשאלים רק על מאמרים שכל רמה נמוכה יותר החמיצה. שים חשבונות ללא הגבלה ב-0, חשבונות בלוק ב-1+.
גודל בלוק (GB)לחשבונות בלוק (תשלום-לכל-GB): nzbfast עוקב אחר שימוש לכל החיים מול זה ומפסיק להשתמש בשרת כשמנוצל (אזהרה ב-85%).

לשתי אפשרויות נוספות לכל שרת עדיין אין פקד בלוח הבקרה: הוסף אותן ידנית ברשומה של אותו שרת בקובץ config.local.json (ראה §17) והפעל מחדש.

מפתחהערות
bind_ipקושר את החיבורים היוצאים של השרת הזה לכתובת מקומית מסוימת, למכונות עם כמה יציאות ולמנהרות VPN מפוצלות. משפחת הכתובות בוחרת גם את משפחת היעד: קשירת v4 מתחברת לכתובת ה-v4 של השרת.
socks5שולח את תעבורת ה-NNTP של השרת הזה דרך פרוקסי SOCKS5: host:port, או user:pass@host:port. שם המארח נפתר על ידי הפרוקסי, כך שאין דליפת DNS מקומית.
המלצהשני ספקים על עמודי שדרה שונים מנצחים שלושה על אותו אחד. הרץ גיוון שרתים (§13) כדי לראות אילו מהספקים שלך באמת מגוונים את הכיסוי שלך ואילו הם עותקים כפולים זה של זה.

9 · מדריך הגדרות

כמעט הכול ניתן להגדרה מלוח הבקרה, תחת ⚙ הגדרות; ארבעת היוצאים מן הכלל מפורטים בסוף הפרק. ערכים המסומנים live חלים מיד; ערכי restart חלים בהפעלה הבאה. כל שינוי שנעשה כאן נשמר אל settings.json ושורד הפעלות מחדש (ערכי הממשק גוברים על דגלי שורת הפקודה).

מהירות ותזמון חי

הגדרהמה היא עושה
מגבלת מהירותתקרה בבייטים/שנ' (50M, 1G, 0 = ללא הגבלה). אפליקציות מרוחקות עשויות לשלוח אחוזים - הגדר מהירות קו כדי שיתורגמו נכון.
מהירות אוטומטיתתקרה מווסתת-RTT שמפנה מקום לתעבורה ביתית אחרת ומתרחבת מחדש כשהקו שקט.
דחייה אוטומטית של הורדות איטיותמשימה תקועה על שרת איטי אחד בזמן שאחרות ממתינות מועברת לסוף התור (ההתקדמות נשמרת). ראה §13.
טעינה מקדימה בשרתים פנוייםשרתים חסרי-תועלת למשימה הפעילה מתחילים את הבאה בתור. ראה §13.
עדכון אוטומטי / כתובת בדיקת עדכוניםראה §14.
מהירות קוהמהירות המדורגת של החיבור שלך - מאפשרת מגבלות אחוזים מאפליקציות תואמות-SABnzbd.
תזמון שבועיעורך שורות לכללי זמן-בשבוע: השהה, המשך, או קבע מגבלת מהירות בימים/שעות נתונים (שעון מקומי). לדוגמה הגבל ל-20 MB/s בימי חול 9–17, ללא הגבלה אחרת.

הורדה הבאה חי

חיבורים (לכל שרת), חלון (עומק צנרת לכל חיבור), מפענחים (חוטי פענוח מקבילים). נדגמים כשכל משימה מתחילה. ברירות המחדל נכונות לרוב הקווים; השתמש בכלי הכוונון לפני העלאה עיוורת.

אימות מהיר (CRC32) (פעיל כברירת מחדל) תובע בלוקים של PAR2 לפי CRC32 בלבד בזמן שההורדה עוד רצה, וזה מהיר פי 2-3 במעבד איטי. סכום הביקורת של כל מאמר נבדק בכל זאת, והמעבר המסכם משתמש תמיד ב-MD5 מלא: לא מוותרים כאן על נכונות. בטל את הסימון כדי לחשב MD5 לכל בלוק גם במהלך ההורדה.

דיסק ומכסה חי

שטח פנוי מינימלי (השהה משימות חדשות מתחתיו), מכסת הורדה ל יום או חודש (UTC; משימות כפייה עוקפות), מגבלת זיכרון - תקציב ה-RAM של המנוע (ברירת מחדל: ¼ מה-RAM, עם תקרה; העלה אותו על מכונת RAM-גדול למהירות מרבית במשימות ענק, וראה מה עולה זיכרון נמוך לפני הורדתו) הפעלה מחדש.

העבר את שהושלמו אל: אחרי פריסה, ניקוי ושינוי שם, הורדות שהסתיימו עוברות לכאן - שיתוף NAS, כונן מדיה, היכן שהספרייה שלך נמצאת. מבנה הקטגוריות נשמר (משימה שהסתיימה תחת tv/ נוחתת ביעד תחת tv/), וההיסטוריה עוקבת אחרי ההעברה, כך שאפליקציות מחוברות מייבאות ומוחקות במיקום החדש. אם היעד אינו נגיש כשמשימה מסתיימת (שיתוף לא מחובר, אין מקום), הקבצים נשארים בתיקיית ההורדות והמשימה מסתיימת בכל זאת כרגיל. ריק = כבוי. יעדים לפי קטגוריה מפנים קטגוריות מסוימות למקום אחר (tv=/Volumes/NAS/TV, movies=/Volumes/NAS/Movies); כל נתיב שהוגדר הוא תיקיית הקטגוריה עצמה, ולכן לא נוצרת בתוכו תת-תיקיית קטגוריה נוספת. קטגוריות שלא הוגדרו פועלות לפי העבר את שהושלמו אל.

עומק ארכיונים מקוננים (ברירת מחדל 5) הוא מספר שכבות הארכיון-בתוך-ארכיון שנפרסות אוטומטית: מערך RAR שמכיל 7z שמכיל RAR נוסף הוא דבר רגיל ביוזנט, ו-nzbfast עוקב אחר השרשרת בלי מעבר שני. בגבול, הארכיון העמוק ביותר פשוט נשאר במקומו, בלי פריסה נוספת, וההורדה מסתיימת בכל זאת. העלה את הערך רק עבור רליסים עמוקים במיוחד.

שינוי שם וניקוי אוטומטיים live

שנה שמות של הורדות שהסתיימו (פעיל כברירת מחדל) נותן לתיקייה ולקובץ הראשי שם נקי ומובן: סרט הופך ל-Example Movie (2024), וסדרות שומרות על Show - S01E02. שמות מעורפלים או בלתי מזוהים נשארים בדיוק כפי שפורסמו במקום שינחשו.

הגדרהמה היא עושה
כלול רזולוציהמוסיף 1080p, 2160p… לשם. פעיל כברירת מחדל; ארבעת התגים האחרים כבויים.
כלול קודק וידאוx265, x264, AV1
כלול קודק אודיוAtmos, DTS-HD, AC3
כלול מקורBluRay, WEB, REMUX
כלול קבוצת רליסהתג -GROUP בסוף.
הסר קובצי זבלפעיל כברירת מחדל. מוחק שאריות .par2, .nzb, .sfv, .nfo וקטעי דוגמה מתיקיות סרטים וסדרות שהסתיימו. לעולם לא את הווידאו או הכתוביות שלו.
שמור רק את קובץ המדיהכבוי כברירת מחדל, והרסני: מוחק לצמיתות כל מה שבתיקייה חוץ מהווידאו (או הווידאו־אים) והכתוביות. כל פרק בחבילת עונה נשמר. גובר על הסר קובצי זבל כששניהם פעילים.

הקבוצה כולה פועלת אחרי התיקון והפריסה ולפני העבר את שהושלמו אל, ומדולגת לגמרי עבור משימה שעדיין ממתינה לסיסמה. שני שלבי המחיקה חלים רק על רליסים שזוהו כסרט או כסדרה: מטען תוכנה או מערך שלא ניתן לסווג (מעורפל) לעולם אינו מנוקה.

תיקיות ועיבוד

תיקיית הורדות הפעלה מחדש, תיקיית מעקב, סקריפט עיבוד לאחר הורדה (רץ אחרי כל משימה עם ארגומנטים תואמי-SABnzbd וסביבת SAB_* - סקריפטי SAB קיימים עובדים ללא שינוי), סיומות ניקוי (קבצי זבל נמחקים לאחר השלמה), תיקיות חכמות ו-תיוק TV (ראה §10).

אינדוקס חי

הגדרהמה היא עושה
קבוצותקבוצות דיון שהאינדקסר המובנה סורק (לדוגמה alt.binaries.teevee).
מרווח סריקהשניות בין מעברים (ברירת מחדל 900).
מאמרי מילוי לאחורכותרות שמורדות בסריקה הראשונה של קבוצה.
העמקה בכל סריקהכל מעבר גם מאנדקס כמות זו של מאמרים ישנים יותר, ומגדיל את ההיסטוריה הניתנת לחיפוש ברקע עד שמגיעים לגיל מרבי (ברירת מחדל 200,000 לכל מעבר ≈ עשרות מיליוני מאמרים ליום פעילות).
גיל מרביהתעלם מפוסטים ישנים מזה (90d, 6m, 2y) - מגביל את גודל האינדקס וזמן הסריקה.
גיזום לחלון הגילפעיל כברירת מחדל. מוחק גם רליסים שכבר נשמרו ברגע שהם מזדקנים מעבר לגיל המרבי, כך שהאינדקס מחזיק בערך את החלון הזה במקום לגדול לנצח. כבוי = רק פוסטים חדשים מסוננים, ומה שנשמר נשאר. שברי זבל מתים (מוסתרים, עדיין חלקיים אחרי שבוע) נאספים כך או כך.
שערי קליטהכללי JSON המסננים מה נכנס לאינדקס: סוגים (זבל מעורפל נזרק כברירת מחדל), שנה/רזולוציה/שפה, גבולות גודל.
סרוק עכשיו / סריקה עמוקה מחדשהרץ מעבר מיד; עם עומק, סרוק מחדש כמות זו של כותרות אחרונות.
מפתח OMDb / רענון מטא-נתונים / מחיקהבקרות העשרת קיר (§6). מחיקה בונה מחדש את מסד הנתונים מאפס - נתיב השחזור אם הוא אי פעם נפגם.

ספרייה, אבטחה, ממשק

ספרייה: קטגוריות המטופלות כרשומות ספרייה מיידיות + מרווח בדיקה חוזרת. אבטחה: מפתח ה-API המלא (הכול) ומפתח ה-NZB (הוספה בלבד - בטוח לתת לאתרי אינדקסרים), שניהם ניתנים להחלפה חי. ממשק: צלילי לחיצה, התראות שולחן עבודה בהשלמה, מרווח מיון מחדש של ספקים.

יחידות מהירות live קובע כיצד מוצגת כל מהירות בלוח הבקרה: מגה-בייט (MB/s, המקובל במנהלי הורדות, ברירת המחדל) או מגה-ביט (Mb/s, כפי שספקיות מציינות קווים). גדלי קבצים נשארים בבתים בכל מקרה. זו תכונה של הדימון ולא של הדפדפן שלך, ולכן היא חלה על כל מכשיר שמביט בהתקנה הזאת.

מתקדם: הגדרות בלי פקד בלוח הבקרה

לארבע הגדרות אין פקד בממשק ואין דגל בשורת הפקודה. קבע אותן דרך ה-API (§16), למשל /api?mode=config&name=verify_mode&value=lean&apikey=…. כמו כל היתר הן נשמרות אל settings.json.

שםמה היא עושה
verify_modefull | fast | lean (ברירת מחדל fast). lean הוא הדחיפה למעבדים איטיים: כמו fast, אך מדלג גם על ה-CRC של yEnc לכל מאמר ברגע ש-PAR2 מכסה קובץ, ומשאיר שכבת CRC32 אחת במקום שתיים. הורדות ללא PAR2 שומרות על ה-CRC של המאמרים, והאימות והתיקון בסוף המשימה אינם משתנים בשני המקרים. אימות מהיר שלמעלה הוא אותו פקד עצמו עבור full מול fast.
auto_retry_minsההמתנה לפני הניסיון החוזר האוטומטי היחיד שכישלון ראשון עם מאמרים חסרים מקבל (ברירת מחדל 20). השהיית התפוצה היא סיבה אמיתית למאמרים חסרים והיא נפתרת מעצמה; בזכות היומן, ההרצה החוזרת מביאה רק את מה שעדיין חסר. כישלונות בגלל סיסמה או הסרה לעולם אינם נכללים.
index_scan_parכמה קבוצות המאנדקס סורק במקביל (ברירת מחדל 3, מוגבל ל-1-8).
oracle_sampleתקציב ה-STAT בהמתנה של אורקל הזמינות (§13), בדיקות לשעה לכל שרת. ברירת מחדל 300, מקסימום 3600, 0 מכבה את הדגימה לחלוטין.

10 · אוטומציה

רשימת מעקב

האוטומציה הפשוטה ביותר: הוסף כותר בלוח המחוונים, קבע העדפות איכות, סיימת. רליסים חדשים נתפסים כשהם מופיעים בקבוצות המאונדקסות שלך; עותקים באיכות טובה יותר משדרגים תפיסות קודמות; תצוגת לוח שנה מציגה מה עומד להגיע.

פידי RSS

Settings → RSS: כל כתובת RSS של newznab/אינדקסר עם מרווח לכל פיד, קטגוריה ו כללי מסנן (תבניות כותר, גבולות גודל). פריטים מתאימים מורדים אוטומטית.

תיקיות חכמות

כללים המוערכים כשמשימה מתווספת: התאם לפי תבנית/מילות מפתח וגודל, הקצה קטגוריה (ההתאמה הראשונה מנצחת). עם תיוק TV פעיל, פרקי טלוויזיה שהסתיימו מקבלים שם חדש ומתויקים כ-Show/Season 01/Show - S01E02.mkv - מוכן ל-Plex/Jellyfin בלי כלי חיצוני.

מתזמן

התזמון השבועי (ראה §9) מבצע אוטומציה של השהיה/חידוש/מהירות לפי שעה ביום.

סקריפטים

סקריפט עיבוד לאחר הורדה מקבל את הארגומנטים המיקומיים של SABnzbd ו משתני סביבה SAB_* - המערכת האקולוגית הגדולה של סקריפטי SAB רצה כמות שהיא.

11 · Sonarr, Radarr וחברים

nzbfast דובר את ה-API של SABnzbd באופן מקורי, כך שכל *arr עובד מהקופסה - והוא יכול לשמש גם כאינדקסר שלהם.

כקליינט ההורדות

  1. ב-Sonarr/Radarr: Settings → Download Clients → הוסף SABnzbd.
  2. מארח: מכונת ה-nzbfast שלך · פורט: 6789 · מפתח API: מפתח ה-API המלא שלך (Settings → Security; בקרת ה-QR/העתקה נמצאת לידו).
  3. קטגוריה כרצונך (לדוגמה tv / movies). בדיקה → סימון ירוק → שמור.

תור, היסטוריה, סטטוס לכל משימה, "הסר ומחק", ניסיון חוזר וניתוב קטגוריות כולם מתנהגים כפי שה-*arrs מצפים.

כאינדקסר (newznab)

  1. Settings → Indexers → הוסף Newznab.
  2. כתובת: http://<host>:6789/ · נתיב API: /api · מפתח: מפתח ה-API שלך.
  3. nzbfast מגיש שאילתות caps, search, tvsearch ו movie מהאינדקס שלו עצמו של הקבוצות במעקב שלך, ו /getnzb/<id> מחזיר את ה-NZB.
למה לטרוח?אינדקסר בהתארחות עצמית של בדיוק הקבוצות ש חשובות לך: בלי חשבונות, בלי מגבלות פגיעות API, שמירה עמוקה ככל שתיתן לו לסרוק.

12 · טלפון ואפליקציות מרחוק

nzbfast מיישם את שני פרוטוקולי השליטה-מרחוק המרכזיים, כך שכמעט כל אפליקציית נייד/טאבלט עובדת. בחר את הפרוטוקול שהאפליקציה שלך תומכת בו:

אפליקציות שדוברות NZBGet (nzb360, LunaSea, NZB Unity…)

שדה באפליקציהערך
סוגNZBGet
מארח / פורטהמכונה שלך : 6789
שם משתמשכל דבר (לדוגמה nzbfast)
סיסמהה-מפתח API שלך

כל משטח ה-JSON-RPC שהאפליקציות האלה משתמשות בו מוגש: סטטוס, תור עם סידור מחדש/השהיה/מחיקה, היסטוריה, הוספת-NZB, מגבלת מהירות, השהיה/חידוש, יומן.

אפליקציות שדוברות SABnzbd

שדה באפליקציהערך
סוגSABnzbd
מארח / פורטהמכונה שלך : 6789
מפתח APIמפתח ה-API שלך (או מפתח ה-NZB לגישת הוספה-בלבד)

לוח המחוונים בטלפון שלך

פשוט פתח את http://<machine>:6789 בדפדפן נייד - כל לוח המחוונים והקיר בעלי פריסת מגע. פאנל Settings → Remote access מציג את הכתובות המדויקות וקוד QR לסריקה.

13 · כלי ביצועים

בדיקת ביצועי מערכת

לחיצה אחת מודדת את שלוש התקרות שלך - תפוקת רשת (בדיקה אמיתית של 8 שניות מרובת-חיבורים), קצב אימות מעבד, ומהירות כתיבה לדיסק - ופותחת בתשובה: מהירות ההורדה המרבית הצפויה שלך ואיזו תקרה היא המגבלה. הפס הקצר ביותר הוא צוואר הבקבוק שלך; האחרים מציגים את המרווח שלהם. תזמן אותה (כל 6 שעות → שבועי) וכל הרצה נרשמת לטבלת היסטוריה, כך ש אתה יכול לראות מתי הספק, ה-ISP או החומרה שלך שינו התנהגות. הרצות מתוזמנות קורות רק כשהתור פנוי.

כוונון חיבורים

מודד ספק אחד במספרי חיבורים עולים וממליץ על ההגדרה - יותר שקעים עוזרים עד שהספק או הקו שלך רוויים, וחלק מהספקים מענישים על בקשת יתר. בדוק הכול משווה כל ספק, ואז מפרץ את כולם יחד כדי לבדוק שהמאגר מרווה את הקו שלך.

גיוון שרתים

דוגם STAT מאמרים לאורך גילאים בכל שרת ומקבץ ספקים לפי פערים משותפים: ספקים עם ~100% מאמרים חסרים משותפים הם אותו עמוד שדרה (כפולים לשחזור); עצמאיים באמת מרחיבים את הכיסוי שלך. מסתיים בהמלצה בשפה פשוטה.

אינטליגנציית תור אוטומטית

אורקל הזמינות

הסרות הן הסיבה העיקרית לכישלון הורדה ביוזנט, והן ניתנות לחיזוי: אותו רליס נעלם בעמוד שדרה אחד בעוד שאחר עדיין מחזיק אותו. nzbfast מנהל פנקס קטן של מה שהספקים שלך באמת סיפקו, ומוציא תקציב זעיר של בדיקות STAT בזמן המתנה (כמה מאות בשעה לכל שרת, לעולם לא במהלך הורדה) כדי לשמור אותו עדכני. הוא לעולם אינו מוריד מטען לשם כך.

מה יוצא לך מזה:

פסק הדין הוא חיזוי מתוך ראיות, לא ערובה. לתשובה חד-משמעית על NZB בודד, nzbfast check (§15) סופר את המאמרים בפועל.

תקציב זיכרון - ומה עולה זיכרון נמוך

כל מטמוני המנוע חולקים תקציב אחד (ברירת מחדל ¼ מה-RAM הפיזי, מהודק ל- 256 MB–16 GB). קבע אותו במפורש עם מגבלת זיכרון ב-Settings, או --mem-limit בשורת הפקודה.

nzbfast בנוי לספוג את הרשת שלך ואת הדיסק שלך בו-זמנית, וה-RAM הוא מה שמאפשר לו לעשות את שניהם במעבר יחיד: מאמרים מפוענחים, מאומתים ונכתבים ישר להיסטים הסופיים שלהם, כך שכרכי ארכיון לעולם לא צריכים לגעת בדיסק בכלל. הרעב אותו מזיכרון ושום דבר לא נשבר - לכל מטמון יש נתיב גלישה, והמנוע מתדרדר ליותר קלט/פלט דיסק במקום swap או כשל. אבל הגלישה הזו אינה חינם, ובמשימות גדולות אתה יכול למדוד אותה.

נמדד על מכונה אחת וקו אחד (M1 Ultra, 10 GbE), אותם קבצים בכל תקציב. כל הרצה הפיקה תוצאה נכונה, מאומתת במלואה, מחולצת:

גודל משימהשפע RAMתקציב 2 GB
≈ מכונת 8 GB
תקציב 1 GB
≈ מכונת 4 GB
תקציב 256 MB
≈ NAS של 2 GB
7 GB15 s15 s15 s15 s
35 GB65 s70 s70 s65 s
87 GB148 s206 s +39%196 s +32%180 s +22%
190 GB330 s427 s +29%402 s +22%411 s +25%

שיא הזיכרון עוקב אחר התקציב, לא אחר המשימה: אותה הורדת 190 GB מסתיימת בכ-1.1 GB של RAM. מה שאתה מוותר עליו תמורתו הוא זמן - ורק במשימות גדולות.

המלצהתן ל-nzbfast בערך 2 GB תקציב לכל 100 GB של המשימה הגדולה ביותר שאתה מוריד, והשאר את ברירת המחדל לבד אחרת - ¼ מה-RAM הוא כבר התשובה הנכונה ברוב המכונות. בפועל: 4 GB RAM מכסה משימות עד ~35 GB במהירות מלאה; 8–16 GB שומר גם משימות של 100 GB-פלוס שם; NAS של 2 GB יסיים כל דבר שתזרוק עליו, אבל התייחס אליו כאל מוריד ברקע ולא כאל משהו שירווה קו מהיר.

על NAS קטן, הורד גם את חיבורים (2–4) יחד עם התקציב. בתקציב 256 MB ו-2 חיבורים, שיא הזיכרון נשאר קרוב ל-190 MB - בנוחות בתוך מה שיש ל-NAS של 2 GB פנוי. שים לב שבנקודה הזו מספר החיבורים, לא הזיכרון, הוא מה שמגביל אותך: אותה משימת 35 GB לקחה 286 s במקום 65 s. זו הצורה הכנה של הפשרה - הוא תמיד יסיים, ויסיים נכון; הוא פשוט לא יספוג את הקו.

בדיקות ביצועים מורצות מחדש לכל מהדורה; השיטה והמספרים לכל מכונה מתפרסמים לצד התוצאות.

14 · עדכונים

15 · שורת הפקודה

כל מה שהדימון עושה ניתן גם לסקריפטינג. הפקודות היומיומיות:

פקודהמטרה
nzbfast setupהגדרת שרת אינטראקטיבית.
nzbfast serveהרץ את הדימון (לוח מחוונים + API + אוטומציה). --open פותח את הדפדפן; ראה --help לרשימת הדגלים המלאה - לכל הגדרת לוח מחוונים יש דגל תאום.
nzbfast get file.nzbהורד NZB אחד, צינור מלא, בלי דימון. --preflight מבטל מוקדם אם הפוסט לא יכול להסתיים; --password לסטים מוצפנים.
nzbfast check file.nzbפסק דין זמינות - שלם / ניתן לתיקון / בלתי אפשרי - בלי הורדת מטען.
nzbfast verify DIRאמת קבצים מול סט ה-PAR2 בתיקייה.
nzbfast sysbenchבדיקת ביצועי המערכת + דוח גיוון, בטרמינל.
nzbfast index / searchסרוק קבוצות לאינדקס / חפש בו, בלי הדימון.
nzbfast import-sabייבא שרתים מ-ini של SABnzbd.

זמינות גם: inspect, probe, bench, bench-cpu, soak, fetch, spots/spot-search/spot-get (Spotnet), make-release-nzb/make-test-nzb (מתקני בדיקה). כל פקודה מקבלת --config ו---help. אליהם מצטרפת post: היא מעלה קבצים כמאמרי yEnc וכותבת את ה-NZB המתאים. כלי תפעול; היא דורשת --post-server מפורש ולעולם אינה בוחרת עבורך שרת.

16 · סקירת API

נקודת קצה בסיסית: http://host:6789/api?mode=…&apikey=…&output=json - תואם-SABnzbd, כך שאינטגרציות SAB קיימות עובדות ללא שינוי. שני מפתחות: מפתח ה-API (שליטה מלאה) ומפתח ה-NZB (הוספה בלבד: addfile/addurl).

תחוםמצבים
תורqueue (עם name=delete/pause/resume/priority/switch), pause, resume, addfile, addurl, retry, set_password
מידעhistory, status/fullstatus, stats, version, server_stats, usage, log, warnings
תצורהget_config, config&name=<setting>&value=… (כל שדה הגדרות), server_save/delete/test/enable/reorder, import_probe/apply
אינדקס וקירindex_search, index_get, index_stats, index_scan_now, wall, wall_search/fix/refresh/art, בתוספת newznab ב-/api?t=caps|search|tvsearch|movie ו-/getnzb/<id>
אוטומציהwatchlist, watchlist_check_now, watch_calendar, feeds, smart_folders, schedule
אבחוןsysbench, bench_history, connladder, pooltest, diversity, update_check, update_apply
NZBGet JSON-RPC/jsonrpc - status, listgroups, history, append, editqueue, rate, pause, log (אימות Basic: כל משתמש, מפתח API כסיסמה)
תצוגה מקדימה / ניגון/stream/<nzo_id> (טווחי HTTP; הפעלת משימת ספרייה חונה דורשת אסימון ?t= או מפתח), /m3u/<id> (דורש מפתח; יוצר את האסימון), /wall, /art/…

17 · קבצים ומיקומים

קובץתוכן
config.local.jsonאישורי שרת ואפשרויות לכל שרת. נוצר על ידי האשף; ניתן לעריכה ב-Settings. שמור אותו פרטי.
settings.jsonכל הגדרה ששונתה בלוח המחוונים. חי ליד התצורה; ערכי הממשק עוקפים דגלי שורת-פקודה. מחק מפתח (או את הקובץ) כדי לחזור לדגלים/ברירות מחדל.
index.dbאינדקס הרליסים (SQLite) + מטא-נתוני הקיר. בטוח למחיקה - הוא נבנה מחדש מסריקה (Settings → Indexing → Wipe עושה זאת עבורך).
<config>/.spool/מצב התור (שורד הפעלות מחדש), קובצי NZB לכל משימה, יומן שימוש, היסטוריית בדיקות ביצועים, מטמון אמנות פוסטרים.
יומן מאמריםבתוך תיקיית הפלט של כל משימה בזמן שהיא לא שלמה - מפעיל חידוש לאחר קריסה וניסיון חוזר. מוסר בהצלחה.
כלים חיצונייםאין צורך בשום דבר - חילוץ RAR ותיקון PAR2 מקוריים. אם סט אקזוטי אי פעם צריך unrar או par2 חיצוני כנפילה לאחור, nzbfast מחפש ליד קובץ ההפעלה שלו, ואז ב-$PATH.

18 · פתרון תקלות

תסמיןבדוק
הורדות איטיותהרץ בדיקת ביצועי מערכת - היא נוקבת בצוואר הבקבוק במפורש. אם זו רשת: הרץ כוונון חיבורים, בדוק מספרי חיבורים לכל שרת, וודא שהספקים שלך אינם כולם עמוד שדרה אחד (גיוון שרתים).
איטי רק במשימות גדולות מאוד
(NAS או מכונת RAM-נמוך)
צפוי, וניתן למדידה: תקציב זיכרון מורעב מגלים מטמונים לדיסק ועולה 20–40% מעבר ל-~87 GB. ראה תקציב זיכרון למספרים וכמה RAM לתת לו. משימות קטנות יותר לא מושפעות.
הורדה נכשלת "מאמרים חסרים"הפוסט פג או הוסר אצל הספקים שלך. ספק שני על עמוד שדרה אחר מציל את רובם. nzbfast check חוזה זאת לפני ההורדה. והקיר מסמן מראש את אלה שקרוב לוודאי נעלמו, באמצעות נקודת הזמינות שלו (§13). כישלון ראשון מסוג זה חוזר על עצמו פעם אחת מאליו אחרי המתנה, משום שהשהיית תפוצה נראית בדיוק אותו הדבר ונפתרת מעצמה.
ארכיון שהסתיים רוצה סיסמהשורת ההיסטוריה מציגה 🔑 - הזן את הסיסמה שם; המשימה מסתיימת במקום.
Sonarr/Radarr לא מצליחים להתחברפורט 6789 נגיש? מפתח API נכון (מפתח מלא, לא מפתח NZB)? סוג הקליינט מוגדר ל-SABnzbd?
כרטיס העיון נשאר קטןהאינדקסר גדל ברקע - בדוק שקבוצות Settings → Indexing מוגדרות, ותן ל-העמקה בכל סריקה זמן לצבור היסטוריה. "סרוק עכשיו" מכריח מעבר; שורת הסטטוס מציגה התקדמות חיה.
הקיר מציג אמנות שגויה/חסרהגיליון פרטים → ✎ תקן התאמה או ↻ רענן מטא-נתונים. חיפושי סרטים משתפרים עם מפתח OMDb חינמי.
הדימון לא מתחיל: פורט בשימושמופע אחר רץ - או שנה את --port.
איפה היומנים?כרטיס היומן בלוח המחוונים, או הטרמינל/קובץ היומן שאיתו הפעלת serve.
עדיין תקוע?כרטיס היומן בדרך כלל נוקב באשם - כלול את הזנב שלו כשאתה מדווח על בעיה, יחד עם nzbfast --version שלך.

nzbfast - מדריך זה נשלח עם כל מהדורה. הגדרות, נקודות קצה וברירות מחדל שמוזכרות כאן תואמות את הגרסה שאיתה נשלח.