Ich habe einen USB, der schreibgeschützt ist:
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
Wie kann ich den Schreibschutz deaktivieren?
Was ich versucht habe
- Überprüft, ob es einen Hardware-Schalter hat - nein
- Versucht es unter Windows und Linux zu formatieren (auch über das Terminal)
- Versucht
fdisk
|chmod
- Versucht, dies mit verschiedenen Tools aus dem Ubuntu-Software-Center zu beheben
- Benutzte Google und habe ungefähr 10.000 Diskussionen über dieses Problem gesehen, aber sie wurden nie gelöst
Zusätzliche Information
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.
Antworten:
Um den Schreibschutz des Festplattengeräts zu deaktivieren, verwenden wir das Low-Level-Systemdienstprogramm hdparm wie folgt:
Wir gehen davon aus, dass dies
/dev/sdb
das physische Laufwerk ist, an dem wir arbeiten. Wenn das Gerät Partitionen hat, die schreibgeschützt gemountet sind, sollten Sie sie als schreibgeschützt neu mounten, um Daten in sie zu schreiben.Ich hoffe, das hilft.
quelle
readonly = 0 (off)
aber ich bin immer noch nicht in der Lage zu schreiben oder zu formatieren.hdparm -r
zeigt dann nach dem entsperren "1 - ein" mitr0
: "0 - aus" aber mount trotzdem schreibgeschützt. Aber wenn ich meine SanDisk-SD-Karte in einen anderen Adapter einbinde, kann ich sie auch rw einbinden. Es stellt sich heraus, dass zwei meiner microSD-zu-SD-Adapter einen abgebrochenen Stift zwischen zwei Anschlüssen haben. Und diese beiden mounten alles, was ich tue, nur mit Lesezugriff. Kuddos zu @Angel_Genchev, die er beantwortet, hat das meiste Kommando.Nachdem Sie Ihre Frage untersucht haben, scheint es, dass dies ein nicht allzu ungewöhnliches Problem bei bestimmten Marken von USB-Flash-Laufwerken ist (einige ältere Samsung, ein Kingston-Modell), das im Wesentlichen ohne bekannten Grund einfach "aus dem Ruder läuft". Die Leute hatten versucht, sie zu öffnen und zwei Leads zu überspringen (vielleicht von einem schuppigen Schalter?), Ohne Erfolg. Wenn Sie dieses Laufwerk noch haben und es noch in der Garantie ist, würde ich es zurücksenden und mir einen Ersatz besorgen.
Ich hasse es, Ihnen die schlechten Nachrichten zu überbringen, aber es scheint, dass Sie in dieser Situation Pech haben, da alles, was ich gelesen habe, auf einen Hardwareausfall hindeutet.
Edit 27.05.2016: Ich habe vor kurzem ein persönliches Problem mit einem Flash-Laufwerk festgestellt. In meinem Fall handelte es sich um einen Corsair Flash Voyager 128 GB, der sich bei mir drastisch verlangsamt hat. Es zeigte zwar nicht die hier angegebenen Symptome, war jedoch gelegentlich nicht aktiv und wurde als "Silicon Power" -Gerät angezeigt. Dies ist darauf zurückzuführen, dass das Laufwerk eine große Anzahl fehlerhafter Sektoren angehäuft hat und in den Diagnose- / Programmiermodus übergegangen ist. Da dies eine meiner beliebtesten Antworten ist und dies auch in die Kategorie "Fehlerhafte Flash-Laufwerke" fällt, dachte ich, ich würde es hier als Referenz aufnehmen.
quelle
Verwendung
fdisk -l
des Antriebs finden, das heißt: / dev / sdc1jetzt
Zum Schluss formatieren Sie das Flash-Laufwerk neu
sudo mkfs -t vfat /dev/sdc1
Ich fand das schnell und einfach. Stellen Sie sicher, dass das Laufwerk UNMOUNT ist, bevor Sie mit dem Formatieren beginnen.
quelle
mkfs.vfat 3.0.9 (31 Jan 2010) mkfs.vfat: unable to open /dev/sdb1
hdparm -r0, blockdev --setrw, remount,rw
), aber nichts hat mein Problem gelöst, außer dies!mkfs.vfat: unable to open /dev/sdc: Read-only file system
Angels Antwort ist gut, aber die tatsächlichen Befehle waren für mich nicht so einfach. Das hat funktioniert: Stecke die Karte ein (meine ist eine SD-Karte mit einem manuellen Schreibschutzschalter, aber der Schalter ist ausgeschaltet und kann auf einem Windows-Computer beschrieben werden). Ubuntu hat es automatisch auf / media / andrew / 6AB0-1FD91 gemountet, und dmesg zeigte, dass die Partition / dev / sdb1 ist.
Hängen Sie es aus und machen Sie es beschreibbar
Erstellen Sie einen neuen Einhängepunkt und hängen Sie ihn dort ein (meine Benutzer-ID aus / etc / passwd ist 1000)
es wird sich immer noch beschweren, dass es schreibgeschützt ist. Ich weiß nicht, warum ich dieses Flag vor UND nach dem Mounten ändern musste, aber nur so hat es bei mir funktioniert. Stellen Sie es wieder auf beschreibbar und montieren Sie es wieder an derselben Stelle
Jetzt kann ich als normaler Benutzer auf die Festplatte schreiben. Ich bin sehr vorsichtig damit, falls es tatsächlich fehlschlägt, aber mit diesen Befehlen konnte ich beenden, was ich tat.
quelle
Keine der bisher gegebenen Antworten ist richtig.
Damit es tatsächlich funktioniert, können Sie die Erkennung des USB-Datenträgers außer Kraft setzen, indem Sie dessen Schreibschutz mit einer USB-Macken-Einstellung ankündigen. So funktioniert das.
1) Schließen Sie das USB-Gerät an und führen Sie ein
lsusb
Beispiel aus:2) Notieren Sie sich diese beiden Codes zwischen dem Doppelpunkt (mit
idVendor
und bezeichnetidProduct
). Trennen Sie das USB-Gerät.3) Entfernen Sie das
usb_storage
Kernelmodul (vorausgesetzt, es ist als Modul kompiliert)4) Jetzt setzen wir das Modul wieder in den Quirks-Modus, um die Erkennung des Nur-Schreiben-Flags des Geräts zu überschreiben.
In source / drivers / usb / storage / usb.c # L572 aus v4.19 können Sie sehen, dass die gesuchte Einstellung für den Mackenmodus lautet
w
. So laden wir das Kernelmodul neu:Ersetzen Sie die Zahlen zwischen den Doppelpunkten durch die, die Sie in Schritt (1) von oben gesehen haben.
5) Schließen Sie das USB-Speichergerät wieder an. Jetzt können wir mit dmesg bestätigen, dass dies funktioniert hat:
Vor:
Und danach:
Auch nach der Ausgabe eines Mount-Befehls sehen Sie:
/dev/sdb1 on /usb type ext4 (rw,relatime)
Holen Sie sich jetzt Ihre Sachen sofort von der Festplatte, es schlägt fehl.
quelle
Nun, das ist ein bisschen blöd.
Ich habe hier und anderswo alles versucht und nichts hat funktioniert.
Formatiert auf dem Windows-Laptop eines Freundes - funktioniert jetzt einwandfrei. FFS!
Seufz ... (Sie fragen sich jetzt, ob ich es möglicherweise in meiner Win 7-VM auf meinem Mint-Desktop reparieren konnte?)
quelle
Setzen Sie den Memory Stick ein und starten Sie gparted. Wählen Sie es über die Schaltfläche oben rechts aus. Es sollte offensichtlich sein, ob Sie Ihren Memory Stick überprüfen (Größe ist ein guter Hinweis). Wählen Sie Partition -> Unmount.
Wählen Sie oben "Gerät", dann "Partitionstabelle erstellen" und übernehmen Sie die Standardeinstellung "msdos".
Jetzt sollten Sie in der Lage sein, eine neue Partition zu erstellen und diese mit f32 zu formatieren. Wenn Sie nicht können, ist es wahrscheinlich pleite.
HTH
quelle