Ubuntuイメージの後にMicro SDカードの読み取り専用属性を削除できません


16

Kingston 32 GB Micro SDカードから読み取り専用属性を削除できません。カード全体を拭いてきれいにしたい。

Raspberry Pi 3と32 GB Micro SDカード、そして遊ぶためのEchoが与えられました。Micro SDカードは、入手したときは工場出荷時に新鮮でした。新しいUbuntu 16.04イメージをダウンロードし、Windows 10でEtcherを使用してカードをフォーマットしました。完了後、Raspberryが機能するようにすべてを差し込んで、何も起こらないことに気付きました。私は少しパニックになり始め、自分に考えました。「良い仕事です、あなたはバカを言う。なぜちょっと待って、おかしなチュートリアルをググってみませんか」。

うまくいかなかった可能性のあることと、私がやるべきことをグーグルで検索し、ランダムなUbuntuイメージを単に置くことができないことを発見しなければなりませんでした。作成者が提供する画像の1つでなければなりません(私の場合はUbuntu MateまたはRaspbian)。

Windowsで修正を試みた

Windowsエクスプローラーで右クリックして再フォーマットして再フォーマットしようとすると、最初にカードが読み取り専用モードになっていることがわかりました。Windowsエクスプローラーでアクセスしようとしても、EFIディレクトリしか表示されませんでしたが、驚くことはありませんでした。

インターネットで最初に見つけたのは、カードのスイッチ/ロックについてですが、私のカードにはまったくロックがありません。カード自体も、私が読書に使用するRobson Mini Card Readerもありません。

その後、ディスクの編集方法を思い出そうとしました。
古いVM-Wareとシステムイメージを外部ドライブからコピーする必要があり、それがどこにあるのかわからなかったため、その時点でまだWindows 10を使用していることに注意してください。

コマンドラインを開き、diskpartを実行し、すべてのディスクを一覧表示します

list disk

931 GB HDD、119 GB SSD(Windowsがインストールされている場所)、および29 GB Micro SDカードの出力は次のとおりです。

Datentrger ###ステータスGrößeFrei Dyn GPT  
--------------- ------------- ------- ------- --- ---   
日付0オンライン119 GB 0 B *  
日付1オンライン931 GB 0 B *  
Datenträger2オンライン29 GB 29 GB

私が得た情報に従って、Datenträger2 aka Disk 2が次のようにして編集したいカードであることがわかりました。

select disk 2

ここまでは順調ですね。次に、次のようにして読み取り専用属性を削除したいです。

attributes disk clear readonly

これも正常に実行されました。

しかし、私がやろうとしたとき:

clean

「ハードウェアエラーメッセージ」が表示されました(ドイツ語では、ここではコピーしませんが、基本的にハードウェアエラーとしか言いません)。このエラーは、プライマリパーティションを作成しようとしたときや他のことをしようとしたときにも続きました。

この時点で、私のパニックはますます大きくなり始めました。しかし、私は冷静さを保とうとしました。

EaseUS Partition Master、Etcher(再度)、SD Card Formatterのプログラムを使用してみましたが、これらはすべて保護されている(読み取り専用、書き込み保護されている)ために失敗しました。

また、レジストリ編集を使用して、キーを作成してストレージデバイスに対するWindowsの動作を変更しようとしました(まだありません)。

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies

新しいキーワード(DWORD WriteProtect)を作成して0に設定します。これは読み取り専用を意味しません。

Linuxで試みられた修正

それもうまくいかず、Windowsで神経質になり始めたので、お尻から降りて外付けドライブを検索し、VM-Wareをインストールして、学校で使用しているUbuntu 16.04仮想マシンを実行しました。

VMを起動すると、UbuntuがWindowsよりもはるかに助けてくれることに既に気づきました(少なくとも、この点でLinuxのスキルが制限されているので、そう思いました)。私が最初に目にするのは、デスクトップ上のリンクされたアイコンで、「Ubuntu 16.04.2 LTS amd64」というカードにリンクされています。Ubuntuが動作するために必要なさまざまなものが含まれています

