Мне так или иначе удалось записать изображение ISO 9660 на мою Карту памяти, которая заставляет весь мой компьютер думать, что устройством является на самом деле CD. Я попробовал различные методы удаления этого раздела, но ничто, кажется, не работает. Я попробовал fdisk
, который говорит
$ fdisk -l /dev/sdb Cannot open /dev/sdbразделенные катастрофические отказы, когда я пытаюсь использовать его на этом устройстве.
Я даже попробовал
$ dd if=/dev/zero of=/dev/sdbно это просто зависает без вывода (или на экране или на диске). Однако, когда я включаю USB, он действительно монтируется, и я могу просмотреть (но не редактирование) файлы на нем.
править: теперь результат
$ dd if=/dev/zero of=/dev/sdb dd: opening `/dev/sdb': Read-only file system
Я также попытался переформатировать его в Windows, но это добирается в конец процесса формата и затем говорит, "Не мог отформатировать диск".
Как я могу удалить этот раздел и вернуть мою целую Карту памяти к нормальному снова?
РЕДАКТИРОВАНИЕ 1: Попытка простого mkfs
не работает:
$ 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)Я не могу сделать
mkfs
на /dev/sdb1
потому что нет такого раздела, как показано:$ ls /dev | grep sdb sdb
РЕДАКТИРОВАНИЕ 2: Это - информация, размещенная dmesg, когда я включаю устройство:
$ 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Это показывает, что устройство отформатировано как ISO 9660 и что это
/dev/sdb
. РЕДАКТИРОВАНИЕ 3: Это - сообщение, что я нахожу у основания dmesg
после выполнения cfdisk
и запись новой таблицы разделов к диску:
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
Хорошо, оказывается, что в этом случае что-то (возможно, когда я записал изо9660 файловых систем в диск) инициировало некоторую форму внутренней защиты от записи на диске. Нет никакой внешней защиты от записи / содержат переключатели, но это - вывод в dmesg
когда я работаю
dd if=/dev/zero of=/dev/sdb
как корень:
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
Отметьте комментарии там о защите! Однако, когда я включаю устройство, я добираюсь,
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
Обратите внимание, что в этом сообщении говорится, что устройство не защищается от записи! Таким образом, к сожалению, похоже, что диск имел его (т.е. уничтоженный).
Вы попытались повторно смонтировать его с-t опцией?
umount/dev/sdb
sudo монтируют-t vfat/dev/sdb/mnt/point
Если это не будет работать, я попытаюсь воспроизвести его позже, когда я возвращусь домой. Походит на интересную проблему. Будет забава переделать:]
Удалите диск и посмотрите, можно ли все еще читать из него. Интересно, стал ли так или иначе/dev/usb (или везде, где Вы читаете из) обычным каталогом файла.
mount
, это - iso9660 файловая система. Однако gparted просто показывает 2 ГБ освобожденного пространства на диске. dd
жалуется, что/dev/sdb является файловой системой
– a_m0d
29.07.2009, 10:49
В настоящее время Ваша Карта памяти не получала таблицы разделов, iso9660 файловая система находится непосредственно на целом диске (точно так же, как CD-ROM)
sd 6:0:0:0: [sdb] Assuming drive cache: write through
sdb: unknown partition table
Я думаю, что Вы должны сделать раздел сначала
sudo cfdisk /dev/sdb
(удостоверьтесь, что это не смонтировано прежде) в fdisk приложении создают новый раздел.
после этого сделан, сделайте файловую систему на новом разделе
sudo mkfs -t vfat /dev/sdb1
dmesg
шоу там являются на самом деле сообщением об ошибке. (см. Редактирование 3 рассматриваемых выше)
– a_m0d
30.07.2009, 01:00
Я все еще чувствую, что мы принимаем что-то, что это собирается оказаться неверным. Так как устройство читаемо, эта строка, по крайней мере, позволит Вам видеть данные для себя, а не в зависимости от интерпретаций других программ.
dd if=/dev/sdb count=1 | xxd -g1 -u
Кроме того, возможно, мы могли разделить проблемы с dev узлом от проблем с тем, что находится на устройстве путем принуждения его на другой порт. Или включите его в другой разъем USB или включите другой диск сначала, для занятия sdb.
dd if=/dev/zero of=/dev/sdb
работать на нем. Но мягкая фетровая шляпа все еще монтирует устройство как фс ISO9660, когда это включается!
– a_m0d
30.07.2009, 00:54
udev
, или независимо от того, что это - который автоматически монтирует диск. клавиатуры
– a_m0d
30.07.2009, 16:39
Взгляд на dmesg
отрывок, кажется, что что-то автоматически монтируется, диск (свериться mount
). Прежде, чем сделать что-либо с ним, Вы должны umount он вручную.
Затем обнулите блок с таблицей разделов (dd if=/dev/zero of=... bs=512 count=1
), и выполненный инструмент разделения для воссоздания пустой таблицы разделов. После этого отключите и повторно включитесь (не должен быть необходим, но...), и создавайте/форматируйте разделы, которые Вы хотите на нем. После создания разделов (возможно, необходимо будет отключить и повторно включиться снова), Вы должны иметь /dev/sdb1
или что-то как этот, который является, где необходимо создать файловую систему.
Обратите внимание, что все шаги должны быть сделаны как корень (с sudo
или эквивалент). Старайтесь не записать неправильное имя устройства, или Вы могли вытереть свой жесткий диск!
mkdosfs -I /dev/sdb
создаст vfat файловую систему на диске.-I должен быть передан, если Вы хотите, чтобы файловая система была создана на всем диске а не на разделе. Если Вы хотите разделить диск сначала, используйте fdisk. Конечно, fdisk не может считать диск теперь, потому что он не имеет никаких разделов. Но я уверен, что это сможет записать в него.
У меня была та же самая проблема как Вы. Однако я смог найти решение от удивительного места. Старый ноутбук с Windows 98SE на ней, который является последней системой Windows я когда-либо, владел. Так или иначе просто вставьте его и когда Вы попытаетесь получить доступ к Windows диска, спросите Вы, если требуется отформатировать его. Нажмите да, и у Вас будет fat16 отформатированным диском, это полностью функционально. Я не знаю, работает ли это с более новыми версиями Windows все же. Всего наилучшего.