Como desativar o armazenamento em cache para o dispositivo USB ao gravar nele?

8

Eu tenho problemas para transferir programas binários para uma placa de protótipo de micro-controlador ao usar o Ubuntu / Kubuntu para montar a placa via USB. Com o MacOS e o Windows, não há problemas. Eu encontrei a escrita do Ubuntu definitivamente muda o arquivo escrito. Eu suspeito que o cache de gravação é o problema. Como posso desativá-lo ou o que mais pode ser o problema?

    
por txwikinger 02.10.2010 / 06:13

2 respostas

7

Leia primeiro: link
Não tenho certeza se é verdade ou não.

Você pode tentar usar o hdparm para definir o recurso de cache de gravação como desligado no tempo de execução. (Você provavelmente precisará executar isso após cada inicialização ou sempre que remover e reinserir o dispositivo)

sudo hdparm -W 0 /dev/devicename

Por favor, verifique se você sabe o nome do dispositivo correto ( sdb , sdc ou assim por diante).

Você pode descobrir o nome do dispositivo executando:

sudo fdisk -l

Você também pode editar /etc/fstab e adicionar as opções de montagem sync,dirsync No entanto, não estou muito familiarizado com a forma como /etc/fstab funciona com dispositivos removíveis. Eu acho que eles precisam de um ponto de montagem permanente.

    
por NightwishFan 02.10.2010 / 07:43
0

kudos para @NightwishFan pelo parâmetro hdparm para definir o recurso de cache de gravação da unidade.

Observe que a opção sync mount diminui a velocidade em magnitude (mais de 10 vezes). A opção flush mount garante uma gravação eficaz sem custo de desempenho. Também usei-o sem problemas por alguns anos em todos os dispositivos FAT (girando ou baseados em memória flash) que usei: Na verdade, todo o conjunto de opções de montagem é noauto,users,noatime,flush,umask=111,dmask=000 , definido manualmente ou em / etc / fstab.

    
por tuk0z 09.09.2015 / 23:43