しかし、それは私を助けません。だから私は先に進み、ターミナルを起動して書いた:

lsblk

カードが表示されていることを確認しました(sdb):

名前MAJ:最小RMサイズROタイプマウントポイント
sda 8:0 0 30G 0ディスク 
└─sda18:1 0 30G 0 part /
sdb 8:16 1 29,2G 1ディスク 
├─sdb18:17 1 1,5G 1パート/ media / pose / Ubuntu 16.04.2 LTS amd64
└─sdb28:18 1 2,4M 1パート 
SR0 11:0 1 1024M 0 ROM  

しかし、lsblkはあまり正確ではなかったので、学校で学んだコマンドも使用しました。

fdisk -l

これはもう少し正確でした:

ディスク/ dev / sda:30 GiB、32212254720バイト、62914560セクター
単位:1 * 512 = 512バイトのセクター
セクターサイズ(論理/物理):512バイト/ 512バイト
I / Oサイズ(最小/最適):512バイト/ 512バイト
ディスクラベルタイプ:dos
ディスク識別子:0xa14a8cb2

デバイスブートスタートエンドセクターサイズIDタイプ
/ dev / sda1 2048 62914559 62912512 30G 83 Linux


ディスク/ dev / sdb:29,2 GiB、31306285056バイト、61145088セクター
単位:1 * 512 = 512バイトのセクター
セクターサイズ(論理/物理):512バイト/ 512バイト
I / Oサイズ(最小/最適):512バイト/ 512バイト
ディスクラベルタイプ:dos
ディスク識別子:0x15e2543d

デバイスブートスタートエンドセクターサイズIDタイプ
/ dev / sdb1 * 0 3035519 3035520 1,5G 0空
/ dev / sdb2 14432 19295 4864 2,4M ef EFI(FAT-12 / 16/32)

そして、ついにダヴィンチのコードなどを解読したと思ったので、私は陶酔しました。

離れた

エラーメッセージですぐに開きます:

ドライバー記述子には、物理​​ブロックサイズが2048バイトであると記載されていますが、Linuxでは512バイトであると記載されています。

私はそれが大したことではないと思ったので無視しましたが、前のものを無視した直後に次のエラーメッセージがポップアップしました:

/ dev / sdbのパーティション1が書き込まれましたが、カーネルに変更を通知できませんでした。おそらく、それが使用されているためです。その結果、古いパーティションは使用中のままになります。さらに変更する前に、今すぐリブートする必要があります。

だから私はメッセージが私に言ったことをやり直してリブートした。しかし、同じ2つのエラーが再び発生したため、それも役に立ちませんでした。今回はそれらを無視し、学校で知っていた古き良き信頼できる窓を開けました。

/ dev / sdbに変更すると、混乱が非常に速くなりました。ここで見ることができるよう、物事はかなり奇妙です、なぜなら今ではsdbがカードの代わりに私のSSDであると考えられていますが、カードからのイメージはまだマウントされています。この時点で、私のラップトップを誤って台無しにすることを恐れて、私はこれ以上何かを続けることができないほど怒っていました。

ところで、私は自分自身にディスクへのアクセス許可を与えてddコマンドを使用しようとしましたが、同じエラーメッセージ(アクセス拒否、読み取り専用または何か、私は正確にはわかりませんが、この方向の何か)。

古いカードにもう希望がない場合に備えて、Amazonに別の32 GB Micro SDカードをすでに注文しました。しかし、私はまだあきらめていません。

(ドイツ語で書かれているものもありますが、大部分は自明であると思います。)


SDカードを接続した状態で再起動したため(おそらく、接続せずに再起動したため)、ディスクはおそらく順序を入れ替えました。2番目の画像は非常に興味深いです...正しく理解できれば、それはVM内からですか?30GiBディスクと29.2GiB SDカードしかないVM
アッティ

はい、VM内から。しかし、接続せずに再起動したので、それが正しかったかどうかはわかりません。/ dev / sdaには、インストール時にVMに割り当てることができる属性メモリスペースがあり、これは30GiBである必要があります。しかし、どういうわけか、それはこのいまいましいカードを使って、すべての混合アップが差し込まれました。
LordScrat

