| 
						
						
						
						
						
	|   |  
	| Iron_Grif 
 
 Стаж: 14 лет 6 месяцев Сообщений: 71 | 
			
								
					Iron_Grif · 
					 02-Фев-25 12:12
				
												(8 месяцев назад) 
						
													Товарищи, есть вопрос. Есть ли какой-нибудь способ выделения всех разрегистрированных раздач в отдельную категорию? Сил уже никаких нет вручную отлавливать раздачи, которые нужно обновить - у меня их под две тысячи так-то виситЮзаю 5.0.3 в контейнере
 |  
	|  |  
	| FakinTosh 
 
 Стаж: 17 лет 1 месяц Сообщений: 2265 | 
			
								
					FakinTosh · 
					 02-Фев-25 12:20
				
												(спустя 7 мин.) 
						
													Iron_GrifТам же вроде должно быть в Статус - С Ошибкой. Просто выбрать эту категорию и смотреть.
 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 02-Фев-25 14:18
				
												(спустя 1 час 58 мин.) 
						
													
Iron_Grif писал(а): 87342083Есть ли какой-нибудь способ выделения всех разрегистрированных раздач в отдельную категорию? 
В десктопном GUI есть фильтр по трекерам "с ошибкой". 
 В WebUI такой функции пока нет. 
Но само API информацию предоставляет, так что можно написать собственный скрипт, который будет проверять статусы трекеров.											 |  
	|  |  
	| Iron_Grif 
 
 Стаж: 14 лет 6 месяцев Сообщений: 71 | 
			
								
					Iron_Grif · 
					 02-Фев-25 19:53
				
												(спустя 5 часов) 
						
													
FakinTosh писал(а): 87342115Iron_GrifТам же вроде должно быть в Статус - С Ошибкой. Просто выбрать эту категорию и смотреть.
 
У меня, увы, не десктопный вариант - в докере контейнер крутится
 
Hanabishi писал(а): 87342602В WebUI такой функции пока нет.Но само API информацию предоставляет, так что можно написать собственный скрипт, который будет проверять статусы трекеров.
 
