Nie mogę usunąć atrybutu „tylko do odczytu” z karty Micro SD 32 GB firmy Kingston. Chcę wyczyścić całą kartę.
Dostałem kartę Raspberry Pi 3, kartę 32 GB Micro SD i echo do zabawy. Karta Micro SD była fabrycznie nowa, kiedy ją dostałem. Pobrałem świeży obraz Ubuntu 16.04 i sformatowałem kartę za pomocą Etchera w systemie Windows 10. Po zakończeniu podłączyłem wszystko, aby Raspberry działało i zauważyłem, że nic się nie stało. Zaczęłam trochę panikować i pomyślałam sobie: „Dobra robota, Scrat, ty głupku. Dlaczego nie mogłeś po prostu trochę poczekać i google to dziwaczny samouczek”.
Poszukałem, co mogło pójść nie tak i co powinienem zrobić, i musiałem odkryć, że nie można po prostu umieścić na nim żadnego losowego obrazu Ubuntu. Musi to być jeden z obrazów dostarczonych przez twórcę (w moim przypadku Ubuntu Mate lub Raspbian).
Próby napraw w systemie Windows
Podczas próby sformatowania poprzez kliknięcie prawym przyciskiem myszy i ponowne sformatowanie za pomocą Eksploratora Windows, pierwszą rzeczą, jaką spotkałem, było to, że karta była w trybie tylko do odczytu. Próba uzyskania dostępu do niego w Eksploratorze Windows pokazała mi tylko katalog EFI, co mnie nie zaskoczyło.
Pierwszą rzeczą, którą znalazłem w Internecie, jest przełącznik / blokada na karcie, ale moja karta w ogóle nie ma blokady. Ani sama karta, ani czytnik kart Robson Mini, których używam do czytania.
Potem próbowałem sobie przypomnieć, jak edytować dyski.
Pamiętaj, że nadal korzystam z systemu Windows 10, ponieważ musiałbym skopiować mój stary VM-Ware i obraz systemu z dysku zewnętrznego, a ja nie wiedziałem, gdzie to jest.
Otworzyłem wiersz poleceń, uruchomiłem diskpart i wyświetliłem listę wszystkich moich dysków
list disk
Które wyjście ma mój dysk twardy 931 GB, dysk SSD 119 GB (na którym jest zainstalowany system Windows) i kartę Micro SD 29 GB:
Datenträger ### Status Größe Frei Dyn GPT --------------- ------------- ------- ------- --- --- Datenträger 0 Online 119 GB 0 B * Datenträger 1 Online 931 GB 0 B * Datenträger 2 Online 29 GB 29 GB
Po otrzymaniu informacji, wiedziałem, że Datenträger 2 aka Disk 2 to karta, którą chciałem edytować, wykonując:
select disk 2
Jak na razie dobrze. Następnie chciałem usunąć atrybut tylko do odczytu, wykonując:
attributes disk clear readonly
Który również został pomyślnie wykonany.
Ale kiedy próbowałem zrobić:
clean
Dostałem „Komunikat o błędzie sprzętu” (w języku niemieckim, dlatego nie kopiuję go tutaj, ale w zasadzie powiedział tylko błąd sprzętu). Ten błąd wystąpił także podczas próby utworzenia partycji podstawowej lub wykonania innych czynności.
W tym momencie panika we mnie zaczęła narastać. Ale starałem się zachować spokój, ponieważ wciąż miałem kilka sztuczek w rękawach.
Próbowałem użyć programów: EaseUS Partition Master, Etcher (ponownie) i SD Card Formatter, które wszystkie zawiodły z powodu ochrony karty (tylko do odczytu, chronionej przed zapisem).
Próbowałem także użyć edycji rejestru, aby zmienić zachowanie systemu Windows w stosunku do urządzeń pamięci masowej, tworząc klucz (którego jeszcze tam nie było):
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies
i utworzenie nowego słowa kluczowego (DWORD WriteProtect) i ustawienie go na 0, co oznacza brak tylko do odczytu.
Próby poprawek w systemie Linux
To też nie działało i zacząłem tracić nerwy z Windows, więc zsunąłem tyłek i szukałem zewnętrznego dysku, zainstalowałem VM-Ware i uruchomiłem maszynę wirtualną Ubuntu 16.04, której używam do szkoły.
Uruchamiając maszynę wirtualną już zauważyłem, że Ubuntu był w stanie pomóc mi znacznie bardziej niż Windows (a przynajmniej tak mi się wydawało, ponieważ moje umiejętności w zakresie Linuxa są ograniczone w tym aspekcie). Pierwszą rzeczą, którą widzę, jest ikona na pulpicie połączona z kartą o nazwie „Ubuntu 16.04.2 LTS amd64”, w której zawarte są różne rzeczy, które Ubuntu musi pracować, widoczne na zdjęciu tutaj .
Ale to by mi nie pomogło. Więc poszedłem dalej, założyłem terminal i napisałem:
lsblk
Co potwierdziło, że karta jest widoczna (sdb):
NAZWA MAJ: MIN RM ROZMIAR RO TYPE MOUNTPOINT sda 8: 0 0 30G 0 dysk Dasda1 8: 1 0 30G 0 część / sdb 8:16 1 29,2G 1 dysk Dsdb1 8:17 1 1,5G 1 część / media / pose / Ubuntu 16.04.2 LTS amd64 Dsdb2 8:18 1 2,4M 1 część sr0 11: 0 1 1024M 0 rom
Ale lsblk nie był zbyt precyzyjny, więc użyłem też polecenia, którego nauczyliśmy się w szkole:
fdisk -l
Co było nieco bardziej precyzyjne:
Dysk / dev / sda: 30 GiB, 32212254720 bajtów, 62914560 sektorów Jednostki: sektory 1 * 512 = 512 bajtów Rozmiar sektora (logiczny / fizyczny): 512 bajtów / 512 bajtów Rozmiar I / O (minimalny / optymalny): 512 bajtów / 512 bajtów Typ etykiety dysku: dos Identyfikator dysku: 0xa14a8cb2 Początek rozruchu urządzenia Rozmiar sektorów końcowych Typ Id / dev / sda1 2048 62914559 62912512 30G 83 Linux Dysk / dev / sdb: 29,2 GiB, 31306285056 bajtów, 61145088 sektorów Jednostki: sektory 1 * 512 = 512 bajtów Rozmiar sektora (logiczny / fizyczny): 512 bajtów / 512 bajtów Rozmiar I / O (minimalny / optymalny): 512 bajtów / 512 bajtów Typ etykiety dysku: dos Identyfikator dysku: 0x15e2543d Początek rozruchu urządzenia Rozmiar sektorów końcowych Typ Id / dev / sdb1 * 0 3035519 3035520 1,5G 0 Pusty / dev / sdb2 14432 19295 4864 2,4M ef EFI (FAT-12/16/32)
Byłem w euforii, ponieważ myślałem, że w końcu złamałem ten cholerny kod Davinci czy coś takiego, więc pobiegłem
rozdzierał
Który natychmiast otworzył się z komunikatem o błędzie:
Deskryptor sterownika mówi, że fizyczny rozmiar bloku wynosi 2048 bajtów, ale Linux mówi, że to 512 bajtów.
Zignorowałem to, ponieważ myślałem, że to nie jest biggie, ale zaraz po zignorowaniu poprzedniego pojawił się następny komunikat o błędzie:
Partycje z 1 na / dev / sdb zostały zapisane, ale nie byliśmy w stanie poinformować jądra o zmianie, prawdopodobnie dlatego, że są w użyciu. W rezultacie stare partycje będą nadal używane. Powinieneś zrestartować teraz przed wprowadzeniem dalszych zmian.
Zrobiłem więc to, co powiedziała mi wiadomość i uruchomiłem ponownie. Ale to też nie miało sensu, ponieważ ponownie pojawiły się te same dwa błędy. Tym razem ich zignorowałem i otworzyło się moje stare, dobre, zaufane okno, które znałem ze szkoły.
Po zmianie na / dev / sdb bardzo szybko się to zagmatwało. Jak widać tutaj , rzeczy są dość dziwne, ponieważ teraz sdb jest jakoś uważany za mój dysk SSD zamiast karty, ale obraz z karty jest nadal zamontowany. W tym momencie byłem zbyt zdenerwowany, aby kontynuować robienie czegokolwiek, w obawie przed przypadkowym zepsuciem mojego laptopa.
Nawiasem mówiąc, próbowałem również dać sobie uprawnienia dostępu do dysku i spróbować użyć dd
polecenia, ale z tym samym komunikatem o błędzie (Odmowa dostępu, tylko do odczytu lub coś, nie jestem do końca pewien, ale coś w tym kierunku ).
Zamówiłem już inną kartę 32 GB Micro SD od Amazon, na wypadek, gdyby nie było już nadziei dla starej. Ale jeszcze się nie poddaję.
(Przepraszam, że niektóre rzeczy są w języku niemieckim, ale myślę, że w większości są to oczywiste.)
źródło
Odpowiedzi:
Twój post był z pewnością wystarczająco zabawny. Dziękuję za to.
Wiem, że nie jest to odpowiedź, której szukasz. Wygląda jednak na to, że karta SD utknęła w trybie tylko do odczytu. Zrobiłeś wszystko, co możesz. To naprawdę nie jest takie trudne.
Działa tak, jakby to było, gdyby na karcie był przełącznik zabezpieczenia przed zapisem. Brzmi, jakbyś potwierdził, że tak nie jest, ale może po prostu jeszcze raz sprawdź, jeszcze raz? Przyszło mi na myśl, że może używasz karty mini-SD w przejściówce mini-SD na SD. A może spojrzałeś na adapter, ale nie na samą kartę mini-sd? Nie wiem, po prostu to wyrzucam. Jeśli jest adapter, może sam adapter się zepsuł? Nie pamiętam, czy wspomniałeś, jeśli próbowałeś innego czytnika kart. Może czytelnik poszedł źle?
Poza tym dość powszechne jest, że coś takiego „zawiedzie” w trybie tylko do odczytu. Więc moje wnętrzności mówią, że karta poszła nie tak.
Wygląda na to, że jesteś na dobrej drodze, po prostu ją zastępujesz. Może uda ci się wymienić zły w ramach gwarancji, ponieważ jest nowy. Daj nam znać, co wymyślisz.
źródło
Takie problemy tylko do odczytu zdarzają mi się przez cały czas, gdy używam izoobrazów.
Co robię, aby rozwiązać takie problemy:
Pamiętaj, że
<yoursdcard>
jest to urządzenie, a nie partycja, więc na przykładsdc
sudo fdisk /dev/<yoursdcard> -l
lub, aby uzyskać nazwę urządzenia, którego możesz również użyćsudo parted /dev/<yoursdcard> -l
OSTRZEŻENIE: Poniższe polecenie zniszczy wszystkie dane,
/dev/<yoursdcard>
więc upewnij się, że<yoursdcard>
jest to właściwe urządzenie !!!!sudo dd if=/dev/zero of=/dev/<yoursdcard> bs=1000000 count=50
sudo fdisk /dev/<yoursdcard>
o
aby utworzyć nową tabelę partycji MSDOS na karcie SD, następnie użyjn
polecenia, aby dodać nową partycję iw
zapisać zmiany na karcie SD i wyjść z fdisksudo mkfs -t <filesystem you want> /dev/<yoursdcard>1
do sformatowania partycjiJeśli to nie działa:
<yoursdcard>
jest urządzeniesudo su
echo "0" > /sys/block/<yoursdcard>/ro
źródło
fdisk
jest o wiele bardziej niezawodnygparted
i zobaczyłbyś, czy poprawnie wykrywa twojąPamiętaj, że karta może być po prostu zepsuta. Mają trochę flasha i kontrolera na pokładzie. Jeśli karta uzna, że ma problemy, przejdzie całkowicie w tryb offline lub przejdzie w tryb tylko do odczytu, jeśli nie ma wystarczającej liczby działających komórek Flash do napisania. Czasami kontroler przechowuje informacje rozliczeniowe dla układu flash, który może ulec uszkodzeniu, powodując jego uruchomienie w trybie awaryjnym i niedozwolenie na nic. Aby poradzić sobie z tego rodzaju rzeczami, potrzebujesz „prawdziwego” czytnika kart SD, a nie czytnika tylko do pamięci masowej. „Prawdziwe” interfejsy SD mają dostęp do kontrolera i mogą dostarczyć potrzebnych informacji.
źródło
O tak. Obraz Ubuntu używa jakiegoś dziwnego formatu, który psuje większość narzędzi formatujących. Wyobrażam sobie, że to coś, co robią, aby obrazy działały na DVD. Znam to dobrze (czytaj: ciągle muszę instalować dyski Ubuntu, a potem nie znoszę ich formatować) i jest to bardzo denerwujące.
Użyj Gparted na Ubuntu (VM), aby usunąć wszystkie partycje na dysku, a następnie dodaj nową partycję FAT32. Uwaga: Jestem prawie pewien, że GParted używa hasła roota, a nie zwykłego, którego używasz do logowania. Jeśli nie znasz hasła roota, prawdopodobnie nie ustawiłeś go. Uruchom „sudo passwd”, aby ustawić hasło roota, a następnie użyj go, aby otworzyć GParted. Możesz także użyć „sudo gparted”.
Lub znajdź i zainstaluj bezpłatny program SDFormatter4 w systemie Windows (Uwaga: działa również w systemie WINE w systemie Ubuntu) i użyj go do sformatowania karty w trybie zastępowania. Ma to większą szansę na działanie, podobnie jak nie lubię oprogramowania własnościowego.
Oba mają większe szczęście w formatowaniu kart niż wbudowane narzędzia.
Oczywiście karty SD i napędy USB celowo nie przechodzą w tryb tylko do odczytu, aby dać Ci szansę na odzyskanie danych. Jeśli ta karta jest zdalnie nowa, nie powinno się to zdarzyć, ale jest to możliwe. Sugeruję również karty Samsung lub Sandisk, ponieważ karty Kingston są często fałszywe i szybko zawodzą. Miałem kiedyś ten problem, który był naprawdę awarią karty. Mam nadzieję, że tak nie jest.
źródło
Hmmm. Powinienem połączyć ten post, ponieważ zacząłem tutaj i jakoś skończyć na innym poście.
wprowadź opis linku tutaj
Najpierw upewnij się, że to nie jest czytnik kart!
Przyczyną tego problemu jest bardzo łatwo uszkodzony system plików. Problem może być spowodowany wieloma rzeczami. Jeśli sformatujesz go w systemie Linux bez odmontowywania go lub jeśli partycjonujesz go, zostanie on zamontowany lub jeśli partycje są uszkodzone, może się to zdarzyć. Najlepiej jest użyć polecenia Linux
fsck /dev/sdb1
lub dowolnego innego oznaczenia dysku/dev/sdd1
. Może to wyglądać tak,/dev/sdb1
jakby system plików był uszkodzony na karcie microSD. Ten błąd jest łatwy do popełnienia, ponieważ spójrz na to ...Musiałem odłączyć dwukrotnie napęd odłączyć obie partycje ... i tak to jest microSD, które powinny być
/dev/sdd
,/dev/sde
albo po.Jednak samo uruchomienie
fsck
może nie usunąć tego brudnego bitu, jeśli uzna, że jest on tylko do odczytu. Do tego czasu jądro Linuksa będzie nadal używać starej partycji, co oznacza, że pojawia się błąd tylko do odczytu, ponieważ nie ma możliwości, aby użytkownik mógł uzyskać uprawnienia dla starej partycji. Czasami uruchomienie dysku pozwoli jądrze przełączyć się na nową partycję, na przykład jeśli użyłeś programu do utworzenia nowej tablicy partycji.źródło