web-dev-qa-db-fra.com

Impossible de supprimer l'attribut en lecture seule de la carte Micro SD après l'image Ubuntu

Je ne peux pas supprimer l'attribut en lecture seule d'une carte micro SD Kingston 32 Go. Je veux effacer toute la carte.

On m'a donné une Raspberry Pi 3, une carte Micro SD de 32 Go et un écho pour jouer. La carte Micro SD était fraîche d’usine quand je l’ai J'ai téléchargé une nouvelle image Ubuntu 16.04 et ai formaté la carte à l'aide de Etcher sous Windows 10. Une fois terminé, j'ai tout branché pour que le Raspberry fonctionne et j'ai constaté que rien ne s'était passé. Je commençai à paniquer un peu et pensai en moi-même: "Bon travail Scrat, tu dis un idiot. Pourquoi ne peux-tu pas simplement attendre un peu et google un tutoriel flippant."

J'ai cherché sur Google ce qui aurait pu mal tourner et ce que j'aurais dû faire, et j'ai dû découvrir que vous ne pouvez pas mettre une image aléatoire d'Ubuntu dessus. Il doit s'agir d'une des images fournies par le créateur (dans mon cas, Ubuntu Mate ou Raspbian).

Tentative de correction avec Windows

Lorsque j'essayais de reformater en cliquant avec le bouton droit de la souris et en reformatant via l'Explorateur Windows, la première chose que j'ai constatée était que la carte était en mode lecture seule. Essayer d'y accéder dans l'explorateur Windows ne m'a montré que le répertoire EFI, ce qui ne m'a pas surpris.

La première chose que j’ai trouvée sur Internet concerne un commutateur/verrou sur la carte, mais ma carte n’a aucun verrou. Ni la carte elle-même, ni le lecteur de cartes Robson Mini que j'utilise pour la lecture.

Ensuite, j'ai essayé de me rappeler comment éditer des disques.
Remarquez que j'utilise encore Windows 10 à ce moment-là, car j'aurais dû copier mon ancien VM-Ware et l'image système à partir de mon disque externe, et je ne savais pas où cela se trouvait.

J'ai ouvert une ligne de commande, exécuter diskpart et répertorier tous mes disques via

list disk

Quelle est la sortie de mon disque dur de 931 Go, de mon SSD de 119 Go (où Windows est installé) et de la carte Micro SD de 29 Go:

 Datenträger ### Status Größe Frei Dyn GPT 
 --------------- ------------- --- ---- ------- --- --- 
 Datenträger 0 en ligne 119 GB 0 B * 
 Datenträger 1 en ligne 931 GB 0 B * 
 Datenträger 2 En ligne 29 Go 29 Go 

Suite aux informations dont je dispose, je savais que Datenträger 2, alias Disque 2, était la carte que je voulais éditer en faisant:

select disk 2

Jusqu'ici tout va bien. Ensuite, j'ai voulu supprimer l'attribut en lecture seule en faisant:

attributes disk clear readonly

Qui a également été exécuté avec succès.

Mais quand j'ai essayé de le faire:

clean

J'ai reçu un "message d'erreur concernant le matériel" (en allemand, c'est pourquoi je ne le copie pas ici, mais il ne s'agit essentiellement que d'une erreur matérielle). Cette erreur a également suivi lorsque vous essayez de créer une partition principale ou de faire autre chose.

À ce stade, la panique en moi a commencé à grandir de plus en plus. Mais j'ai essayé de rester calme parce que j'avais encore quelques tours dans mon sac.

J'ai essayé d'utiliser les programmes EaseUS Partition Master, Etcher (encore) et SD Card Formatter, qui ont tous échoué en raison de la protection de la carte (lecture seule, protection en écriture).