Чукча не скритописатель =(											 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 02-Фев-25 21:04
				
												(спустя 1 час 10 мин., ред. 02-Фев-25 21:16) 
						
													
Iron_Grif писал(а): 87344209Чукча не скритописатель =( 
Вот скрипт, запускать на странице WebUI через инструменты разработчика.
 
Код: (async () => {const load = async (url) => (await fetch(url)).json();
 const torrents = await load("/api/v2/torrents/info?filter=uploading");
 for (const { hash, name } of torrents) {
 const trackers = await load(`/api/v2/torrents/trackers?hash=${hash}`);
 const err = trackers.find(({ tier, status }) => tier >= 0 && status >= 4);
 err && err.msg && console.log(name, hash, err.msg);
 }
 })();
 
Напечатает все раздачи где есть сообщение об ошибке от трекера.											 |  
	|  |  
	| Iron_Grif 
 
 Стаж: 14 лет 6 месяцев Сообщений: 71 | 
			
								
					Iron_Grif · 
					 02-Фев-25 22:23
				
												(спустя 1 час 18 мин.) 
						
													
Hanabishi писал(а): 87344551Вот скрипт, запускать на странице WebUI через инструменты разработчика. Напечатает все раздачи где есть сообщение об ошибке от трекера. 
Работает, всё как надо, спасибо! А можно его модифицировать, чтоб выводил только разрегистрированные раздачи? У меня там куча раздач, к которым неработающий ретрекер прикручен, и все они выводятся											 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 02-Фев-25 22:32
				
												(спустя 9 мин.) 
						
													
Iron_Grif писал(а): 87344954У меня там куча раздач, к которым неработающий ретрекер прикручен 
Тип ошибки фильтровать затруднительно. Лучше просто удалите ретрекер из всех раздач и отключите его добавление в настройках профиля .											 |  
	|  |  
	| Iron_Grif 
 
 Стаж: 14 лет 6 месяцев Сообщений: 71 | 
			
								
					Iron_Grif · 
					 03-Фев-25 20:16
				
												(спустя 21 час, ред. 03-Фев-25 20:16) 
						
													
Hanabishi писал(а): Тип ошибки фильтровать затруднительно. Лучше просто удалите ретрекер из всех раздач и отключите его добавление в настройках профиля . 
Добро, так и поступлю! Ещё раз спасибо!
 
Hanabishi писал(а): 87344990Тип ошибки фильтровать затруднительно. 
Обратился к товарищу, он допилил ваш скрипт до вот такого вида
 
Код: await (async () => {
 const load = async (url) => (await fetch(url)).json();
 const torrents = await load("/api/v2/torrents/info?filter=uploading");
 for (const { hash, name } of torrents) {
 const trackers = await load(`/api/v2/torrents/trackers?hash=${hash}`);
 const err = trackers.find(({ tier, status, msg }) => tier >= 0 && status >= 4 && msg.includes("Torrent not registered"));
 err && err.msg && console.log(name, hash, err.msg);
 }
 return "done";
 })();
 
 
Работает, хоть и не так резво, как мне бы хотелось)											 |  
	|  |  
	| umike 
 Стаж: 19 лет 2 месяца Сообщений: 67 | 
			
								
					umike · 
					 10-Фев-25 12:47
				
												(спустя 6 дней, ред. 10-Фев-25 12:47) 
						
													Есть вопрос по кэшу/буферам. Никто не сравнивал нагрузку на диски 1 и 2 версии libtorrent?Поставил qbittorrent-enhanced-nox v4.6.7.10 + libtorrent-rasterbar2 (Libtorrent: 2.0.11.0)
 Размышления такие:
 На винде с либторрент версии 1 выставлял кубиту вручную буфер в несколько гигов и галку Send upload piece suggestions, кубит в своей статистике показывал эффективность кэша порядка 30-40%. Я понимаю это так что на активных раздачах он буферизует запрошенные пирами чанки и предлагает их другим пирам, отдавая уже из оперативки.
 Из либторрент2 выпилены опции кэша и вопрос кэширования ложится на средства самого линуха/ос. Есть подозрения что т.к. торрент обращается к рандомным кускам рандомных файлов, линух может напрасно пытаться это кэшировать и занимает всю оперативку буферами. По крайней мере для меня загадка что именно он там делает и как оценить эффективность этого кэша. Например, если линух делает упреждающее чтение, читая больше запрошенного в кэш (в надежде что это сейчас тоже запросят, как бывает при работе с обычными пользовательскими файлами) то он делает это зря, напрасно увеличивает активность дисков. И может быть тогда лучше попробовать откатиться на libtorrent v1 и задать ему кэш вручную?
 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 10-Фев-25 13:53
				
												(спустя 1 час 6 мин.) 
						
													
umike писал(а): 87378594По крайней мере для меня загадка что именно он там делает и как оценить эффективность этого кэша. 
Стандартный кэш ОС работает предсказумемым образом. Все читаемое с диска оседает в памяти, пока она не заполнится. Когда память заполнится, вступает в дело механизм LRU (Least Recently Used), то есть ядро выкидывает из памяти самые редко используемые фрагменты данных. То есть вполне неплохо обеспечивает содержание в памяти самых востребованных данных с диска. 
Оценить эффективность со стороны клиента никак, только через мониторинг самого ядра.
 
umike писал(а): 87378594Например, если линух делает упреждающее чтение, читая больше запрошенного в кэш (в надежде что это сейчас тоже запросят, как бывает при работе с обычными пользовательскими файлами) то он делает это зря, напрасно увеличивает активность дисков. 
Стандартный read-ahead в линуксе всего 128 КБ, это меньше чем типичный размер 1 части в торренте. Но могут быть вариации в зависимости от фс (например у Btrfs 4 МБ по-умолчанию).
 
umike писал(а): 87378594И может быть тогда лучше попробовать откатиться на libtorrent v1 и задать ему кэш вручную? 
Можно обновиться до актуальной версии. В 5.0.1 я добавил новый режим I/O для libtorrent 2.0. 
Но можно и на libtorrent 1.2 спрыгнуть, если лень возиться.											 |  
	|  |  
	| umike 
 Стаж: 19 лет 2 месяца Сообщений: 67 | 
			
								
					umike · 
					 25-Мар-25 21:26
				
												(спустя 1 месяц 15 дней, ред. 08-Апр-25 19:25) 
						
													
Iron_Grif писал(а): 87344999Обратился к товарищу, он допилил ваш скрипт до вот такого видаРаботает, хоть и не так резво, как мне бы хотелось)
 
