Você não deve excluir o /dev/sdX file ; em vez disso, você pode fazer isso:
echo "1" > /sys/block/sdX/device/delete
Ao fazer isso, seu processo pode desaparecer.
Estou executando o Linux Mint 18/2 com o kernel 4.10.0-38-lowlatency e o desktop KDE5.
Estou testando muita memória flash USB com um script bash personalizado e f3 e hoje tive uma situação estranha. Uma unidade não desapareceu de / dev / quando estava fisicamente desconectada da máquina.
Eu também notei que qualquer comando sync será completamente desligado e até sudo pkill -9 sync não ajuda.
Eu finalmente consegui sudo rm /dev/sdd , mas sync continuará pendente para sempre.
Todos os processos de sincronização que foram executados desde o início do erro permanecem no sistema. Htop diz que todos fazem I / O o tempo todo:
Alguém tinha algo assim? Posso consertar isso sem reiniciar a máquina?
Você não deve excluir o /dev/sdX file ; em vez disso, você pode fazer isso:
echo "1" > /sys/block/sdX/device/delete
Ao fazer isso, seu processo pode desaparecer.
A entrada em /dev é apenas um arquivo de dispositivo, ou seja, um gateway através do qual os aplicativos conversam com o driver. Criar ou remover entradas em /dev não tem impacto na operação do driver, muito menos na operação do dispositivo. O motorista nem está ciente dessas entradas.
Os processos não devem permanecer presos no estado D. Se o fizerem, isso indica um erro no kernel. O bug do kernel pode ser desencadeado por um mau funcionamento do hardware: a maioria dos drivers não funciona bem quando o hardware se comporta mal de maneiras não triviais. pkill -9 irá matar o processo assim que o driver decidir que está fazendo algo que possa ser interrompido, mas se o driver estiver preso em um código ininterrupto, isso pode durar para sempre.
O lugar para procurar pistas é o seu sistema de logs. Provavelmente haverá pistas, seja do driver que está se comportando mal ou de um driver genérico (por exemplo, o driver de barramento USB) que detectou algo estranho, como um dispositivo desconectando-se abruptamente ou enviando mensagens malformadas. Tente dmesg ou journalctl -k ou less /var/log/kern.log (acho que esse é o nome no Mint, se não olhar para qualquer arquivo que contenha logs do kernel).
Tentando desconectar forçadamente o dispositivo via /sys entradas pode funcionar (depende do problema)