Quando faço uma grande transferência de arquivos do meu disco rígido USB3 externo para o meu disco rígido interno (ou vice-versa), seja pelo Nautilus ou pelo terminal, o Ubuntu (Unity) quase travará completamente. Coisas como alt-tab levam 20 segundos ou mais para serem concluídas enquanto a transferência de arquivos está em execução. Este não é o caso quando há muitas leituras / gravações aleatórias no disco, como na instalação de pacotes.
Quando eu estava executando o Windows, eu podia executar uma transferência de arquivos em segundo plano e ainda conseguir fazer as coisas, embora mais devagar quando algo é necessário para acessar o disco. Eu ainda podia alt-tab muito bem.
Parece que o Ubuntu prioriza a transferência de arquivos acima de todas as outras E / S de disco, e é por isso que ele bloqueia. No Windows, parece que as transferências de arquivos têm uma prioridade mais baixa, o que significa que o sistema pode permanecer responsivo enquanto o disco estiver saturado.
Como posso consertar isso? É um pouco chato, pois o computador se torna completamente inutilizável ao copiar arquivos. Esse problema ocorre nas versões 14.04 e 15.10. Sou obrigado a conectar meu disco rígido a uma porta USB2 para evitar esse problema e isso resulta em tempos de transferência muito mais longos.
fonte
Respostas:
Eu tive o mesmo problema no meu laptop, que tem um sistema de disco bastante lento em comparação com o restante do computador.
Consegui melhorar muito isso, alterando o algoritmo de agendamento usado para transferências de disco. Por padrão, o Ubuntu usa Deadline, mas acho que meu sistema responde mais rapidamente quando uso o cfq.
Para ver qual planejador você está usando, emita o comando
Para fazer uma alteração única (até a reinicialização), emita o comando
Observe que é importante que você faça as alterações necessárias para o seu disco rígido externo; O meu geralmente carrega como sdb. então eu iria emitir o comando
echo cfq | sudo tee /sys/class/block/sdb/queue/scheduler
Eu faço minha alteração permanente para todas as unidades conectadas ao meu computador, adicionando o parâmetro kernel
elevator=cfq
no meu arquivo grub, que se parece com o seguinte:fonte