Introdução
Estou usando o Ubuntu MATE 16.04.5 LTS com o kernel Linux 4.4 mais recente em várias máquinas (laptops e desktops com USB 2.0 e USB 3.0).
Para mim, parece que algo foi alterado dentro do driver USB interno do kernel (ou talvez udisks
). Ou o hardware flash USB se torna mais barato e de baixa qualidade.
Meu flash USB tem indicador LED. É um presente sem nome (controlador ChipsBank CBM2099E).
Quando eu o conecto ao computador - ele tem o indicador LED aceso, pisca quando os dados são transferidos.
Minha ideia principal: quando vejo o indicador piscando, suponho que o flash esteja ocupado, portanto não devo desconectá-lo para evitar corrupção de dados.
Problema
Comportamento esperado
Muitos flashes - antigos Transcend JFV60, JF110, JF150, JF500, modernos JF790; Kingston Data Traveler G2 e ADATA UE700, SanDisk Extreme Pro não têm esse problema de piscar contínuo. Eles param de piscar exatamente depois de selecionar a opção Ejetar e mostram uma mensagem de bolha que o dispositivo pode ser removido com segurança:
Comportamento do flash problemático
Quando ejeto a unidade flash USB problemática do gerenciador de arquivos Caja ou dos discos GNOME pressionando a opção de menu Ejetar , o LED do flash pisca continuamente com taxa rápida. Tentei esperar por cerca de uma hora, mas ainda pisca após esse período de tempo. Isso acontece mesmo se eu não escrever nada na unidade. O balão de notificação não é exibido.
Pergunta
Minhas perguntas - qual pode ser a razão desse problema de piscar? Sou apenas eu? É seguro (para dados) desconectar esse flash piscando?
Notas e atualizações
Notas
1. Não pergunto aqui sobre a queda lenta do cache de gravação e/ou sync
da unidade. Depende muito do tamanho da RAM e da velocidade real de gravação do flash. O comportamento mencionado existe nos casos em que nenhum dado foi gravado.
2. Todos esses flashes não apresentam problemas com a funcionalidade de ejeção no Windows. Eles apagam o LED logo após clicar em Ejetar / Remover com segurança .
3. Selecionar Desligar este disco ( ) nos discos do GNOME força o flash a parar de piscar, mas não tenho certeza sobre a segurança dos dados nesse caso (para este flash em particular; para outros flashes e HDDs ou SSDs USB é seguro, eu sei isto).
4. Eu sei que, por exemplo, os discos rígidos USB WD MyPassport alteram a taxa de intermitência de rápido para lento brilho após serem removidos com segurança, mas é outra história, pois eles giraram e estacionaram antes, por isso é seguro desconectá-los depois . Portanto, não acho que o piscar dos flashes USB indique o polling deles e force o usuário a desligá-lo ...
Atualizações
1. abaixo está a saída ao vivo detail -f /var/log/syslog
Nov 11 23:37:35 hostname kernel: [32596.101403] scsi 7:0:0:0: Direct-Access General UDisk 5.00 PQ: 0 ANSI: 2
Nov 11 23:37:35 hostname kernel: [32596.102526] sd 7:0:0:0: Attached scsi generic sg2 type 0
Nov 11 23:37:35 hostname kernel: [32596.104745] sd 7:0:0:0: [sdc] 31129600 512-byte logical blocks: (15.9 GB/14.8 GiB)
Nov 11 23:37:35 hostname kernel: [32596.107594] sd 7:0:0:0: [sdc] Write Protect is off
Nov 11 23:37:35 hostname kernel: [32596.107611] sd 7:0:0:0: [sdc] Mode Sense: 0b 00 00 08
Nov 11 23:37:35 hostname kernel: [32596.107792] sd 7:0:0:0: [sdc] No Caching mode page found
Nov 11 23:37:35 hostname kernel: [32596.107805] sd 7:0:0:0: [sdc] Assuming drive cache: write through
Nov 11 23:37:35 hostname kernel: [32596.109561] sdc:
Nov 11 23:37:35 hostname kernel: [32596.110621] sd 7:0:0:0: [sdc] Attached SCSI removable disk
Nov 11 23:37:35 hostname udisksd[2294]: Mounted /dev/sdc at /media/username/FLASHDEVICE on behalf of uid 1000
Nov 11 23:37:52 hostname udisksd[2294]: Cleaning up mount point /media/username/FLASHDEVICE (device 8:32 is not mounted)
Nov 11 23:37:52 hostname udisksd[2294]: Unmounted /dev/sdc on behalf of uid 1000
observe as últimas linhas aqui, às 23:37:35 o dispositivo foi desmontado/ejetado do gerenciador de arquivos, às 23:37:52 os udisks o removeram, mas seu LED ainda está piscando.
2. Segui as ideias de @WinEunuuchs2Unix. Tentei os dois UDisks (legado, permanece no meu sistema por causa das atualizações de 12.04) e UDisks2 (moderno e atual) para executar o procedimento de remoção com segurança - ambos
#udisks1 (legacy)
udisks --unmount /dev/sdc1 && udisks --detach /dev/sdc
#udisks2 (modern)
udisksctl unmount -b /dev/sdc1 && udisksctl power-off -b /dev/sdc
terminou com o mesmo problema de LED piscando com apenas um dos meus flashes.
3. Repeti o método acima no meu antigo Ubuntu 12.04.5 LTS e aqui o LED está piscando no flash problemático. Portanto, é um problema de hardware de flash USB.
Conclusão
Há alguma incompatibilidade de software-hardware entre meu flash baseado em ChipsBank CBM2099E sem nome e Linux e/ou Udisks. Outros flashes (listados acima no comportamento esperado) não apresentam problemas.
No Windows 8.1 em execução no mesmo laptop, sua remoção segura é bem-sucedida e o LED está desligado.
O problema do LED piscando depois
Eject
de selecionado no Nautilus é muito próximo a este relatório de bug do Launchpad de 2013:Esse relatório de bug tem apenas cinco assinantes e foi fechado como uma duplicata deste relatório de bug de 2011:
O último relatório de bug tem 155 assinantes e:
Vasculhando o primeiro relatório de bug (aquele fechado como uma duplicata), você vê o autor
udisks
mencionando como os patches precisam ser feitos. Dois usuários que aplicaram o patch não relataram sucesso.Acho que no relatório de bug eles perderam alguns dos aspectos importantes da saída de um usuário. Aqui está a saída equivalente do meu sistema (que funciona):
is_media_removable
está definida como1
no meu sistema, mas no sistema de relatórios de bugs está definida como0
. Acho que isso deveria ter sido abordado.can_eject=0
mas meu sistema temcan_eject=1
Verifique sua própria
gvfs-mount -li
saída para a minha. Considere também assinar os relatórios de bugs acima e/ou postar lá.Contanto que você saiba que a unidade não está sendo gravada, basta removê-la. Também por experiência pessoal, o disco de desligamento no disco GNOME não afeta os dados.
Eu tenho um SanDisk Cruzer que faz a mesma coisa. Quando ocioso, montado sem leitura/gravação ou simplesmente conectado a uma porta USB, o indicador LED pisca, mas em um ritmo lento. Na verdade, ele acende e desaparece lentamente, depois se repete.
Só para ter certeza de que estava certo... Comprei recentemente 3 novos pendrives SanDisk Cruzer Glide de 16 GB. Todos os 3 têm indicadores LED e todos os 3 agem da mesma forma que o seu.
Então, para esclarecer, tenho 4 unidades USB que funcionam como você descreveu. É seguro removê-los? Sim, pois há diferenças visuais óbvias no comportamento quando as unidades estão ociosas ou quando estão sendo lidas ou gravadas.
Existem três possibilidades para verificar passo a passo quais programas estão usando (consumindo) o disco rígido pesadamente:
1.) digite no terminal:
ou
Então você pode ver quais processos estão realmente exigindo seu disco rígido.
2.) Você pode resolvê-lo, no caso do firefox, quando o firefox está minimizando severamente seu disco rígido, você pode ajustar os intervalos de tempo do firefox - quando o firefox está gravando no disco rígido em segundo plano, conforme descrito aqui:
https://www.servethehome.com/firefox-is-eating-your-ssd-here-is-how-to-fix-it/
Pode ser que o google-chrome esteja fazendo coisas semelhantes como o firefox em segundo plano.
3.) Instale o pacote fatrace com:
E a ferramenta fatrace mostra a você no terminal os programas que estão sendo executados em segundo plano (por exemplo, google-chrome ou firefox e outros ...).