Como remover iso 9660 de USB?

20

De alguma forma, consegui escrever uma imagem iso 9660 na minha unidade USB, o que faz todo o meu computador pensar que o dispositivo é na verdade um CD. Eu tentei vários métodos de remover essa partição, mas nada parece funcionar. Eu tentei fdisk , que diz

$ fdisk -l /dev/sdb
Cannot open /dev/sdb
O parted falha quando tento usá-lo neste dispositivo.

Eu até tentei

$ dd if=/dev/zero of=/dev/sdb
mas apenas trava sem saída (na tela ou no disco). No entanto, quando eu conecto o USB, ele é montado e eu posso visualizar (mas não editar) os arquivos nele.

editar : agora o resultado é

$ dd if=/dev/zero of=/dev/sdb
dd: opening '/dev/sdb': Read-only file system

Eu também tentei reformatá-lo no Windows, mas ele chega ao final do processo de formatação e, em seguida, diz "Não foi possível formatar a unidade".

Como posso remover essa partição e colocar meu drive USB inteiro de volta ao normal novamente?

EDIT 1 : tentar um mkfs simples não funciona:

$ sudo mkfs -t vfat /dev/sdb
mkfs.vfat 3.0.0 (28 Sep 2008)
mkfs.vfat: Will not try to make filesystem on full-disk device '/dev/sdb' (use -I if wanted)
Não consigo fazer mkfs on /dev/sdb1 porque não existe tal partição, como mostrado:
$ ls /dev | grep sdb
sdb

EDIT 2 : Esta é a informação postada pelo dmesg quando eu conecto o dispositivo em:

$ dmesg
.
. (snip)
.
usb 2-1: New USB device found, idVendor=058f, idProduct=6387
usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-1: Product: Mass  Storage
usb 2-1: Manufacturer: Generic
usb 2-1: SerialNumber: G0905000000000010885
usb-storage: device found at 4
usb-storage: waiting for device to settle before scanning
usb-storage: device scan complete
scsi 6:0:0:0: Direct-Access     FLASH    Drive  AU_USB20  8.07 PQ: 0 ANSI: 2
sd 6:0:0:0: [sdb] 4069376 512-byte hardware sectors (2084 MB)
sd 6:0:0:0: [sdb] Write Protect is off
sd 6:0:0:0: [sdb] Mode Sense: 03 00 00 00
sd 6:0:0:0: [sdb] Assuming drive cache: write through
sd 6:0:0:0: [sdb] 4069376 512-byte hardware sectors (2084 MB)
sd 6:0:0:0: [sdb] Write Protect is off
sd 6:0:0:0: [sdb] Mode Sense: 03 00 00 00
sd 6:0:0:0: [sdb] Assuming drive cache: write through
 sdb: unknown partition table
sd 6:0:0:0: [sdb] Attached SCSI removable disk
sd 6:0:0:0: Attached scsi generic sg2 type 0
ISO 9660 Extensions: Microsoft Joliet Level 3
ISO 9660 Extensions: RRIP_1991A
SELinux: initialized (dev sdb, type iso9660), uses genfs_contexts
CE: hpet increasing min_delta_ns to 15000 nsec
Isso mostra que o dispositivo está formatado como ISO 9660 e que é /dev/sdb .

EDIT 3 : Esta é a mensagem que encontro na parte inferior de dmesg depois de executar cfdisk e gravar uma nova tabela de partição no disco:

SELinux: initialized (dev sdb, type iso9660), uses genfs_contexts
sd 17:0:0:0: [sdb] Device not ready: Sense Key : Not Ready [current] 
sd 17:0:0:0: [sdb] Device not ready: <> ASC=0xff ASCQ=0xffASC=0xff <> ASCQ=0xff
end_request: I/O error, dev sdb, sector 0
Buffer I/O error on device sdb, logical block 0
lost page write due to I/O error on sdb
    
por a_m0d 29.07.2009 / 07:52

13 respostas

7

Ok, acontece que neste caso, algo (possivelmente quando escrevi o sistema de arquivos iso-9660 na unidade) acionou alguma forma de proteção interna contra gravação na unidade. Existem não switches externos de proteção / retenção de gravação, mas ainda assim é a saída em dmesg quando eu executo

dd if=/dev/zero of=/dev/sdb

como root:

sd 9:0:0:0: [sdb] Add. Sense: Write protected
end_request: I/O error, dev sdb, sector 4028744
sd 9:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE,SUGGEST_OK
sd 9:0:0:0: [sdb] Sense Key : Data Protect [current] 
Info fld=0x0

