Estou trabalhando com testes em massa e duplicação de memória flash USB no Linux.
O script que eu escrevi para isso armazena os caminhos para / dev / disk / by-path para detectar se um dispositivo foi conectado a uma porta USB específica - dessa forma, o usuário pode conectar o que é exibido ao que está fisicamente presente na mesa .
Às vezes, um problema ocorre quando vários links simbólicos em / dev / disk / by-path apontam para o mesmo arquivo de dispositivo / dev / sd * - criando resultados confusos - por exemplo, o usuário insere um dispositivo na porta A e as portas A B, C e D relatam os dispositivos inseridos, enquanto o usuário pode ver que essas portas estão fisicamente vazias.
Eu criei um one-liner que pode verificar se esta condição ocorre:
file /dev/disk/by-path/* | grep -v "broken symbolic link" | cut -d'/' -f7 | sort | uniq -D | wc -l
Isso retornará o número de destinos de links duplicados em / dev / disk / by-path.
Deve retornar zero em todos os momentos.
Existe uma maneira de corrigir isso sem reiniciar o sistema?
Eu também fiz uma pergunta possivelmente relacionada: Links quebrados em / dev / disk / by-path