Задать вопрос
VMesser
@VMesser
gitter.im/VBA-developers

Почему Transmission создаёт лишние файлы?

Качаю торрент клиентом Transmission в Ubuntu. В раздаче 3 файла, отмечаю для скачивания только один, но в целевой папке всё равно создаются два остальных с расширением .part. Я не жадный, но они сразу создаются конечного размера, по 5 Гб каждый, а это уже накладно. Как быть? Под виндой в uTorrent ничего подобного не бывало.
  • Вопрос задан
  • 884 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 2
TrueBers
@TrueBers
Гуглю за еду
но они сразу создаются конечного размера, по 5 Гб каждый

А вы уверены, что это не sparse-файлы? Насколько я помню, когда давным давно юзал трансмишн, он не создавал целые файлы, а только разреженные.

Просто суть в том, что все файлы при создании раздачи идут как поток байт. Этот поток делится на чанки определённого размера. Так вот, этот чанк может захватить конец нужного вам файла, и начало ненужного, а скачать его частично вы не можете, только чанк целиком. Ну и, соответственно, если вы вдруг заходите потом докачать, клиент сохраняет конкретно этот маленький кусок.

Может быть, у вас ФС без поддержки разреженных файлов?
Ответ написан
xotkot
@xotkot
хорошо есть и хорошо весьма
как писали выше Transmission создаёт "лишний файл" разряженным, скорее всего для своих каких-то нужд. Данный файл практически никак не будет влиять на заполнение файловой системы, точнее будет но в зависит от степени его наполненности.

Вот к примеру:
создаём разряженный файл:
$ truncate -s 5G ФАЙЛ
Смотрим его размер через ls:
$ ls  -l ФАЙЛ
... 5G ... ФАЙЛ

Смотрим его реальный размер через du:
$ du -h ФАЙЛ                
0	ФАЙЛ

Смотрим его нереальный размер через du:
$ du -h --apparent-size ФАЙЛ                   
5,0G	ФАЙЛ


В общем размер данного(здесь он нулевой) ФАЙЛа не влияет на реальное заполнение ФС (к примеру на вывод команды df -h тоже никак не отразится), естественно по мере его заполнения ситуация будет меняться.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
NeiroNx
@NeiroNx
Программист
Это особенность протокола Torrent, когда отдающаяя сторона просто отдает не спрашивая нужна ли тебе эта часть, а Transmission зачем то сохраняет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы