USB отключает защиту от записи

У меня есть USB, который защищен от записи:

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

Как я могу отключить защиту от записи?

Что я пробовал

  1. Проверил, есть ли у него аппаратный переключатель - нет
  2. Пытался отформатировать его в Windows и в Linux (тоже через терминал)
  3. Пытался fdisk | chmod
  4. Пытался исправить это с помощью нескольких инструментов из Ubuntu software center
  5. Воспользовался Google и просмотрел около 10 000 обсуждений этой проблемы, но они так и не были решены

Дополнительная информация

fsck -n /dev/sdb1

fsck from util-linux 2.19.1dosfsck 3.0.9, 31 Jan 2010, FAT32, LFNThere 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

Чтобы отключить защиту дискового устройства от записи, мы используем низкоуровневую системную утилиту hdparm следующим образом:

sudo hdparm -r0 /dev/sdb

где мы предполагаем, что /dev/sdb это физическое дисковое устройство, над которым мы работаем.Если на устройстве есть разделы, смонтированные как доступные только для чтения, вы должны повторно смонтировать их как доступные для чтения и записи, чтобы записать в них данные.

Надеюсь, это поможет.

После изучения вашего вопроса выясняется, что это не слишком редкая проблема с некоторыми марками USB-накопителей (некоторые старые Samsung, модель Kingston), которые, по сути, просто "выходят из строя" по неизвестной причине. Люди пытались открыть их и перепрыгнуть через два провода (может быть, от неисправного переключателя?), Но безрезультатно. Если у вас все еще есть этот диск и на него все еще действует гарантия, я бы вернул его и получил замену.

Мне неприятно сообщать вам плохие новости =\ но, похоже, вам не повезло в этой ситуации, поскольку все, что я прочитал, указывает на аппаратный сбой.

Редактировать 27.05.2016: Недавно у меня лично возникла проблема с отслаивающейся флешкой. В моем случае это был Corsair Flash Voyager 128GB, который начал довольно сильно замедляться у меня. Хотя у него не было симптомов, отмеченных здесь, иногда он не монтировался и отображался как устройство "Silicon Power". Это произошло в результате того, что накопитель накопил большое количество поврежденных секторов и перешел в режим диагностики / программирования. Поскольку это один из моих наиболее популярных ответов, и он также относится к категории "неисправных флэш-накопителей", я решил включить его здесь для справки.

Обновление 2: Что касается этого Corsair Flash Voyager, я отправил свой на RMA, но мой второй потерпел неудачу таким же образом. Проблема на самом деле оказалась механической. Скользящий механизм, по-видимому, оказывает небольшое давление на печатную плату. Обычно это не вызвало бы проблем в нормальном сроке службы устройства. Но для этой конкретной модели, похоже, у нее были слабые паяные соединения, которые усугублялись давлением от скольжения, что приводило к окислению в растрескавшемся соединении и возможному выходу из строя. Вместо того чтобы заниматься еще одним RMA, я взял дело в свои руки. Я открыл корпус, снял часть пластикового корпуса, чтобы дать печатной плате немного места для маневра, а затем переплавил чип NAND, чтобы восстановить поврежденные паяные соединения. Это отлично работает и по сей день!

с помощью fdisk -l найдите диск, например: /dev/sdc1

сейчас

umount /dev/sdc1

Наконец, переформатируйте флэш-накопитель

sudo mkfs -t vfat /dev/sdc1

Я нашел это быстрым и легким. Обязательно ОТКЛЮЧИТЕ диск перед попыткой форматирования.

Ответ Ангела хорош, но сами команды дались мне не так просто. Вот что сработало: подключите карту (у меня это SD-карта с включенным переключателем защиты от записи вручную, но переключатель выключен, и она доступна для записи на компьютере с Windows).Ubuntu автоматически смонтировала его в /media/andrew/6AB0-1FD91, и dmesg показал, что раздел находится в /dev/sdb1.

Размонтируйте его и сделайте доступным для записи

sudo umount /dev/sdb1sudo hdparm -r0 /dev/sdb

Создайте новую точку монтирования и смонтируйте ее там (мой идентификатор пользователя из /etc/passwd равен 1000)

sudo mkdir /media/andrew/tempsudo mount -o uid=1000 /dev/sdb1 /media/andrew/temp

он все равно будет жаловаться, что доступен только для чтения. Я не знаю, почему мне пришлось менять этот флаг до И после монтирования, но это единственный способ, которым это сработало для меня. Снова установите его в режим записи и перемонтируйте в том же месте

sudo hdparm -r0 /dev/sdb1sudo mount -o remount,rw /dev/sdb1

Теперь я могу записывать данные на диск как обычный пользователь. Я очень осторожен с ним на случай, если он действительно выйдет из строя, но эти команды позволили мне закончить то, что я делал.

Ни один из этих ответов, представленных до сих пор, не является правильным.

