עבור אל תוכן

מדריך ל-cross-seeding



  • אנא התחבר בכדי להגיב
תגובה אחת לנושא זה

#1
 eran405

eran405
  •  חברים רשומים
  • 43 הודעות
    • מונה תודות: 15 תודות
15
רגיל
1. מה זה cross-seeding?

הורדה של טורנט מסוים מטראקר א' ושיתוף של אותו המידע (seed) בטראקר ב' ואם רוצים גם טראקר ג' וד' וכו'. חשוב להדגיש שמדובר על שיתוף אותו המידע ולא את אותו הקובץ טורנט בין טראקרים שונים. בכל טראקר שאני מכיר אסור בתכלית האיסור להעלות קבצי טורנט של טראקרים אחרים ואסור להעלות טורנטים של הטראקר לטראקרים אחרים.

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

עיקר המדריך יעסוק באיך לעשות cross-seeding בצורה בטוחה.

לדוגמא אפשר לראות סיד ל-3 טראקרים שונים מאותה ספריה, תצטרכו להאמין לי שהורדתי את המידע רק פעם אחת מטראקר אחד:

תמונה שפורסמה
(לגבי זה שהשם של השורה השלישית קצת שונה אפרט בסעיף 8)


2. איזה עוד שמות יש ל-cross-seeding?

ב-TL הם קוראים לזה "outside seeding" (למי שיש חשבון שם, תחפשו Outside Seeding בעמוד הראשי של ה-wiki).

פה בפורום נתקלתי במושג "ריסיד" שלמיטב הבנתי דובר על מה שאני קורא לו cross-seeding. אני פחות אוהב להשתמש במושג "ריסיד" בשביל cross-seeding בגלל שבהרבה טראקרים המושג reseed מתייחס להחייאת טורנט "מת" (כלומר טורנט שיש לו אפס seeders, מבקשים reseed ואז אנשים או מביאים אותו חזרה מגיבוי בצד או עושים לו cross-seeding אבל המושג reseed מתייחס לפעולה של "החייאת" הטורנט).

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

אנא ציינו אם אתם מכירים עוד שמות ואעדכן כאן.


3. למה לעשות cross-seeding?

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

בעזרת cross-seeding אפשר לאט לאט לשפר את הרטיו גם בטראקרים קשים ללא seedbox (אם יש seedbox או אלפוד יפה אז אפשר לשפר את הרטיו יותר מהר עם cross-seeding מאשר בלעדיו).


3. האם מותר לעשות cross-seeding?

למיטב ידעתי לא רק מותר אלא שבטראקרים היותר קשים מצפים שמשתמשים חדשים או משתמשים עם בעיית רטיו יעשו cross-seeding בשביל לבנות באפר התחלתי או לשפר את הרטיו. לדוגמא ב-TL, כמו שכבר ציינתי, יש ב-wiki מדריך של outside seeding (שזה אותו הדבר).

ליתר ביטחון גם עשיתי חיפוש בגוגל בנושא ומצאתי לדוגמא:
https://www.reddit.c...at_are_against/

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

אם מישהו מכיר טראקרים שאוסרים על cross-seeding אנא ציינו זאת ואעדכן כאן (לא שברור לי איך בכלל טראקר יכול לחסום cross-seeding כי זה משהו שעושים בקליינט).


4. איך עושים cross-seeding?

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

בתקווה דוגמא תוכל להבהיר את הנושא:

א. מורידים מטראקר א' טורנט עם הקובץ movie.mkv ושומרים אותו בספריה C:\Movies. מחכים שההורדה תסתיים.

ב. מורידים מטראקר ב' טורנט אחר גם הוא עם הקובץ movie.mkv שיש לנו סיבה טובה להאמין שזה בדיוק אותו ה-movie.mkv שהורדנו מטראקר א'. כעת אם נבחר להוריד טורנט זה גם לספריה C:\Movies אז הקליינט יראה שהקובץ כבר קיים ודבר ראשון יעשה בדיקה (recheck) למידע ובתקווה שהמידע מתאים בול הטורנט יעבור ישר למצב של seed ללא כל הורדה מטראקר ב'!
פרטים על המקרה שהמידע לא מתאים בול בסעיף הבא.