回答:


6

まあ、あなたの投稿は確かに十分に楽しかったです。ありがとう。

私はそれがあなたが探している答えではないことを知っています。ただし、SDカードが読み取り専用モードでスタックしているように見えます。できることはすべてやりました。それは本当に難しいことではありません。

カードに書き込み保護スイッチがあった場合のように機能します。確認しなかったようですが、もう一度確認してください。思いついたのは、おそらくミニSDカードをミニSDアダプターに挿入しているということです。そして、多分あなたはアダプタを見ましたが、ミニSDカード自体ではありませんでしたか?私は知らない、ただそれをそこに投げる。アダプターがある場合、アダプター自体が故障した可能性がありますか?別のカードリーダーを試した場合に言及したかどうかは覚えていません。読者が悪くなったのではないでしょうか?

それ以外は、このようなものが読み取り専用モードで「失敗」するのは非常に一般的な失敗です。だから、私の腸はカードが悪くなったと言っています。

あなたは正しい軌道に乗っているように見えますが、それを置き換えるだけです。不良品は新品であるため、保証期間内に交換することができます。あなたが何を理解しているのか教えてください。


これは良い反応だと思いますが、それは本当に答えではなく、コメントと希望です。:)
ザビエルジャズ

うん、上司にカードはもう書けないことを伝え、それを単純にAmazonに送り返す(最後の1日前の木曜日のように手に入れたので、問題はないと思う)。私は自分のお金でdebaucleを考え出すので、おそらく間違ったUbuntuをインストールしてソフトロックするのが私のせいでしょう。私は笑を過ごすために16ドル以下になると思います。ただし、コメントありがとうございます。私が得るすべてのコメントに感謝します。
LordScrat

2
まあ、それはあなたの称賛に値します。ただし、ソフトウェアを使用して何もハードウェアを破壊することはありません。時には物事がうまくいかないこともあります。
Appleoddity

4

iso-imagesを使用すると、このような読み取り専用の問題が常に発生します。

そのような問題を解決するために私がすること:

<yoursdcard>は、デバイスではなくパーティションであることに注意してください。たとえば、sdc

  1. ある種のLinuxを起動する
  2. ターミナルを開く
  3. あなたのSDカードがどのデバイスであるかを見つけて、sudo fdisk /dev/<yoursdcard> -lまたはを使用してそれを確認し、あなたも使用できるデバイス名を取得しますsudo parted /dev/<yoursdcard> -l

警告:次のコマンドはすべてのデータを破壊する/dev/<yoursdcard>ので<yoursdcard>、正しいデバイスであることを確認してください!!!!

  1. 実行する sudo dd if=/dev/zero of=/dev/<yoursdcard> bs=1000000 count=50
  2. 実行する sudo fdisk /dev/<yoursdcard>
  3. 次に、コマンドoを使用してSDカードに新しいMSDOSパーティションテーブルを作成し、コマンドを使用して新しいパーティションnを追加wし、SDカードに変更を書き込んでfdiskを終了します
  4. sudo mkfs -t <filesystem you want> /dev/<yoursdcard>1パーティションのフォーマットに使用します
  5. 今、あなたのSDカードは再び動作するはずです

それがうまくいかない場合:

  1. ターミナルを開く
  2. デバイス<yoursdcard>とは
  3. 実行する sudo su
  4. 実行する echo "0" > /sys/block/<yoursdcard>/ro

私はそれを試してみたいと思いますが、私の2枚目の写真でわかるように、Ubuntuは/ dev / sdbを混乱させます。これは私のSD、または私のSD 、と私は本当に偶然、I.行うことを削除したくない
LordScrat

もちろん、あなたがしたいが、ありませんfdiskはるかに信頼よりもgparted、それはあなたのSDカードの右かを検出した場合、あなたが見ることになる(ステップ3を参照)。
testeaxeax

1
自動的に作成されるde / dev / disk / by-idエイリアスを使用できます。製造元と接続バスが組み込まれているため、どのデバイスであるかを確実に把握できます。
ジョンキーツ