Надоело копипастить, обратился к нейросетям чтобы обернули в скрипт и встроили кнопочку в страницу вебинтерфейса кубита справа веерху    Смотреть по-прежнему в консоль devtools 
 В принципе можно было вместо выдачи в консоль devtools доделать чтобы на эти торренты добавлялся какой-нибудь тег или ещё один несуществующий трекер типа http://unregistered.rutracker . Тогда такие торренты можно будет прямо в интерфейсе кубита в пару кликов отсортировывать по TAGS/TRACKERS
 
скрытый текст . 
qbittorrent.url:port надо заменить на свои в двух местах, во втором случае БЕЗ завершающего слэша
 
Код: // ==UserScript==
 // @name         qBittorrent Unregistered Torrents Checker
 // @namespace    http://tampermonkey.net/
 // @version      0.1
 // @description  Check for unregistered torrents in qBittorrent
 // @author       neuronets & UMike
 // @match        http://qbittorrent.url:port/
 // @grant        GM_xmlhttpRequest
 // @connect      localhost
 // ==/UserScript==
 (function() {
 'use strict';
 const qbittorrentUrl = 'http://qbittorrent.url:port';
 // Функция для загрузки данных
 const load = async (url) => {
 const response = await fetch(url, {
 credentials: 'include', // Включаем куки для аутентификации
 });
 return response.json();
 };
 // Основная логика проверки раздач
 const checkUnregisteredTorrents = async () => {
 const torrents = await load(`${qbittorrentUrl}/api/v2/torrents/info?filter=uploading`);
 for (const { hash, name } of torrents) {
 const trackers = await load(`${qbittorrentUrl}/api/v2/torrents/trackers?hash=${hash}`);
 const err = trackers.find(({ tier, status, msg }) => tier >= 0 && status >= 4 && msg.includes("Torrent not registered"));
 if (err && err.msg) {
 console.log(`Незарегистрированная раздача: ${name} (Hash: ${hash})- ${err.msg}`);
 }
 }
 };
 // Создание кнопки на странице
 const createButton = () => {
 const button = document.createElement('button');
 button.innerText = 'Check Unreg';
 button.style.position = 'fixed';
 button.style.top = '1px';
 button.style.right = '200px';
 button.style.zIndex = '1000';
 button.style.padding = '5px 5px';
 button.style.backgroundColor = '#007bff';
 button.style.color = '#fff';
 button.style.border = 'none';
 button.style.borderRadius = '2px';
 button.style.cursor = 'pointer';
 button.onclick = async () => {
 console.log('Начинаю проверку незарегистрированных раздач...');
 await checkUnregisteredTorrents();
 console.log('Проверка завершена.');
 };
 document.body.appendChild(button);
 };
 // Создание кнопки при загрузке страницы
 createButton();
 })();
 
 |  
	|  |  
	| dad1979 
 Стаж: 19 лет 4 месяца Сообщений: 421 | 
			
								
					dad1979 · 
					 04-Апр-25 22:23
				
												(спустя 10 дней) 
						
													Не так давно тут было обсуждение на тему:
 