ג. אם רוצים אפשר לחזור על סעיף ב' עבור הורדה של movie.mkv מטראקר ג' וד' וכו'.

במקרה אמיתי, בתקווה, השם של הקובץ יהיה יותר דומה ל- Real.Movie.Name.1977.REPACK.720p.BluRay.DTS-ES.x264-ABC.mkv ואז אם מצאנו טורנט בטראקר אחר עם קובץ בדיוק באותו השם אז סביר להניח שגם התוכן שלו יהיה זהה.

אציין בקצרה גם את המקרה של שיחרורים שמופעים מקובצים ב-rar בטראקרים מסוימים ופתוחים בטראקרים אחרים. אפשרי להוריד את ה-rarים מטראקר עם rarים ולעשות cross-seeding לטראקרים אחרים שגם מכילים rar ו/או לפתוח את ה-rar לספריה אחרת ולעשות cross-seeding לקבצים הפתוחים בטראקרים שמכילים את הקבצים הפתוחים. אין אפשרות להוריד את הקובץ הפתוח ולקבץ אותו מחדש ל-rar ולעשות cross-seeding לטראקר שמכיל את rar (ה-rar יוצא קצת שונה כשמקבצים בתנאים שונים כמו גירסא קצת שונה של ה-rar וכו' ולכן ה-recheck יכשל ולא תהיה אפשר לעשות cross-seeding).
אותו הדבר רק "בקטנה" לגבי כתוביות idx/sub שבטראקר אחד מקובצים ב-rar ובאחר פתוחים (אפשר להוריד את ה-rar ולפתוח ולעשות cross-seeding, אי אפשר להיפך). "בקטנה" כי הגודל של כתוביות ממש זניח ועדיין שווה ביותר לעשות cross-seeding לסרט ולהוריד רק את הכתוביות מחדש - עוד פרטים בסעיף 7.


5. איך עושים cross-seeding בצורה בטוחה?

הערה: החלק הזה תלוי בקליינט שמשתמשים להורדת טורנטים, אני משתמש ב-qbittorrent וממליץ עליו בחום גם בגלל "יכולות" ה-cross-seeding שאפרט כאן ובהמשך. בזמן כתיבת שורות אילו qbittorrent עדכני הינו גירסה 4.1.5. יתכן וקליינטים אחרים מתנהגים אחרת (וגם לגבי qbittorrent גירסה 3 אני לא בטוח). אנסה לעדכן כאן בצורה מסודרת אם תשתפו מידע רלוונטי על קליינטים אחרים.
ראו גם את הפיסקה האחרונה של סעיף זה למה אני לא ממליץ להשתמש ב-utorrent בשביל cross-seeding!

דבר ראשון, מה אני מתכוון בצורה "בטוחה"? נגיד שאני מנסה לעשות cross-seeding לפי ההוראות של סעיף 4 והקובץ movie.mkv שבטורנט מטראקר ב' שונה מהקובץ movie.mkv שהורדתי מטראקר א'. מה שיקרה הוא שהקליינט יראה שהקובץ אינו מתאים ויוריד חלקים או את כל הקובץ ה"מעודכן" מטראקר ב' וידרוס את הקובץ המקורי שהורדנו מטראקר א'. עכשיו יתכן שטראקר א' ירצה לעשות סיד לקובץ המקורי ויראה שהקובץ לא מתאים ואז תלוי בקליינט: במקרה הטוב הטורנט מטראקר א' פשוט יעבור למצב שגיאה ויעצר (למיטב הבנתי ככה מתנהג qbittorrent). במקרה הרע יתכן שעכשיו הקובץ ידרס שוב ע"י הורדת הקובץ מחדש מטראקר א' ואז הקובץ לא מתאים לטורנט של טראקר ב' וחוזר חלילה.

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

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

איך ננצל התנהגות זו לעשות cross-seeding בטוח?

א. מורידים מטראקר א' טורנט עם הקובץ movie.mkv ושומרים אותו בספריה C:\Movies. מחכים שההורדה תסתיים.

ב. מורידים מטראקר ב' טורנט אחר גם עם הקובץ movie.mkv, שומרים אותו גם לספריה C:\Movies אבל לא מפעילים את הטורנט (ב-qbittorrent פשוט מנקים את האופציה "start torrent"). הטורנט כעת עצור (paused) על 0%.

תמונה שפורסמה

ג. לוחצים כפתור ימני על הטורנט החדש ובוחרים "force recheck". הקליינט יבצע בדיקה של המידע ובסיום הבדיקה האחוז של ההורדה יתעדכן לפי כמה מה"חתיכות" תואמות. אם כעת הטורנט ב-100% אפשר בביטחון מלא לעשות resume לטורנט והוא יעבור ישר לסיד. אם ה-recheck הסתיים מיידית והטורנט נשאר על 0% הכי סביר שטעיתם בנתיב של השמירה או שהשם של הקובץ/קבצים/ספריה בטורנט לא בדיוק תואם (יתכן ואפשר לתקן - ראו סעיף 8).

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

האופציה הכי פשוטה במקרה שה-recheck נכשל היא לוותר על ה-cross-seeding ולמחוק את הטורנט של טראקר ב'. חשוב להקפיד לא למחוק את המידע של הטורנט, כי מבחינת הקליינט ה-movie.mkv שייך גם לטורנט השני ומחיקת המידע תמחוק את הקובץ של הטורנט מטראקר א'.

שימו לך, שמניסיוני ב-utorrent ה-recheck כן הרסני (לפחות בגירסאות ישנות של utorrent, לפחות במקרה שהקובץ מטראקר ב' יותר קטן, ה-utorrent פשוט חותך את הקובץ ללא בושה בפעולת recheck על טורנט עצור!). בזמנו כשהשתמשתי ב-utorrent, נכוותי בנושא כמה פעמים ופשוט הפסקתי לנסות לעשות cross-seeding כי זה לא שווה את הסיכון והמאמץ לצאת מהברוך כשה-utorrent מסתבך. אני ממליץ בחום פשוט לעבור ל-qbittorrent.


6. איך בדיוק עובד ה-recheck, למה אני כל הזמן מזכיר "חתיכות" ומה קורה עם טורנטים מרובי קבצים?

דבר ראשון קצת רקע על איך עובד ביטורנט: פרוטוקול הביטורנט מחלק את המידע של הטורנט ל"חתיכות" (pieces) בגודל מסוים. זה הבסיס של כל החוכמה של הביטורנט: הוא יודע להוריד חתיכות אקראיות מ-seeds ו-peers אחרים ובסיכוי מאד גדול ל-peers שונים יהיו חתיכות שונות ולכן גם peers יוכלו לשתף ביניהם מידע ולא רק להוריד מידע מה-seeders (פחות רלוונטי במקרה שיש 1001 seeders ומוריד בודד, מאד חשוב במקרה שיש seed בודד והרבה מורידים; לכן גם qbittorrent בעצם אוטומטית מוריד sequential אם יש מספיק seeders).

מה הקשר ל-recheck? הקשר שהקובץ טורנט מכיל checksum של כל אחת מהחתיכות בנפרד. ה-recheck פשוט קורא את כל החתיכות מהדיסק (כלומר את כל המידע של הטורנט) ועבור כל חתיכה בודק את ה-checksum. חתיכה שה-checksum מתאים תחשב כ-completed וחתיכה שלא תחשב שכל המידע שלה לא תקין (בהינתן המידע שיש בקובץ טורנט אין שום דרך לדעת האם חלק מהמידע בחתיכה הוא תקין ואיזה חלק ולכן חייבים להוריד מחדש את כל החתיכה עבור כל חתיכה שה-checksum אינו תואם). בסוף ה-recheck הטורנט יהיה ב-100% אך ורק עם ה-checksum של כל אחת מהחתיכות התאים בול. אם לא, אז ה-% של הטורנט יהיה לפי כמה מהחתיכות מתאימות.

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

ניקח טורנט שמכיל 3 קבצים "שחוברו" בסדר הבא:
a-sample.mkv (7 megabyte)
a.mkv (192 megabyte)
a.nfo (327 byte)
ונגיד שגודל כל חתיכה הוא 2 מגה. במקרה הזה יהיו 100 חתיכות:
חתיכות 1-3 בשביל ה-6 מגה הראשונים של a-sample.mkv
חתיכה 4 בשביל המגה האחרון של a-sample.mkv והמגה הראשון של a.mkv
חתיכות 5-99 בשביל ה-190 מגה האמצעיים של a.mkv
חתיכה 100 בשביל המגה האחרון של a.mkv וה-327 בייט של a.nfo

למה זה חשוב לנו? כי זה מסביר למה אנחנו מקבלים תוצאות recheck כגון:
תמונה שפורסמה
(שימו לב שלפחות ב-qbittorent הקבצים מסודרים לפי אחת העמודות ואין אופציה לסדר את הקבצים לפי הסדר שהם מופיעים בטורנט; עבור קבצים גדולים מספיק אפשר לראות את הסדר של הקבצים בזמן ה-recheck לפי ההתקדמות שלו)

התוצאה לעיל יכולה להתקבל לדוגמא כאשר קובץ ה-nfo קיים אך לא מתאים בול ו/או הקובץ srt חסר לגמרי וכו'. במקרה הנ"ל:
גודל כל חתיכה הינו 8 מגה (מופיע במידע הכללי על הטורנט תחת "pieces"). דבר ראשון "חובר" הקובץ mkv שכל החתיכות שלו חוץ מהאחרונה מתאימות ולכן הוא ב-99%. החתיכה האחרונה של ה-mkv כוללת לא רק את סוף ה-mkv אלא גם את כל ה-nfo, כל ה-srt ואת ה-58.5% הראשונים של screens (מספיק שה-nfo לא מתאים או שה-srt חסר לגמרי וכו' שכל החתיכה נפסלת - בדיוק מה שקרה כאן). לבסוף החתיכה האחרונה היא ה-41.5% הנותרים של screens שבמקרה הזה תואמת (במקרה הזה screens הוא ספרייה ואפשר לפתוח ולראות את האחוזים על כל קובץ, למען פשטות ההסבר כאן בחרתי להשאיר את screens "מקובצת").


7. cross-seeding למתקדמים או מתי בכל זאת אפשר לעשות cross-seeding בלי 100% התאמה?

בתקווה, אחרי סעיף 6 לעיל, אנחנו יודעים להבין את התוצאות של ה-recheck. עכשיו צריך להפעיל קצת שכל ישר ואולי קצת ניסיון בשביל להבין באילו מקרים בכל זאת נוכל לעשות cross-seeding על אף שלא קיבלנו 100% התאמה.

המקרה הכי פשוט שאפשר לעשות cross-seeding בביטחון הוא חוסר בקובץ או קבצים מסוימיים, לדוגמא קובץ nfo שאינו קיים:
נגיד הורדנו טורנט מטראקר א' עם movie.mkv בלבד. כעת אנחנו מורידים טורנט מטראקר ב' המכיל גם את movie.mkv וגם את movie.nfo. אם עקבתם אחרי ההסבר בסעיף 6, אז אתם מבינים למה נקבל בסוף ה-recheck כ-99% על הקובץ movie.mkv וכמובן 0% על ה-movie.nfo שלא קיים. במקרה אפשר בביטחון יחסי לעשות resume לטורנט מטראקר ב', הוא ישלים את קובץ ה-nfo ובהנחה שבאמת גם הסוף של ה-movie.mkv מתאים הוא לא ישנה אותו. מניסיוני, לפחות qbittorrent מסתדר יפה עם זה שהטורנט הראשון פעיל ועושה סיד במקביל להשלמת ה-nfo מהטראקר השני (כלומר אפילו אין צורך לעצור את הטורנט הראשון).

אם רוצים להיות 1000% בטוחים אפשר: לעצור את הטורנט הראשון, לעשות resume לשני שישלים את ה-nfo ויגיע למצב של 100% ואז לבצע שוב force recheck על הראשון ולוודא שהוא באמת נשאר ב-100%.

קצבים נוספים שנפוץ שיהיו חסרים הם כתוביות נפרדות (כגון srt או idx/sub/rar כרגיל תחת ספריית subs), samples, תמונות מסך (screens) וכו'. קבצים כאלה הרבה פעמים יהיו קיימים בטורנט מטראקר אחד וחסרים בטורנט של טראקר אחר (או אולי ב-rar בטראקר אחד ופתוחים בשני). כל עוד הקבצים פשוט חסרים ההסבר לעיל (לגבי המקרה שחסר רק ה-nfo) עדיין תופס ואפשר בביטחון יחסי פשוט לעשות resume (או בביטחון מלא: לעצור את הטורנט המקורי ולעשות לו recheck אחרי שהטורנט השני השלים את ההורדה).

עוד מקרה ששימושי לעשות cross-seeding לחלק מהקבצים הם season packs שכבר הורדנו חלק או את כל הפרקים קודם או repack של עונה שבעצם עשו repack רק לחלק מפרקים.
זה אפילו יכול להיות "cross-seeding" לשני טורנטים מאותו הטראקר: נגיד הורדנו דבר ראשון season pack הכולל 10 פרקים ואז יוצא repack שמכיל repack ל-3 מהפרקים ו-7 הפרקים הנותרים ללא שינוי. נוכל בקלות לעשות "cross-seeding" ל-7 הפרקים ללא שינוי (או לפחות ל-99.8% מהם) ולהוריד רק את ה-3 שעברו repack.

במקרה שהשם של הקובץ מתאים והקובץ עבר recheck ועדיין על 0% כנראה שלפחות לקובץ הזה לא יהיה אפשר לעשות cross-seeding. דוגמא למקרה כזה, היא נגיד טראקר ישראלי שלוקח שיחרור של קבוצה ידועה, נגיד "movie-abc.mkv", ועושה remux לקובץ עם כתוביות מובנות בעיברית ולא משנה את השם של הקובץ (עדיין "movie-abc.mkv" אבל התוכן של הקובץ שונה). במקרה כזה, בגלל איך שהביטורנט עובד, לא נוכל לעשות cross-seeding אפילו לחלקים מהסרט (במובן מסוים חלקים מהקובץ mkv עדיין "מקבילים" לתוכן של הקובץ המקורי אבל מנגון החתיכות של הביטורנט לא מתאים בשביל לזהות ונצל דברים כאלה).


8. איך אפשר לפתור התנגשות בשמות של הקבצים או קבצים בשם שונה?

בהמשך לסעיף הקודם, נמשיך עם דוגמת ה-nfo אבל עם טוויסט:

נגיד שהורדנו מטראקר א' טורנט המכיל גם את movie.mkv וגם movie.nfo ואנחנו מנסים לעשות cross-seeding לטורנט דומה מטראקר ב' שגם מכיל בדיוק את אותם 2 קבצים. אבל אבוי, קיבלנו אחרי ה-recheck תוצאה דומה של 99% על קובץ ה-mkv ו-0% על קובץ ה-nfo. במקרה הזה ה-nfo קיים אז זה לא בגלל שהוא חסר אלא בגלל שהתוכן שלו קצת שונה. במקרה של קבצי nfo זה די נפוץ לקבל חוסר התאמה: לפעמים בגלל שזה קובץ text ויש הבדל ב-line endings (למי שיש את הידע, בשביל nfo של שיחרורי scene, אפשר לנסות לתקן את חוסר ההתאמה בעזרת פקודות כגון dos2unix ו-unix2dos). לשיחרורי p2p כרגיל אין בכלל nfo ובאתרים מסוימים פשוט "ממציאים" nfo ולכן הוא ספיציפי לאתר הזה ובאתר אחר "ימציאו" nfo אחר לגמרי.

ככה או ככה יש את הבעיה שתיארתי בסעיף 5: אם פשוט נעשה resume ה-nfo ידרס ע"י הגירסה של טראקר ב' ואז הטורנט מטראקר א' נדפק (במקרה שיש הבדל רק ב-nfo יתכן והטורנט מטראקר א' ימשיך לעשות סיד באופן כאילו תקין לזמן מסוים כי באופן סטטיסטי רב ה-seeding יהיה מה-mkv שמתאים אבל בשלב מסוים הוא ינסה לקרוא גם את ה-nfo ויגלה שהוא שונה).

שני הפתרונות שאני מכיר:

א. בתקווה בקליינט שבחרתם יש אופציה נוחה לעשות rename לקבצים/ספריות בודדים. לדוגמא ב-qbittorrent אפשר לעשות זאת ע"י כפתור ימני על הקובץ ב-content tab:
תמונה שפורסמה

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

כהערת אגב אציין שהיו לי כמה קריסות של ה-qbittorrent כשניסיתי לעשות rename לקבצים או להזיז אותם (set location) על טורנטים פעילים, מאז אני תמיד עושה pause לטורנט לפני שאני עושה rename/set location (ו-resume אחרי זה).

ב-utorrent מסתבר שגם אפשר לעשות rename: אחרי שהטורנט כבר הוסף, אפשר להכנס ל-files tab, לעשות כפתור ימני על הקובץ/ספריה ולבחור "Relocate" ואז לבחור שם אחר. למיטב זיכרוני אף פעם לא השתמשתי באופציה הזו אז אני לא יכול להגיד הרבה על זה (כאמור אני לא ממליץ על utorrent ובמיוחד לא על cross-seeding עם utorrent).

שימו לב, שלפחות ב-qbittorrent, כשעושים rename, אם הקובץ קיים בדיסק הוא משנה את השם של הקובץ בדיסק (וכשעושים set location, אם הקבצים קיימים דיסק הוא מזיז אותם).

כמעט תמיד אני משתמש באופציית ה-rename הזו אבל למען השלמות אציין גם אופציה נוספת:


ב. אפשר לשמור את הטורנטים ל-2 ספריות שונות ולהעתיק או לעשות "לינק" לקובץ/קבצים מתאימים לספריה החדשה:

בדוגמא שלנו לעיל עם movie.mkv ו-movie.nfo, אפשר לדוגמא לשמור את הטורנט הראשון ל-C:\Movies\TrackerA ואחרי שהוא סיים להעתיק את ה-mkv ל-C:\Movies\TrackerB ולשמור לשם את הטורנט מהטראקר השני. בגלל שזה ספריות שונות מן הסתם אין סיכוי שההורדה של הטורנט השני תקלקל משהו בטורנט הראשון.

מה שכן אנחנו מבזבזים מקום בדיסק, כי עכשיו ה-mkv מופיע פעמים בשתי ספריות שונות. יש מנגון של "לינקים" שיכול לפתור את הבעיה הזו. המנגון קצת שונה בין מערכות הפעלה שונות, אפרט ממש בקצרה לגבי יצירת לינקים ב-windows (משתמשי מערכות unixיות כרגיל יודעים מה זה לינקים ואיך ליצור אותם): ב-windows אפשר ליצור לינקים בעזרת פקודת  mklink /H (מה שנקרא hardlink ב-windows), צריך שהמקור והיעד יהיו על אותו הכונן ושהכונן יהיה ב-NTFS.
בדוגמא שלנו לעיל, נעשה לינק אך ורק לקובץ mkv לספריה של TrackerB. למקרה שזה לא ברור הלינק מקשר את אותו הקובץ בשני מקומות או שמות שונים בדיסק - אם משנים אחד השני גם משתנה! בעצם יש רק עותק אחד של הקבוץ על הדיסק. לכן אם נעשה לינק גם ל-nfo אז כשהטורנט השני ישנה אותו הוא ידפוק את הקובץ ה-nfo של הטורנט הראשון. אם עושים לינק רק ל-mkv, אז ייווצר קובץ nfo חדש ואחר על הדיסק (שיתפוס 327 בייט נוספים מהדיסק, אבוי).
לגבי קבצים קטנים, כרגיל אנחנו עושים cross-seeding רק בשביל הרטיו ולכן לא ממש איכפת לנו להוריד קבצים קטנים מחדש, לכן אפשר להעתיק/לעשות לינק רק לקבצים הגדולים (המתאימים) ולהתעלם מהקבצים הקטנים.

-

בעזרת הטכניקות לעיל אפשר לפתור את כל המקרים שקבצים מסוימים בטורנט הם באיזור ה-99% ואנחנו רוצים לעשות cross-seeding לקבצים האילו. אם יש קבצים אחרים עם תוכן לא תואם אז בדיוק כמו במקרה של ה-nfo שתיארנו לעיל אפשר לעשות להם rename או לשמור לספריה אחרת ולעשות לינק רק לקבצים שכן מתאימים. אם יש קבצים שפשוט חסרים אז אין בעיה כי בין כה וכה כשנשלים את ההורדה שלהם שום דבר לא ידרס.

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

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

בתקווה הבאתי מספיק דוגמאות שתוכלו להבין בכל מקרה שתתקלו האם אפשר לעשות cross-seeding ואיך.


9. האם תמיד חייב לקרות recheck? (או cross-seeding לבעלי לב חזק)

לפחות ב-qbittorrent ו-utorrent יש אופציה של "skip hash check" כשמוסיפים טורנט. מה שזה בעצם אומר לקליינט שיניח שה-recheck הצליח ב-100% בלי לעשות כלום.

מתי זה טוב? אם יש טורנט גדול שאנחנו בטוחים שמתאים ורוצים לחסוך את ה-recheck (דבר שדי כואב על טורנטים גדולים).

למה זה מסוכן? בגלל סיבות דומות למה שהסברתי בסעיף 5 לגבי cross-seeding בלי לוודא קודם שה-recheck מתאים ב-100%.

אין לי הרבה ניסיון עם שימושים "מסוכנים" באופציה הזו אבל אם אני לא טועה qbittorrent מתנהג יפה יחסית: אם הטורנט לא 100% מתאים במקודם או מאוחר ה-qbittorrent מגלה את זה, מודיע על שגיאה, מעביר את הטורנט למצב של שגיאה (errored) ועוצר את הטורנט. כך שזה בעצם פחות מסוכן מ-cross-seeding רגיל ללא force recheck קודם (כי בניגוד למקרה ההוא, בתקווה, לא ידרס המידע של הטורנט המקורי).


10. למה אני מקבל הודעת שגיאה Torrent already present?

דבר ראשון ב-qbittorrent, ההודעה המלאה נראית ככה:

תמונה שפורסמה


הבעיה שלכל טורנט יש hash יחודי (אפשר לראות אותו במידע הכללי של הטורנט תחת torrent hash) וכל הקליינטים שאני מכיר מניחים שאם לשני קבצי טורנט יש את אותו ה-hash זה אותו הטורנט.

אופציה אחת שפשוט טעיתם וניסיתם להוסיף עוד פעם טורנט שבאמת כבר קיים (ניסיתם לעשות "cross-seeding" ע"י הורדת הטורנט מטראקר א' ואז הורדה של בדיוק אותו הטורנט מאותו הטראקר).

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

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

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

אם מישהו מכיר דרך יותר טובה לעקוף את השגיאה הזאת או יכול לשפוך אור על בדיוק מה קורה כאן אשמח לשמוע.

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

---

הערות ותיקונים יתקבלו בברכה.

נערך על-ידי eran405, 11.01.2019 - 01:37 AM.


קיבל תודות על-ידי 5 משתמשים:

#2
 casper

casper
  •  חברים רשומים
  • 309 הודעות
    • מונה תודות: 73 תודות
80
טוב מאוד
תודה על המדריך המושקע !





תויגו גם עם אחת או יותר ממילות המפתח הללו: מדריך שיתוף

0 משתמשים קוראים נושא זה

0 משתמשים, 0 אורחים, 0 משתמשים אנונימיים