3

カードが単に壊れている可能性があることに注意してください。ボードにはフラッシュとコントローラーがあります。カードに問題があると判断された場合、完全にオフラインになるか、書き込み可能なフラッシュセルが十分にない場合は読み取り専用になります。時々、コントローラはフラッシュチップのアカウンティング情報を保持します。この情報は破損し、セーフモードで起動して何も許可されないことがあります。この種のものを乗り越えるには、大容量記憶装置専用のリーダーではなく、「真の」SDカードリーダーが必要です。「実際の」SDインターフェースはコントローラーにアクセスでき、必要な情報を提供する場合があります。


1

ああ、はい。Ubuntuイメージは、ほとんどのフォーマットユーティリティを破壊する奇妙なフォーマットを使用しています。画像がDVDで動作するようにするために、何らかの処理を行うと思います。私はこれをよく知っています(読んでください:Ubuntuにインストールディスクを作成する必要がありますが、後でフォーマットするのは嫌です)。

Ubuntu(VM)でGpartedを使用してドライブ上のすべてのパーティションを削除し、新しいFAT32パーティションを追加します。注:GPartedは、ログインに使用する通常のパスワードではなく、rootパスワードを使用していると確信しています。rootパスワードがわからない場合は、設定していない可能性があります。「sudo passwd」を実行してルートパスワードを設定し、それを使用してGPartedを開きます。「sudo gparted」を使用することもできます。

または、無料のプログラムSDFormatter4をWindowsで見つけてインストールし(注:UbuntuのWINEでも動作します)、それを使用して上書きモードでカードをフォーマットします。私がプロプライエタリなソフトウェアを嫌うのと同じくらい、これは働く可能性が高い。

これらの両方は、組み込みユーティリティよりもカードのフォーマットがうまくいきます。

もちろん、SDカードとUSBドライブは意図的に読み取り専用モードに移行しないため、データを回復することができます。そのカードがリモートで新しい場合、これは起こりませんが、可能です。キングストンのカードはしばしば偽物であり、急速に失敗するため、サムスンまたはサンディスクのカードもお勧めします。私は実際にこの非常に問題が一度発生し、実際にはカードの故障でした。これがあなたには当てはまらないことを願っています。


-1

うーん。ここで始めて、どういうわけか別の投稿で終わったので、この投稿をリンクする必要があります。

ここにリンクの説明を入力してください

まず、カードリーダーではないことを確認してください!

この問題は、非常に簡単に破損したファイルシステムが原因で発生します。この問題は多くの原因で発生する可能性があります。マウント解除せずにLinuxでフォーマットした場合、またはパーティションを再パーティション化した場合、マウントされます。パーティションが破損している場合は、これが発生する可能性があります。最善の方法は、Linuxコマンドfsck /dev/sdb1またはドライブの指定を使用することです/dev/sdd1/dev/sdb1ファイルシステムがmicroSDで破損しているように見える場合があります。これを見れば間違いを犯しやすい...

root@w3tech-Satellite-C655:/home/w3tech# umount /dev/sdc*
umount: /dev/sdc: not mounted.
umount: /dev/sdc2: not mounted.
root@w3tech-Satellite-C655:/home/w3tech# umount /dev/sdc*
umount: /dev/sdc: not mounted.
umount: /dev/sdc1: not mounted.
umount: /dev/sdc2: not mounted.
root@w3tech-Satellite-C655:/home/w3tech#

私は両方のパーティションをアンマウントするために二回ドライブをアンマウントしなければならなかった...と、そうであるべきのmicroSDであること/dev/sdd/dev/sdeまたは後。

ただし、fsck読み取り専用と判断した場合、実行しただけではダーティビットが削除されない場合があります。それまでは、Linuxカーネルは古いパーティションを引き続き使用します。つまり、ユーザーが古いパーティションにアクセス許可を付与する方法がないため、読み取り専用エラーが発生します。プログラムを使用して新しいパーティションテーブルを作成した場合など、ドライブを起動するとカーネルが新しいパーティションに切り替わることがあります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.