Perda massiva de espaço quando baixo torrent.

Iniciado por fernandoalencar, 15 de Agosto de 2010, 09:42

tópico anterior - próximo tópico

fernandoalencar

Primeiramente, peço que me perdoem caso tenha inserido este tópico no fórum indevido. O fato é que sou iniciante, tanto no uso do fórum, quanto no do Ubuntu.

Eis o que tem me ocorrido: inicio o download, via torrent, de um arquivo cujo tamanho gira em torno de 40gb. A cada 10 mb, aproximadamente, que eu baixo através do cliente de Torrent nativo, o sistema registra uma perda de 0,5gb! Ou seja, antes que seja baixado 500mb do arquivo, o meu Ubuntu 10.04 64bits avisa-me de falta de espaço na partição (que possui 75gb e 3 de swap) e obriga-me a tomar alguma atitude. Já baixei, anteriormente e via torrent, no mesmo sistema operacional, arquivos grandes e nunca me ocorreu isso. Alguma idéia do que possa estar ocorrendo e como resolvê-lo?

Obrigado.

zekkerj

Provavelmente a partição está fazendo pré-alocação de espaço, pra evitar fragmentação.

Pra evitar que isso aconteça, eu costumo setar meus clientes torrent pra alocar o espaço pro arquivo inteiro logo no início. Assim, logo ao iniciar o download, eu já sei se tenho ou não espaço suficiente no HD pro arquivo.

Só pra confirmar, a partição é Ext3 ou Ext4?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

fernandoalencar

Citação de: zekkerj online 15 de Agosto de 2010, 11:29
Provavelmente a partição está fazendo pré-alocação de espaço, pra evitar fragmentação.

Pra evitar que isso aconteça, eu costumo setar meus clientes torrent pra alocar o espaço pro arquivo inteiro logo no início. Assim, logo ao iniciar o download, eu já sei se tenho ou não espaço suficiente no HD pro arquivo.

Só pra confirmar, a partição é Ext3 ou Ext4?

A partição é Ext3. Zekkerj, supondo que esteja certo, como faço o que você faz para evitar a pré-alocação de espaço? Eu revirei Transmission BitTorrent Client e não encontrei nada que se parecesse com o que descreveu.

Obrigado.

zekkerj

Não faz. Isso é bom pra você.

Você tem espaço na partição pro arquivo completo?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

zekkerj

Só pra explicar melhor... quem estaria fazendo a pré-alocação seria a partição. A cada bloco que o sistema tenta gravar, em vez de alocar exatamente o espaço do bloco, a partição aloca um espaço um pouco maior, de forma que quando o sistema tentar gravar um bloco que fique colado no anterior, ele não precise alocar novo espaço.

Veja que o cliente torrent não grava os blocos em sequência, ele os grava fora de ordem, na mesma ordem em que os blocos chegam. Vc pode receber primeiro o bloco 1000, depois o 7, depois o 121, etc. O resultado disso é que o arquivo parcial do torrent é sempre um arquivo esparso.

O que acontece é que quando você faz muitos downloads de arquivos grandes, seu sistema de arquivos fica muito fragmentado, gerando lentidão mesmo no Linux, que sofre menos com a fragmentação (ela sempre existe, apenas o Linux se vira melhor quando ela existe).

Pra evitar isso, clientes torrents como o Azureus/Vuze permitem que vc pré-aloque o arquivo. Ou seja, o arquivo ocupa logo todo o espaço necessário, criando um arquivo não-esparso, e contínuo.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

fernandoalencar

Citação de: zekkerj online 15 de Agosto de 2010, 11:59
Só pra explicar melhor... quem estaria fazendo a pré-alocação seria a partição. A cada bloco que o sistema tenta gravar, em vez de alocar exatamente o espaço do bloco, a partição aloca um espaço um pouco maior, de forma que quando o sistema tentar gravar um bloco que fique colado no anterior, ele não precise alocar novo espaço.

Veja que o cliente torrent não grava os blocos em sequência, ele os grava fora de ordem, na mesma ordem em que os blocos chegam. Vc pode receber primeiro o bloco 1000, depois o 7, depois o 121, etc. O resultado disso é que o arquivo parcial do torrent é sempre um arquivo esparso.

O que acontece é que quando você faz muitos downloads de arquivos grandes, seu sistema de arquivos fica muito fragmentado, gerando lentidão mesmo no Linux, que sofre menos com a fragmentação (ela sempre existe, apenas o Linux se vira melhor quando ela existe).

Pra evitar isso, clientes torrents como o Azureus/Vuze permitem que vc pré-aloque o arquivo. Ou seja, o arquivo ocupa logo todo o espaço necessário, criando um arquivo não-esparso, e contínuo.

Compreendi, zekkerj. Depois de ler sua explicação e sua pergunta na mensagem anterior, dei-me conta de que não havia experimentado este problema anteriormente porque nunca baixei nenhum torrent de tamanho superior a 4gb. De fato, eu não possuía espaço o bastante para comportar o arquivo de 40gb!

Agradeço por sua paciência e esclarecimento. Foram-me de grande utilidade!

cello2015

Pessoal,

Bom dia!

Sou novo no fórum e o achei muito interesasnte. Estou com uma dúvida a respeito de download em torrents. Se faço a préalocação e no HD já está "ocupado" pelos arquivos que serão baixados, porque ainda existe a redução no espaço livre? Entendo que uma vez pré-alocado, a HD não deveria ter perda de espaço livre.

Agradeço a todos e desejo boa semana.

irtigor

O quê? Pré-alocação é reservar o espaço antes, de forma contígua. Se tem que gravar 100 GB, o programa fala pro sistema reservar esse espaço de uma vez, e vai gravando os dados na medida que eles vão chegando. Você vai perder ~100 GB de espaço.

zekkerj

Citação de: cello2015 online 22 de Fevereiro de 2015, 08:29
Pessoal,

Bom dia!

Sou novo no fórum e o achei muito interesasnte. Estou com uma dúvida a respeito de download em torrents. Se faço a préalocação e no HD já está "ocupado" pelos arquivos que serão baixados, porque ainda existe a redução no espaço livre? Entendo que uma vez pré-alocado, a HD não deveria ter perda de espaço livre.

Agradeço a todos e desejo boa semana.

Não há perda de espaço livre... o que ocorre é que quando você faz o download do arquivo da forma tradicional, o sistema vai alocando espaço aos poucos, mas sempre um pouco mais do que precisa. Ao final do download, no entanto, todo o espaço que o sistema alocou é preenchido pelo download. O espaço "adicional" não é além do tamanho do arquivo; ao contrário, ele apenas aloca "mais cedo". Deu pra entender, ou complicou mais?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D