Чтобы действительно заставить его работать, вы можете переопределить обнаружение USB-диска, объявляющего его доступным только для чтения, с помощью настройки USB quirks. Вот как это работает.

1) Подключите USB-устройство и выполните lsusb, пример:

$ lsusbBus 002 Device 012: ID 0781:5583 SanDisk Corp. 

2) Обратите внимание на эти два кода между двоеточием (называемые idVendor и idProduct). Отключите USB-устройство от сети.

3) Удалите usb_storage модуль ядра (при условии, что он скомпилирован как модуль)

$ sudo modprobe -r $(lsmod | sed -n 's:,: :g ; s,^usb_storage[ 0-9]*,,p') usb_storage

4) Теперь мы вернем модуль в режим использования настроек режима причуд, чтобы переопределить обнаружение флага устройства только для записи.

От источник/драйверы/usb/хранилище/usb.c#L572 взято из версии 4.19, вы можете видеть, что настройка режима причуд, которую мы ищем, является w. Вот как мы перезагрузим модуль ядра:

$ sudo modprobe usb_storage quirks=0781:5583:w

Замените цифры между двоеточиями на те, которые вы видели на шаге (1) сверху.

5) снова подключите USB-накопитель. Теперь мы можем подтвердить с помощью dmesg, что это сработало:

До:broken write only

И после:working read/write

Кроме того, после выполнения команды монтирования вы увидите:

/dev/sdb1 on /usb type ext4 (rw,relatime)

А теперь немедленно убери свои вещи с этого диска, он выходит из строя.

Что ж, это небольшой облом.

Я перепробовал все здесь и в других местах и; ничего работал.

Отформатировал его на ноутбуке друга с Windows - теперь работает нормально. ФФС!

Вздох .... (теперь интересно, мог ли я вместо этого исправить это в своей виртуальной машине Win 7 на рабочем столе Mint?).

Это происходит, когда ISO-файл был записан на usb с помощью команды DD или любого из "стандартных" инструментов.

Если он создан таким образом, нет никакого способа сделать его доступным для записи.

Способ сделать это - записать ISO с помощью какого-нибудь инструмента, такого как unetbootin (linux) или Roofus (Windows).

>Вставьте карту памяти и запустите gparted. Выберите его с помощью кнопки в правом верхнем углу. Это должно быть очевидно, если вы проверяете свою карту памяти (размер - хорошая подсказка). Выберите Раздел-- размонтировать.

Выберите "Устройство" вверху, затем "Создать таблицу разделов" и выберите значение по умолчанию - msdos.

Теперь вы должны иметь возможность создать новый раздел и отформатировать его f32. Если вы не можете, это, вероятно, провал.

HTH

Я не могу отформатировать его из-за защиты от записи.

@kingmilo e2fsck : Неправильное магическое число в суперблоке при попытке открыть суперблок /dev/sdb1 не читается.

@micha - что это за USB-устройство - очевидно, вы проверили, есть ли у него аппаратный переключатель? какие-либо ошибки при попытке его смонтировать? sudo mount /dev/sdb1 -v ?

миша, это справедливо. Вы пробовали запускать ** efsck ** или использовали ** Дисковую утилиту Ubuntu ** для проверки состояния флэш-диска? Если он работал нормально, а затем внезапно перестал работать, возможно, произошла аппаратная неисправность.

@micha - очень хорошо, но это все равно не значит, что он не неисправен, хотя, к сожалению. Обычно устройства хранения данных кажутся работающими нормально, когда на самом деле они неисправны, просто на другой стадии неисправности. Я думаю, что при всей активности по этому вопросу вам следует попросить небольшие пожертвования на замену диска, это было бы проще

Какая это марка / модель?

Я просто знаю, что это дословно.

Привет, Миша - Некоторые USB-накопители защищены каким-то шифрованием, *** Дословно *** есть несколько таких продуктов, как этот **ERROR: Requested page not found | Verbatim Europe - Data Storage, Computer & Imaging Consumables ** это помешало бы пользователю выполнять форматирование, чтение и запись на флэш-диск без предоставления пароля для обхода шифрования. Также следует отметить, что большинство таких USB-накопителей работают только с ОС Windows, поскольку программное обеспечение для шифрования написано специально для Windows. При подключении USB к компьютеру с Windows он устанавливает свое собственное программное обеспечение?

@kingmilo Нет, он с самого начала не был защищен от записи, и я ничего не сделал, чтобы защитить его.

Это новый USB-накопитель, недавно купленный и никогда не использовавшийся? Если это так, я бы отнес его обратно в магазин, где купил, и получил замену. Если это диск, который у вас был и которым вы пользовались в течение некоторого времени, и это произошло только что, вам нужно предоставить информацию о том, что вы недавно сделали, чтобы привести его в это состояние, в вашем вопросе слишком мало информации, чтобы получить представление о том, что делать, чтобы решить вашу проблему.