artenax писал(а): 86425079...qBittorrent с libtorrent 2 использует тип ввода/вывода (настраивается в расширенных настройках) - файлы, отображаемые в память. 
С этим "типом ввода-вывода диска" имеется проблема (qBittorrent-nox 4.5.5/libtorrent2) - утечка памяти и падение клиента с ООМ через какое-то время (у меня обычно 15-16 дней работы 24/7). Описано вроде здесь . Чо с этим делать - перейти просто на "совместимый с POSIX" ввод/вывод? Не хотелось бы даунгрейдить qbit на более старый (с libtorrent 1.x) Что с новыми версиями qbit (5.x?) - проблема там остается?											 |  
	|  |  
	| stаlkerok 
 Стаж: 2 года 8 месяцев Сообщений: 3037 | 
			
								
					stаlkerok · 
					 04-Апр-25 22:30
				
												(спустя 7 мин.) 
						
													dad1979, используйте последнюю версию с simple pread/pwrite											 |  
	|  |  
	| dad1979 
 Стаж: 19 лет 4 месяца Сообщений: 421 | 
			
								
					dad1979 · 
					 05-Апр-25 19:44
				
												(спустя 21 час) 
						
													stаlkerokПока нашел версию 5.0.4 статически слинкованную с libtorrent 1.2.20 - попробую ее. Вроде говорят, что libtorrent 1.x лучше работает с диском. Непривычно с паролем webui они намудрили в новых версиях, раньше удобнее было.
 |  
	|  |  
	| miken1910 
 Стаж: 14 лет 6 месяцев Сообщений: 142 | 
			
								
					miken1910 · 
					 18-Апр-25 23:48
				
												(спустя 13 дней) 
						
													Добрый вечер. 
Статус трекера "Не работает", сообщение "Соединение разорвано другой стороной". 
Как решить эту проблему? 
Пробовал VPN - не помогло. Это провайдер блокирует или как? 
Причем это такое на многих трекерах - из-за этого отданное на трекере не засчитывается.
 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 19-Апр-25 00:02
				
												(спустя 13 мин.) 
						
													
miken1910 писал(а): 87670392Как решить эту проблему? 
Удбедиться, что в клиенте отключен прокси и никакой фигни в хостах не прописано.											 |  
	|  |  
	| miken1910 
 Стаж: 14 лет 6 месяцев Сообщений: 142 | 
			
								
					miken1910 · 
					 19-Апр-25 00:25
				
												(спустя 22 мин.) 
						
													
Hanabishi писал(а): 87670430
miken1910 писал(а): 87670392Как решить эту проблему? 
Удбедиться, что в клиенте отключен прокси и никакой фигни в хостах не прописано. 
Ничего не подключал и ничего не прописывал.											 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 19-Апр-25 00:44
				
												(спустя 18 мин.) 
						
													
miken1910 писал(а): 87670485Ничего не подключал и ничего не прописывал. 
В браузере http://bt.t-ru.org/ann_time.php  открывается?											 |  
	|  |  
	| miken1910 
 Стаж: 14 лет 6 месяцев Сообщений: 142 | 
			
								
					miken1910 · 
					 19-Апр-25 01:00
				
												(спустя 16 мин., ред. 19-Апр-25 01:00) 
						
													Да, конечно, открывается (с обходом блокировки торрент-трекеров и без).
 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 19-Апр-25 01:11
				
												(спустя 11 мин.) 
						
													Что по настройкам сетевого интерфейса (в продвинутых настройках)? И еще скриншот анонсера в развернутом состоянии не помешал бы.											 |  
	|  |  
	| miken1910 
 Стаж: 14 лет 6 месяцев Сообщений: 142 | 
			
								
					miken1910 · 
					 19-Апр-25 10:57
				
												(спустя 9 часов) 
						
													В настройках Сетевого интерфейса стоит Любой интерфейс.
 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 19-Апр-25 13:48
				
												(спустя 2 часа 51 мин.) 
						
													
miken1910 писал(а): 87671821В настройках Сетевого интерфейса стоит Любой интерфейс. 
Мда, непонятная ситуация. Может еще влияет то, что в браузере проверочная ссылка по https открылось. 
Пробуйте
 
Код: $ curl 'http://bt.t-ru.org/ann_time.php' |  
	|  |  
	| miken1910 
 Стаж: 14 лет 6 месяцев Сообщений: 142 | 
			
								
					miken1910 · 
					 19-Апр-25 16:44
				
												(спустя 2 часа 55 мин., ред. 19-Апр-25 16:44) |  
	|  |  
	| FakinTosh 
 
 Стаж: 17 лет 1 месяц Сообщений: 2265 | 
			
								
					FakinTosh · 
					 22-Май-25 21:26
				
												(спустя 1 месяц 3 дня) 
						
													Грок мне помог с проверкой конфигурации и запуском nox версии клиента    |  
	|  |  
	| bnflfrbvffc Стаж: 17 лет 8 месяцев Сообщений: 26 
 | 
			
								
					bnflfrbvffc · 
					 11-Июн-25 08:32
				
												(спустя 19 дней) 
						
													Добрый день. Поджскажите. поставил qbittorrent, поставил поисковый плагин для рутрекера, в .py файле вписал логин/пароль, но плагин пишет что не авторизован. подозреваю, упирается в капчу. можно ли как-то отключить её?											 |  
	|  |  
	| FakinTosh 
 
 Стаж: 17 лет 1 месяц Сообщений: 2265 | 
			
								
					FakinTosh · 
					 11-Июн-25 12:17
				
												(спустя 3 часа) 
						
													
