Eu tenho um USB protegido contra gravação:
dmesg | tail
[10098.126089] sd 7:0:0:0: [sdb] Write Protect is on
[10098.126098] sd 7:0:0:0: [sdb] Mode Sense: 23 00 80 00
[10098.126779] sd 7:0:0:0: [sdb] No Caching mode page present
[10098.126788] sd 7:0:0:0: [sdb] Assuming drive cache: write through
[10098.131418] sd 7:0:0:0: [sdb] No Caching mode page present
[10098.131425] sd 7:0:0:0: [sdb] Assuming drive cache: write through
[10098.133335] sdb: sdb1
[10098.135509] sd 7:0:0:0: [sdb] No Caching mode page present
[10098.135515] sd 7:0:0:0: [sdb] Assuming drive cache: write through
[10098.135521] sd 7:0:0:0: [sdb] Attached SCSI removable disk
Como posso desativar a proteção contra gravação?
O que eu tentei
- Verificado se possui um interruptor de hardware - não
- Tentei formatá-lo no Windows e no Linux (via terminal também)
- Tentei
fdisk
|chmod
- Tentei corrigir isso com várias ferramentas do centro de software Ubuntu
- Usou o Google e viu cerca de 10.000 discussões sobre esse problema, mas elas nunca foram resolvidas
Informação adicional
fsck -n /dev/sdb1
fsck from util-linux 2.19.1
dosfsck 3.0.9, 31 Jan 2010, FAT32, LFN
There are differences between boot sector and its backup.
Differences: (offset:original/backup)
65:01/00
Not automatically fixing this.
Free cluster summary wrong (968250 vs. really 911911)
Auto-correcting.
Leaving file system unchanged.
/dev/sdb1: 50 files, 93653/1005564 clusters
fdisk -l
Device boot. Start End Blocks Id System
/dev/sdb1 32 8060927 4030448 b W95 FAT32
umount /dev/sdb1
mkfs -t vfat /dev/sdb1
mkfs.vfat 3.0.9 (31 Jan 2010)
mkfs.vfat: unable to open /dev/sdb1
sudo mount /dev/sdb1 -v
?e2fsck
:Bad magic number in super-block while trying to open /dev/sdb1 SuperBlock is not readable.
Respostas:
Para desativar a proteção contra gravação do dispositivo de disco, usamos o utilitário de sistema de baixo nível hdparm assim:
onde assumimos que
/dev/sdb
é o dispositivo de disco físico em que estamos trabalhando. Se o dispositivo tiver partições montadas como somente leitura, você deve montá-las novamente como leitura e gravação para gravar dados nelas.Espero que ajude.
fonte
readonly = 0 (off)
mas ainda não sou capaz de escrever ou formatar.hdparm -r
mostra "1 - on" e depois de desbloquear comr0
: "0 - off", mas monta somente leitura de qualquer maneira. Mas montar meu cartão SD SanDisk em outro adaptador e eu poderia montá-lo rw. Acontece que dois dos meus adaptadores microSD para SD têm um pino quebrado entre dois conectores. E esses dois montarão somente leitura o que eu fizer. Kuddos para @Angel_Genchev ele responde tem mais comando nele.Depois de pesquisar sua pergunta, parece que esse é um problema não muito incomum com certas marcas de unidades flash USB (algumas mais antigas da Samsung, um modelo Kingston) que basicamente simplesmente "crap fora" sem motivo conhecido. As pessoas tentaram abri-las e pular duas pistas (talvez de um interruptor esquisito?) Sem sucesso. Se você ainda tiver esta unidade e ela ainda estiver na garantia, eu a devolveria e obteria uma substituição.
Eu odeio dar as más notícias para você = \, mas parece que você está sem sorte nesta situação, pois tudo o que eu li aponta para falha de hardware.
Editar 27/05/2016: Eu tive um problema pessoalmente com uma unidade flash lançando sobre mim recentemente. No meu caso, este era um Corsair Flash Voyager de 128GB que começou a diminuir bastante drasticamente em mim. Embora não mostrasse os sintomas observados aqui, ocasionalmente não era montado e aparecia como um dispositivo "Silicon Power". Isso foi resultado do fato de a unidade acumular uma grande quantidade de setores defeituosos e entrar no modo de diagnóstico / programação. Como essa é uma das minhas respostas mais populares e também se enquadra na categoria de "unidades flash com falha", achei que a incluiria aqui para referência.
fonte
usando
fdisk -l
localize a unidade, ou seja: / dev / sdc1agora
Por fim, reformate a unidade flash
sudo mkfs -t vfat /dev/sdc1
Achei isso rápido e fácil. Certifique-se de DESMONTAR a unidade antes de tentar formatar.
fonte
mkfs.vfat 3.0.9 (31 Jan 2010) mkfs.vfat: unable to open /dev/sdb1
hdparm -r0, blockdev --setrw, remount,rw
), mas nada resolveu o meu problema, exceto isso!mkfs.vfat: unable to open /dev/sdc: Read-only file system
A resposta de Angel é boa, mas os comandos reais não foram tão fáceis para mim. Funcionou assim: Conecte o cartão (o meu é um cartão SD com uma chave de proteção contra gravação manual, mas a chave está desligada e pode ser gravada em uma máquina Windows). O Ubuntu o montou automaticamente em / media / andrew / 6AB0-1FD91 e o dmesg mostrou que a partição era / dev / sdb1.
Desmonte-o e torne-o gravável
Crie um novo ponto de montagem e monte-o lá (meu userID de / etc / passwd é 1000)
ainda reclamará que é somente leitura. Não sei por que tive que mudar esse sinalizador antes E depois da montagem, mas essa é a única maneira que funcionou para mim. Defina-o como gravável novamente e remonte-o no mesmo local
Agora eu posso gravar no disco como meu usuário normal. Estou sendo muito cuidadoso com isso, caso esteja realmente falhando, mas esses comandos me permitiram concluir o que estava fazendo.
fonte
Nenhuma dessas respostas fornecidas até o momento está correta.
Para realmente fazê-lo funcionar, você pode substituir a detecção do disco USB anunciando seu somente leitura com uma configuração de peculiaridades USB. Aqui está como isso funciona.
1) Conecte o dispositivo USB e faça um
lsusb
exemplo:2) Anote esses dois códigos entre os dois pontos (chamados de
idVendor
eidProduct
). Desconecte o dispositivo USB.3) Remova o
usb_storage
módulo do kernel (assumindo que ele seja compilado como um módulo)4) Agora colocaremos o módulo novamente usando uma configuração de modo quirks para substituir a detecção do sinalizador somente para gravação do dispositivo.
De source / drivers / usb / storage / usb.c # L572, retirado da v4.19, você pode ver que a configuração do modo quirks que procuramos é
w
. Aqui está como recarregaremos o módulo do kernel:Substitua os números entre os dois pontos pelos que viu na etapa (1) acima.
5) conecte novamente o dispositivo de armazenamento USB. Agora podemos confirmar com o dmesg que isso funcionou:
Antes:
E depois:
Depois de emitir um comando mount, você verá:
/dev/sdb1 on /usb type ext4 (rw,relatime)
Agora, tire suas coisas do disco imediatamente, está falhando.
fonte
Bem, isso é meio chato.
Eu tentei de tudo aqui e em outros lugares e nada funcionou.
Formatado no laptop Windows de um amigo - funciona bem agora. FFS!
Suspiro .... (perguntando agora se eu poderia corrigi-lo na minha VM Win 7 na minha área de trabalho do Mint?).
fonte
Insira o cartão de memória e inicie o gparted. Selecione-o através do botão no canto superior direito. Deveria ser óbvio se você estiver inspecionando seu cartão de memória (o tamanho é uma boa pista). Selecione Partição -> desmontar.
Selecione 'Dispositivo' na parte superior, depois 'Criar tabela de partição' e escolha o padrão, que é msdos.
Agora você deve conseguir criar uma nova partição e formatá-la f32. Se você não pode, provavelmente é um fracasso.
HTH
fonte