Transferir arquivos no Linux


Um dos grandes problemas no GNU/Linux é transferir arquivos grandes para um pendrive, confira nessa matéria o porque disso e como dar uma boa melhorada.


Transferir arquivos no Linux


Lentidão para transferir arquivos

De uma forma bem abreviada, a lentidão é causada devido ao armazenamento dos dados em cache de memória ram.

Os valores que iremos alterar aqui são os de.

vm.dirty_background_ratio é a porcentagem de memória do sistema que pode ser usada para o cache.

vm.dirty_ratio é a quantidade máxima absoluta de memória do sistema que pode ser usada para o cache.

Mais detalhes nessa documentação.

Experimento 1


Nesse experimento o sistema está sem nenhuma modificação, podemos ver que a taxa de Dirty começa a cair assim que todo o arquivo é copiado, mas ainda permanece em cache, a cópia só termina quando a taxa de Dirty zera, isso pode não ser mostrado em algumas interfaces gráficas, o que leva o usuário a remover o pendrive antes que a cópia de fato tenha terminado.





Experimento 2 (Recomendado)


Nesse experimento diminui os padrões da taxa de dirty para os valores abaixo.

vm.dirty_background_ratio = 5
vm.dirty_ratio = 10

Aqui podemos notar que o dirty é inalterado, mas temos uma leitura e escrita no pendrive de forma uniforme, assim que a leitura em disco cai perto dos 3:20 minutos o dirty automaticamente começa a cair permanecendo apenas a escrita no pendrive. O ganho de tempo total da transferência é insignificante.

Aplicação


Pra aplicar a configuração abra o terminal e de os comandos na sequencia.

sudo nano /etc/sysctl.conf

Adicione as duas linhas abaixo no final do arquivo aberto.

vm.dirty_background_ratio = 5
vm.dirty_ratio = 10

Salve teclando Ctrl + x tecle s e tecle Enter para fechar.

Carregue as novas configurações com o comando.

sudo sysctl -p







Experimento 3 


Nesse experimento diminui os padrões da taxa de dirty para os valores abaixo.

vm.dirty_background_ratio = 2
vm.dirty_ratio = 5


Podemos notar uma diminuição drástica da taxa de dirty, que nos deu um ganho significativo de 1 minuto a menos no tempo total da transferência.


Aplicação


Pra aplicar a configuração abra o terminal e de os comandos na sequencia.

sudo nano /etc/sysctl.conf

Adicione as duas linhas abaixo no final do arquivo aberto.

vm.dirty_background_ratio = 2
vm.dirty_ratio = 5

Salve teclando Ctrl + x tecle s e tecle Enter para fechar.

Carregue as novas configurações com o comando.

sudo sysctl -p





OBS: Só use um dos experimentos 2 ou 3, não use os dois ao mesmo tempo. E para desfazer a alteração apague as linhas que adicionamos ao /etc/sysctl.conf
 
Vale lembrar que valores muito baixos para o dirty pode causar instabilidade no sistema e corromper os arquivos copiados. Nesse caso a .iso foi copiada sem problema algum, test de MD5 OK.




Testes feitos com os componentes abaixo.

Sistema operacional Debian Testing

Ambiente gráfico KDE Plasma

Pendrive SanDisk - Cruzer Blade

Opinião


No meu caso em particular, eu não vejo motivos para eu fazer alterações no sistema para  melhorar a transferência. Mas cada caso é um caso, portanto se para você é necessário, faça, mas realize testes ara confirmar se os dados não estão corrompendo e não baixe de mais os valores dirty, zero pode comprometer o sistema, leia a documentação postada acima.


Comentários

Você precisa ver isso

Todos os arquivos do blog

Mostrar mais