bnflfrbvffc писал(а): 87880872поставил поисковый плагин для рутрекера 
Если он не из этого года а очень старый то работать понятное дело не будет. Надо плагин править под реалии 2025 года.											 |  
	|  |  
	| umike 
 Стаж: 19 лет 2 месяца Сообщений: 67 | 
			
								
					umike · 
					 31-Авг-25 15:55
				
												(спустя 2 месяца 20 дней, ред. 31-Авг-25 15:55) 
						
													кто в сорцах разбирается, было бы неплохо заиметь галкау для Torrent content layout что-то вроде "create subfolders for VIDEO_TS".Брал подержать мультики, встретилось с десяток торрентов в которых DVD в виде VIDEO_TS папки с содержимым. При стандартном "Torrent content layout:Original" кубит все их положил в один каталог VIDEO_TS, часть файлов наложились, получились "битые" торренты. Create subfolder для каждого выглядит не оптимально, большинство многофайловых торрентов и так нормально организованы в каталог с уникальным именем и делать для них ещё один "верхнеуровневый" каталог нет нужды.
 В целом было бы здорово чтобы при добавлении торрента клиент сам определял конфликты (по существующим торрентам или контенту на диске) и, например, логировал предупреждение + переводил такие торренты сразу в Error не стартуя автоматом. Если это обновляемая раздача - запустил руками и норм. Если необновляемая - руками разрешил конфликты и запустил.
 |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 31-Авг-25 16:16
				
												(спустя 20 мин.) 
						
													
umike писал(а): 88157053В целом было бы здорово чтобы при добавлении торрента клиент сам определял конфликты (по существующим торрентам или контенту на диске) 
Я вижу очень много неопределенности в таком функционале. Добавление нового торрента поверх существующих файлов это очень даже частый сценарий. Сразу найдется много людей, которым такая самодеятельность клиента не понравится. Например после обновления раздачи я кидаю новый торрент поверх старых файлов, здесь попытка клиента избежать коллизии будет только мешать. 
 Да и создание подпапки по названию торрента не является панацеей на самом деле. В идеале подпапка каждого торрента должна содержать его хеш в названии, только так можно гарантировать отсутствие коллизий. Но опять же такой подход будет неудобен для конечного пользователя.											 |  
	|  |  
	| umike 
 Стаж: 19 лет 2 месяца Сообщений: 67 | 
			
								
					umike · 
					 31-Авг-25 16:30
				
												(спустя 14 мин.) 
						
													Конфликты можно определять и обрабатывать по-разному. Более продвинутый вариант, конечно, проверить существование и, например, сравнить имена-размеры файлов в торренте и на диске. Если x% отличаются - это ошибка, если совпадают - кладём "поверх". Понятно что идеала не существует, поэтому в виде опции хотябы для VIDEO_TS - уже хоть что-то. 
 Я понимаю что create subfolder это тоже не панацея, но в большинстве случаев сработает. При следующем массовом добавлении торрентов придётся включить, пару сотен inode не жалко    |  
	|  |  
	| Hanabishi 
 Стаж: 15 лет 6 месяцев Сообщений: 3088 | 
			
								
					Hanabishi · 
					 31-Авг-25 16:43
				
												(спустя 13 мин.) 
						
													
umike писал(а): 88157201Если x% отличаются - это ошибка 
При обновлении раздачи некоторые файлы могут поменяться полностью. Никакой ошибки тут нет.
 
umike писал(а): 88157201в виде опции хотябы для VIDEO_TS 
Создать feature request на гитхабе никто не запрещает.											 |  
	|  |  |