O Linux para de detectar novos discos / dispositivos de bloco após determinado número

0

Eu tenho um computador que uso para discos de imagem que executam o Ubuntu 16.04. Cada disco é inserido em um encaixe USB 3.0, gravado / limpo e, em seguida, desconectado. Os discos não possuem sistemas de arquivos montados que precisem ser desmontados. Eles desaparecem dos gnome-disks como esperado. Eventualmente, usando o gparted e / ou os gnome-disks, não consigo mais ver novos discos adicionados. Às vezes, novos discos são exibidos em um dispositivo / dev / sdx antigo e posso acessá-los, mas eles mostram a tabela e o tamanho da partição do dispositivo antigo. Eu suponho que isso é porque o / dev / sdx está sendo preenchido e o kernel está segurando ponteiros para discos que não existem mais?

Editar: devo acrescentar que vários desses discos têm setores defeituosos ou outros problemas, o que também poderia fazer parte do problema. Esse "esgotamento do dispositivo de bloco" acontece mais rápido quando mais unidades com defeito são adicionadas / removidas. Quando isso acontece, até os discos bons não aparecem quando são adicionados ao sistema. Mas percebo que isso acontece mesmo que todas as unidades que estou adicionando / removendo estejam saudáveis e funcionando.

O que posso fazer para evitar esse comportamento ou dizer ao kernel para "esquecer" os discos desconectados?

    
por Mr. T 11.10.2018 / 07:18

1 resposta

1

Antes de desconectar, digamos, /dev/sdX , faça primeiro um blockdev -flushbufs /dev/sdX para garantir que todos os dados estejam totalmente gravados no disco e não aguardem em um buffer, só para ter certeza.

Em seguida, faça um echo 1 > /sys/block/sdX/device/delete . Isto irá dizer ao kernel que /dev/sdX vai desaparecer e deve ser esquecido. Dependendo dos discos / docas envolvidos, isso pode até desabilitar o disco automaticamente.

    
por 11.10.2018 / 09:38