J'ai également essayé d'utiliser l'édition du registre pour modifier le comportement de Windows à l'égard des périphériques de stockage en créant la clé (qui n'y était pas encore):

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies

et en créant un nouveau mot clé (DWORD WriteProtect) et en le définissant sur 0, ce qui signifie qu'il n'y a pas de lecture seule.

Tentative de correction avec Linux

Cela n'a pas fonctionné non plus et j'ai commencé à perdre mes nerfs avec Windows, alors je me suis mis à la recherche de mon disque externe, j'ai installé VM-Ware et exécuté la machine virtuelle Ubuntu 16.04 que j'utilise à l'école.

Démarrer VM J'ai déjà remarqué qu'Ubuntu était capable de m'aider beaucoup plus que Windows (ou du moins je le pensais, car mes compétences en Linux sont limitées dans cet aspect). La première chose que je vois est une icône liée sur le bureau à la carte "Ubuntu 16.04.2 LTS AMD64" qui contient les différentes fonctions dont Ubuntu a besoin pour fonctionner visible dans l'image ici .

Mais cela ne m'aiderait pas. Alors je suis allé de l'avant et j'ai démarré un terminal et j'ai écrit:

lsblk

Qui a confirmé que la carte est visible (sdb):

 NOM MAJ: MIN RM TAILLE RO TYPE MONTURE (.). 
 Sda 8: 0 0 30G 0 disque 
 Sda1 8: 1 0 30G 0 partie/
 sdb 8:16 1 29,2G 1 disque 
 sdb1 8:17 1 1,5G 1 part/media/pose/Ubuntu 16.04.2 LTS AMD64 
 sdb2 8:18 1 2,4M 1 partie 
 Sr0 11: 0 1 1024M 0 sur 

Mais lsblk n’étant pas très précis, j’ai également utilisé la commande que nous avons apprise à l’école:

fdisk -l

Ce qui était un peu plus précis:

 Disque/dev/sda: 30 Go, 32212254720 octets, 62914560 secteurs 
 Unités: secteurs de 1 * 512 = 512 octets 
 Taille du secteur (logique/physique): 512 octets/512 octets 
 Taille d’E/S (minimum/optimale): 512 octets/512 octets 
 Type de label: dos 
 Identificateur de disque: 0xa14a8cb2 
 
 Périphérique d’amorçage Début Fin Secteurs Taille Id Type 
/Dev/sda1 2048 62914559 62912512 30G 83 Linux 
 
 
 Disque/dev/sdb: 29,2 Gi, 31306285056 octets, 61145088 secteurs 
 Unités: secteurs de 1 * 512 = 512 octets 
 Taille du secteur (logique/physique): 512 octets/512 octets 
 Taille I/O (minimum/optimal ): 512 octets/512 octets 
 Type d'étiquette de disque: dos 
 Identificateur de disque: 0x15e2543d 
 
 Périphérique de démarrage du périphérique Fin Secteur (s) Taille Identificateur de type 
/Dev/sdb1 * 0 3035519 3035520 1,5G 0 Vide 
/dev/sdb2 14432 19295 4864 2,4M de EFI (FAT-12/16/32) 

Et j'étais euphorique parce que je pensais avoir enfin déchiffré le code putain de Davinci ou quelque chose du genre, alors j'ai couru

gparted

Qui a ouvert immédiatement avec un message d'erreur:

Le descripteur de pilote indique que la taille du bloc physique est de 2 048 octets, mais que Linux indique 512 octets.

Ce que j'ai ignoré parce que je pensais que ce n'était pas grave, mais juste après avoir ignoré le précédent, le message d'erreur suivant est apparu:

Les partitions 1 sur/dev/sdb ont été écrites, mais nous n’avons pas été en mesure d’informer le noyau de la modification, probablement parce qu’elles sont en cours d’utilisation. En conséquence, les anciennes partitions resteront en cours d'utilisation. Vous devriez redémarrer maintenant avant de faire d'autres changements.

Alors j'ai fait ce que le message m'a dit et redémarré. Mais cela ne servait à rien non plus, car les deux mêmes erreurs se sont encore manifestées. Je les ai ignorés tous les deux cette fois et la bonne vieille fenêtre gparted de confiance que je savais de l'école s'est ouverte.

Une fois que j’ai changé pour/dev/sdb, cela est devenu très vite déroutant. Comme vous pouvez le constater ici , les choses sont assez étranges, car maintenant, sdb est en quelque sorte considéré comme mon disque SSD au lieu de la carte, mais l’image de la carte est toujours montée. À ce stade, j'étais trop énervé pour continuer à faire autre chose dans la crainte de bousiller accidentellement mon ordinateur portable.

En passant, j’ai également essayé de me donner les autorisations nécessaires pour accéder au disque et essayer d’utiliser la commande dd, mais avec le même message d’erreur (Accès refusé, lecture seule ou quelque chose comme ça, je ne suis pas tout à fait sûr, direction).

J'ai déjà commandé une autre carte Micro SD de 32 Go à Amazon, au cas où il n'y aurait plus d'espoir pour l'ancienne. Mais je n'abandonne pas encore.

(Désolé que certaines choses soient en allemand mais je pense que ces choses-là s'expliquent d'elles-mêmes.)

14
LordScrat

Eh bien, votre message était certainement assez divertissant. Merci pour ça.

Je sais que ce n'est pas la réponse que vous recherchez. Cependant, il semble que la carte SD soit bloquée en mode lecture seule. Vous avez fait tout ce que vous pouvez. Ce n'est vraiment pas si difficile.

Cela fonctionne comme s'il y avait un commutateur de protection en écriture sur la carte. On dirait que vous avez confirmé que non, mais peut-être juste une double vérification, encore une fois? L'idée qui me vint à l'esprit était peut-être que vous utilisiez une carte mini-SD dans un adaptateur mini-sd à sd. Et peut-être avez-vous regardé l'adaptateur, mais pas la carte mini-SD elle-même? Je ne sais pas, je ne fais que lancer ça. S'il existe un adaptateur, peut-être que l'adaptateur lui-même a mal fonctionné? Je ne me souviens pas si vous avez mentionné si vous aviez essayé un lecteur de carte différent. Peut-être que le lecteur a mal tourné?

En dehors de cela, l'échec est assez courant pour quelque chose comme ceci: "échouer" en mode lecture seule. Alors, mon instinct me dit que la carte a mal tourné.

On dirait que vous êtes sur la bonne voie, il suffit de le remplacer. Peut-être que vous pouvez obtenir le mauvais remplacé sous garantie étant donné qu’il est neuf. Dites-nous ce que vous avez compris.

5
Appleoddity

Ces problèmes de lecture seule m'arrivent tout le temps lorsque j'utilise des images iso.

Ce que je fais pour résoudre ces problèmes:

Notez que <yoursdcard> est un périphérique et non une partition. Par exemple, sdc

  1. Démarrer une sorte de linux
  2. Ouvrir un terminal
  3. Découvrez quel est le périphérique de votre carte SD et vérifiez-le en utilisant Sudo fdisk /dev/<yoursdcard> -l ou pour obtenir le nom du périphérique, vous pouvez également utiliser Sudo parted /dev/<yoursdcard> -l

AVERTISSEMENT: La commande suivante détruira toutes les données sur /dev/<yoursdcard>, alors assurez-vous que <yoursdcard> est le bon périphérique !!!!

  1. Exécuter Sudo dd if=/dev/zero of=/dev/<yoursdcard> bs=1000000 count=50
  2. Exécuter Sudo fdisk /dev/<yoursdcard>
  3. Utilisez maintenant la commande o pour créer une nouvelle table de partitions MSDOS sur votre carte sdcard, puis utilisez la commande n pour ajouter une nouvelle partition et utilisez w pour écrire les modifications sur votre carte sd et quitter fdisk.
  4. Maintenant, utilisez Sudo mkfs -t <filesystem you want> /dev/<yoursdcard>1 pour formater votre partition
  5. Maintenant, votre carte SD devrait fonctionner à nouveau

Si ça ne marche pas:

  1. Terminal ouvert
  2. Découvrez quel est le périphérique <yoursdcard>
  3. Exécuter Sudo su
  4. Exécuter echo "0" > /sys/block/<yoursdcard>/ro
3
testeaxeax

Gardez à l'esprit que la carte peut simplement être cassée. Ils ont un flash et un contrôleur à bord. Si la carte pense avoir des problèmes, elle sera complètement déconnectée ou en lecture seule si le nombre de cellules flash qui fonctionne ne suffit pas pour écrire. Parfois, le contrôleur conserve des informations de comptabilité pour la puce Flash, qui peuvent être corrompues, ce qui la fait démarrer en mode sans échec et ne rien autoriser. Pour surmonter ce type de problème, vous avez besoin d’un «vrai» lecteur de carte SD, et non d’un lecteur de stockage de masse. Les «vraies» interfaces SD ont accès au contrôleur et peuvent vous donner les informations dont vous avez besoin.

2
John Keates

Ah oui. L'image Ubuntu utilise une sorte de format étrange qui casse la plupart des utilitaires de formatage. J'imagine que c'est une sorte de chose qu'ils font pour que les images fonctionnent sur des DVD. Je le sais bien (lire: je continue à avoir besoin de faire installer des disques par Ubuntu, et je déteste les formater par la suite), et c'est très ennuyant.

Utilisez Gparted sur Ubuntu (la machine virtuelle) pour supprimer toutes les partitions du lecteur, puis ajoutez une nouvelle partition FAT32. Remarque: je suis à peu près sûr que GParted utilise le mot de passe root, et non le mot de passe normal que vous utilisez pour vous connecter. Si vous ne connaissez pas votre mot de passe root, il est probable que vous ne l'ayez pas défini. Exécutez "Sudo passwd" pour définir un mot de passe root, puis utilisez-le pour ouvrir GParted. Vous pouvez également utiliser "Sudo gparted".

Ou, recherchez et installez le programme gratuit SDFormatter4 sous Windows (Remarque: fonctionne également sous WINE sous Ubuntu) et utilisez-le pour formater la carte en mode remplacement. Cela a de meilleures chances de fonctionner, autant que je n'aime pas les logiciels propriétaires.

Les deux ont plus de chance de formater les cartes que les utilitaires intégrés.

Bien entendu, les cartes SD et les lecteurs USB échouent délibérément en mode lecture seule pour vous donner une chance de récupérer vos données. Si cette carte est neuve à distance, cela ne devrait pas arriver, mais c'est possible. Je suggère également les cartes Samsung ou Sandisk, car les cartes Kingston sont souvent des faux et échouent rapidement. En fait, ce problème a déjà eu lieu une fois et c’est en fait un échec de la carte. J'espère que ce n'est pas le cas pour vous.

0
RDragonrydr