Observe os comentários sobre a proteção! No entanto, quando eu conecto o dispositivo, recebo

scsi 10:0:0:0: Direct-Access     FLASH    Drive  AU_USB20  8.07 PQ: 0 ANSI: 2
sd 10:0:0:0: [sdb] 4069376 512-byte hardware sectors (2084 MB)
sd 10:0:0:0: [sdb] Write Protect is off
sd 10:0:0:0: [sdb] Mode Sense: 03 00 00 00
sd 10:0:0:0: [sdb] Assuming drive cache: write through
sd 10:0:0:0: [sdb] 4069376 512-byte hardware sectors (2084 MB)
sd 10:0:0:0: [sdb] Write Protect is off
sd 10:0:0:0: [sdb] Mode Sense: 03 00 00 00
sd 10:0:0:0: [sdb] Assuming drive cache: write through

Observe que esta mensagem diz que o dispositivo não está protegido contra gravação. Então, infelizmente, parece que o disco o teve (ou seja, kaput ).

    
por 24.08.2009 / 06:53
6

Eu sou novo neste material de administração do sistema Linux, então quando eu tive exatamente o mesmo problema eu cutuquei e cutuquei sem loucura ao meu método mas consegui remover o iso9660 fs e recuperar o pen drive.

sudo fdisk -l  /dev/sdb1

retornou

Disk /dev/sdb1: 16.0 GB, 16037969920 bytes
64 heads, 32 sectors/track, 15295 cylinders, total 31324160 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I>/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x57155aa7

     Device Boot      Start         End      Blocks   Id  System
/dev/sdb1p1            2048    31324159    15661056    5  Extended

Então eu tentei

sudo fdisk /dev/sdb1

Command (m for help): m
Command action
  . . .

seguido por

Command (m for help): d Extended
Selected partition 1

Command (m for help): v
Remaining 31324159 unallocated 512-byte sectors

Então, quando solicitado, novamente selecionado para fdisk para criar uma tabela vazia de partições (algo que imaginei poder sobrescrever com o que eu quisesse mais tarde)

Command (m for help): v
Remaining 31324159 unallocated 512-byte sectors

Command (m for help): o
Building a new DOS disklabel with disk identifier 0xea06616f.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 22: Invalid argument.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

Eu peguei as mensagens retornadas para dizer que eu pelo menos "quebrei" o iso9660 fs então tentei o mkfs

sudo mkfs /dev/sdb1

mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
979200 inodes, 3915520 blocks
.195776 blocks (5.00%) reserved for the super user
First data block=0
.Maximum filesystem blocks=4009754624
120 block groups
32768 blocks per group, 32768 fragments per group
8160 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 28 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Tudo isso me deixou com o diretório "lost + found" no pen drive.

sudo mount /dev/sdb1 /media/
ls /media/
lost+found

Finalmente, fui ao site do Ubuntu ( link , seção 2) e usei o stick para criar um imagem inicializável do Ubuntu para uso experimental, e deixe-me. A beleza das imagens do Ubuntu feitas no bastão dessa forma é que elas podem ser facilmente apagadas e o bastão recuperado para outro uso.

Eu menciono este último passo porque, em retrospecto, eu me pergunto se eu havia feito exatamente isso em primeiro lugar que teria funcionado, eu não sei. Como mencionei, eu sou novo neste material Linux e estou tentando diferentes distro's (por exemplo, Fedora, Ubuntu, etc.) em CDs ao vivo com qualquer mídia que seja mais conveniente, e com certeza vou quebrar muitas coisas pelo caminho.

    
por 23.11.2011 / 20:30
5
mkdosfs -I /dev/sdb

criará um sistema de arquivos vfat na unidade. O -I tem que ser passado se você quiser que o sistema de arquivos seja criado em toda a unidade e não em uma partição. Se você deseja particionar a unidade primeiro, use fdisk. É claro que o fdisk não consegue ler a unidade agora, porque não possui partições. Mas tenho certeza que será capaz de escrever para ele.

    
por 29.07.2009 / 09:06
2

Olhando para o fragmento dmesg , parece que algo está montando automaticamente a unidade (verifique com mount ). Antes de fazer qualquer coisa com isso, você deve desmontá-lo manualmente.

