Mam urządzenie USB chronione przed zapisem:
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
Jak mogę wyłączyć ochronę przed zapisem?
Co próbowałem
- Sprawdzone, czy ma przełącznik sprzętowy - nie
- Próbowałem sformatować go w systemie Windows i Linux (również przez terminal)
- Próbowałem
fdisk
|chmod
- Próbowałem to naprawić za pomocą kilku narzędzi z centrum oprogramowania Ubuntu
- Korzystałem z Google i widziałem około 10 000 dyskusji na temat tego problemu, ale nigdy nie zostały one rozwiązane
Dodatkowe informacje
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.
Odpowiedzi:
Aby wyłączyć ochronę przed zapisem urządzenia dyskowego, używamy narzędzia systemowego hdparm niskiego poziomu w następujący sposób:
zakładamy, że
/dev/sdb
na fizycznym urządzeniu dyskowym pracujemy. Jeśli urządzenie ma partycje zamontowane jako tylko do odczytu, należy ponownie zamontować je jako do odczytu i zapisu, aby zapisać na nich dane.Mam nadzieję, że to pomaga.
źródło
readonly = 0 (off)
ale nadal nie jestem w stanie pisać ani formatować.hdparm -r
pokazuje „1 - włączony”, a następnie po odblokowaniu za pomocąr0
: „0 - wyłączony”, ale i tak montuje tylko do odczytu. Ale zamontowanie mojej karty SD SanDisk w innym adapterze i mogę ją zamontować rw. Okazuje się, że dwa z moich adapterów microSD-na-SD mają przerwany pin między dwoma złączami. I ci dwaj będą montować tylko do odczytu, cokolwiek zrobię. Kuddos do @Angel_Genchev, w którym ma najwięcej odpowiedzi.Po zbadaniu twojego pytania wydaje się, że jest to niezbyt częsty problem z niektórymi dyskami flash USB (niektóre starsze modele Samsunga, model Kingston), które w zasadzie po prostu „bzdurują” bez żadnego znanego powodu. Ludzie próbowali je otworzyć i przeskoczyć dwa przewody (może z niestabilnego przełącznika?) Bezskutecznie. Jeśli nadal masz ten dysk i nadal jest on objęty gwarancją, zwrócę go i otrzymam zamiennik.
Nienawidzę przekazywać ci złych wiadomości = \, ale wygląda na to, że nie masz szczęścia w tej sytuacji, ponieważ wszystko, co przeczytałem, wskazuje na awarię sprzętu.
Edytuj 27.05.2016: Niedawno wystąpił problem z dyskiem flash. W moim przypadku był to Corsair Flash Voyager 128 GB, który zaczął mnie drastycznie spowalniać. Chociaż nie pokazywał tutaj zanotowanych symptomów, czasami nie montował się i pojawiał się jako urządzenie „Silicon Power”. Było to spowodowane tym, że dysk zgromadził dużą liczbę uszkodzonych sektorów i przeszedł w tryb diagnostyczny / programowania. Ponieważ jest to jedna z moich bardziej popularnych odpowiedzi, która również należy do kategorii „awarii dysków flash”, pomyślałem, że dołączę ją tutaj w celach informacyjnych.
źródło
za pomocą
fdisk -l
zlokalizuj dysk, tj .: / dev / sdc1teraz
Na koniec sformatuj dysk flash
sudo mkfs -t vfat /dev/sdc1
Znalazłem to szybko i łatwo. Pamiętaj, aby ODŁĄCZYĆ dysk przed próbą sformatowania.
źródło
mkfs.vfat 3.0.9 (31 Jan 2010) mkfs.vfat: unable to open /dev/sdb1
hdparm -r0, blockdev --setrw, remount,rw
), ale nic nie rozwiązało mojego problemu oprócz tego!mkfs.vfat: unable to open /dev/sdc: Read-only file system
Odpowiedź Anioła jest dobra, ale rzeczywiste polecenia nie były dla mnie takie łatwe. Oto, co zadziałało: podłącz kartę (moja to karta SD z ręcznym przełącznikiem zabezpieczenia przed zapisem, ale przełącznik jest wyłączony i można go zapisywać na komputerze z systemem Windows). Ubuntu zamontował go automatycznie na / media / andrew / 6AB0-1FD91, a dmesg pokazał, że partycja to / dev / sdb1.
Odmontuj go i spraw, aby można go było zapisać
Utwórz nowy punkt montowania i zamontuj go tam (mój identyfikator użytkownika z / etc / passwd to 1000)
nadal będzie narzekać, że jest to tylko do odczytu. Nie wiem, dlaczego musiałem zmienić tę flagę przed ORAZ po zamontowaniu, ale to jedyny sposób, który zadziałał dla mnie. Ustaw ponownie na zapisywalny i podłącz ponownie w tym samym miejscu
Teraz mogę pisać na dysk jako mój normalny użytkownik. Jestem bardzo ostrożny na wypadek, gdyby rzeczywiście zawiódł, ale te polecenia pozwoliły mi dokończyć to, co robiłem.
źródło
Żadna z podanych do tej pory odpowiedzi nie jest poprawna.
Aby faktycznie działało, możesz zastąpić wykrywanie dysku USB, który ogłasza, że jest tylko do odczytu, z ustawieniem dziwactwa USB. Oto jak to działa.
1) Podłącz urządzenie USB i wykonaj
lsusb
przykład:2) Zwróć uwagę na te dwa kody między dwukropkami (zwane
idVendor
iidProduct
). Odłącz urządzenie USB.3) Usuń
usb_storage
moduł jądra (zakładając, że jest skompilowany jako moduł)4) Teraz ponownie wprowadzimy moduł w tryb dziwactwa, aby zastąpić wykrywanie flagi tylko do zapisu urządzenia.
Z source / drivers / usb / storage / usb.c # L572 pobranych z wersji 4.19 widać, że szukamy ustawienia trybu dziwactwa
w
. Oto jak ponownie załadujemy moduł jądra:Zamień liczby między dwukropkami na te, które widziałeś w kroku (1) z góry.
5) podłącz ponownie urządzenie pamięci USB. Możemy teraz potwierdzić za pomocą dmesg, że to zadziałało:
Przed:
I po:
Również po wydaniu polecenia montowania zobaczysz:
/dev/sdb1 on /usb type ext4 (rw,relatime)
Teraz idź natychmiast zabrać swoje rzeczy z tego dysku, to się nie udaje.
źródło
To trochę kłopotliwe.
Próbowałem wszystkiego tutaj i gdzie indziej i nic nie działało.
Sformatowany na laptopie Windows znajomego, działa teraz dobrze. FFS!
Westchnienie ... (zastanawiasz się teraz, czy mógłbym to naprawić w mojej maszynie Wirtualnej Win 7 na pulpicie Mint?).
źródło
Włóż kartę pamięci i rozpocznij łączenie. Wybierz go za pomocą przycisku w prawym górnym rogu. Powinno być oczywiste, jeśli sprawdzasz swoją pamięć (rozmiar to dobra wskazówka). Wybierz Partycja -> odmontuj.
Wybierz „Urządzenie” u góry, a następnie „Utwórz tablicę partycji” i wybierz wartość domyślną, czyli msdos.
Teraz powinieneś być w stanie utworzyć nową partycję i sformatować ją f32. Jeśli nie możesz, to prawdopodobnie popiersie.
HTH
źródło