Nó do Udev / dev / sda criado no boot mesmo quando a unidade está desconectada

0

Editar: gostaria de simplificar um pouco a questão:

O principal problema é este: / dev / sda está sendo criado no boot, quer minha unidade USB esteja inserida ou não. Se eu manualmente / dev / sda / rm, o udev funciona corretamente até que eu reinicie, em que ponto / dev / sda aparece magicamente novamente!

A pergunta original é a seguinte:

Estou executando uma compilação do Yocto Linux em uma placa integrada e me deparei com um problema.

Com uma nova construção, quando eu conecto uma unidade USB na placa, ela aparece como / dev / sda e / dev / sda1 (ótimo!). Quando eu desconectar a unidade, essas entradas desaparecem (também ótimo!).

O problema acontece depois que eu copio um sistema de arquivos raiz duplicado para a placa através da unidade USB (isso é para que eu possa fazer atualizações completas do sistema na placa). Tudo funciona bem até que eu reinicie, quando de repente / dev / sda e / dev / sda1 existe se o drive USB está inserido ou não.

Eu verifiquei as permissões e elas são as mesmas nos dois casos. Eu tentei remover os arquivos, mas eles reaparecem na próxima reinicialização. Os dois arquivos não são copiados com o novo sistema de arquivos raiz. Meu aplicativo usa a presença desses arquivos para determinar se uma unidade está inserida, por isso é importante que eles funcionem corretamente.

Alguma idéia?

Obrigado

Marlon

    
por Marlon Smith 13.08.2014 / 20:59

1 resposta

1

Altere a maneira de verificar a unidade USB, porque esta não é confiável.

Use lsusb ou verifique o diretório /proc/scsi/usb-storage . Ambas as formas de obter muitas informações do kernel, além disso, você pode jogar com coisas como mudar para lógica diferente com base no número de série ou fornecedor:)

    
por 13.08.2014 / 21:22

Tags