Em seguida, zere o bloco com a tabela de partições ( dd if=/dev/zero of=... bs=512 count=1 ) e execute uma ferramenta de particionamento para recriar uma tabela de partições vazia. Depois disso, desconecte e reconecte (não deve ser necessário, mas ...) e crie / formate as partições desejadas nele. Depois de criar as partições (talvez você tenha que desconectar e reconectar novamente), você deve ter /dev/sdb1 ou algo assim, que é onde você deve criar o sistema de arquivos.

Observe que todas as etapas devem ser feitas como raiz (com sudo ou equivalente). Tenha cuidado para não escrever o nome do dispositivo errado, ou você pode limpar o seu disco rígido!

    
por 29.07.2009 / 15:32
1

Atualmente o seu drive USB não tem tabela de partição, o sistema de arquivos iso9660 fica diretamente em todo o disco (como um cdrom)

sd 6:0:0:0: [sdb] Assuming drive cache: write through
 sdb: unknown partition table

Acho que você precisa criar uma partição primeiro

sudo cfdisk /dev/sdb

(certifique-se de que não esteja montado antes) no aplicativo fdisk, crie uma nova partição.

depois disso, faça o sistema de arquivos na nova partição

sudo mkfs -t vfat /dev/sdb1
    
por 29.07.2009 / 22:33
1

Eu tive exatamente o mesmo problema que você. No entanto, consegui encontrar uma solução a partir de um local surpreendente. Um laptop antigo com o Windows 98SE, que é o último sistema Windows que eu já possuí. De qualquer forma, basta colocá-lo e quando você tentar acessar a unidade, o Windows perguntará se você deseja formatá-lo. Clique em sim e você terá uma unidade formatada em fat16 totalmente funcional. Eu não sei se funciona com versões mais novas do Windows. Boa sorte.

    
por 18.01.2011 / 05:33
1

Ontem à noite eu fiz

dd if=fedora.iso of=sdx  

Após quatro horas, tive um tijolo iso9660 não inicializável e imutável. Seguindo a linha de pensamento de David, eu chamei o 'criador de disco de inicialização' do Ubuntu (Type 'startup disk creator' no painel) e simplesmente selecionei 'apagar'. Isso fez isso.

O drive USB foi então reportado como FAT32 e está tudo bem.

    
por 18.04.2012 / 16:03
0

Remova a unidade e veja se você ainda pode ler a partir dela. Gostaria de saber se de alguma forma / dev / usb (ou onde quer que você leia) se tornou um diretório de arquivos comum.

    
por 29.07.2009 / 09:37
0

Você tentou montá-lo novamente com a opção -t?

umount /dev/sdb
sudo mount -t vfat /dev/sdb /mnt/point

Se isso não funcionar, tentarei reproduzi-lo mais tarde, quando eu chegar em casa. Parece um problema interessante. Vai ser divertido mexer com:]

    
por 29.07.2009 / 09:53
0

Ainda sinto que estamos assumindo algo que se tornará falso. Como o dispositivo é legível, esta linha permitirá pelo menos que você veja os dados por si mesmo, em vez de depender das interpretações dos outros programas.

 dd if=/dev/sdb  count=1 | xxd -g1 -u 

Além disso, talvez possamos separar problemas com o nó dev de problemas com o que está no dispositivo, forçando-o para outra porta. Conecte-o a outro conector USB ou conecte outro drive primeiro para ocupar o sdb.

    
por 29.07.2009 / 22:20
0

Talvez com um simples

mkfs -t vfat /dev/sdb1
    
por 29.07.2009 / 08:09
0

A melhor maneira de fazer isso é:

# wipefs --all /dev/sdX

A partir do manual wipefs :

wipefs can erase filesystem, raid or partition-table signatures (magic strings) from the specified device to make the signatures invisible for libblkid.

wipefs does not erase the filesystem itself nor any other data from the device. When used without any options, wipefs lists all visible filesystems and the offsets of their basic signatures.

wipefs calls the BLKRRPART ioctl when it has erased a partition-table signature to inform the kernel about the change.

Isso tem muitas vantagens, como informar o kernel sobre a mudança (para que você não cometa erros ao formatar depois), não apagando dados nem sistemas de arquivos , e assim em.

    
por 05.03.2018 / 14:51
-1

O U3 tem um utilitário para remover sua partição U3. Ele também remove a partição / dispositivo criado pelo utilitário que cria a iso 9660. Isso foi confirmado apenas em um pendrive u3, mas pode ser formatado agora e recuperar totalmente o espaço inteiro como uma unidade flash. Você pode tentar.

    
por 30.06.2011 / 15:50