マウント解除は意味ない?解除せずにスマホからSDカードを抜くとアクセス不能になりデータ破損して消えるよ。電源を切るだけでは不十分

♨の人

-

スポンサーリンク



常人の何倍もエラーを起こすデータの破壊者

どうも、ダメです!を使ってもいいレベルの不具合頻発度を誇る♨の人です

いや真面目に私は普通の人は人生で2度経験するかどうかのレベルの不具合をもうここ数年で何度も経験してますからね?

まあそれについて詳しく語ると本っ当にめちゃくちゃ長い文章になるので語りませんけども



てなわけで今回は、SDカードのマウント解除の重要性とデータの破損について語っていきたいと思います

多分ほかのサイトには書いてないであろう内容なので、参考になりましたらぜひシェアや紹介をよろしくお願いします

データ破損をこの世から無くしたい
その気持ちで書いています


てなわけでどうぞ








そもそもマウント解除とは?



まず、マウント解除というものがどういうことかすら知らない人もいると思いますのでそれについて説明していきます

まず、マウントというのは取り付けるという意味で、主にPC関連では記録メディアを認識させるという意味を持っています


基本的に今の危機は差し込んだ瞬間に自動でマウントされるためにいちいちマウントを行う必要はありません



しかし、問題はマウント解除。アンマウントの方なんです


マウント解除とは機器に「この記憶メディアとの接続・認識をやめろ」という命令を出すことです

PCでは安全な取り外しと呼ばれているもので、スマートフォンではストレージの設定からアンマウント(マウント解除)が行えます



データというのは非常に繊細なもので、なにもしていなくとも読み書きなどが裏で行われていることもあります

そういう時にSDカードを抜いてしまうとデータが破損する恐れがあるので、このような機能が搭載されているという訳です




しかし、これを行っていない人は以外に多いです

まず1つ目は、そもそもマウント解除を知らないという人

ある程度機械が扱える人ならば知っていて当然の事なのですが、それを知らずに電源が着いた状態でなんの気兼ねもなくSDカードを抜いてしまう人がいます


こういう場合基本的にはアクセスしていない限りデータは壊れない(壊れる可能性は低確率)のですが、繰り返しているうちに壊れたりします


こういう人はそもそも説明書を組まなく読めで終わる話であり、また原理を説明すると初心者の人はマウント解除を必ず行うようになるでしょう



そして2つ目。これが問題

今回の記事で扱う「電源を切るのならアクセス不能になるしそれで取り出せばいいじゃん」という考えです


ある程度機械を扱える人は、マウント解除を知っていながら行わない人も多いです

なぜマウント解除をしなければならないのか?という理由(データの読み書き中に接続を切らないため)についてわかっているからこそのものです


しかし、私の今回の検証では、この考えは非常に危険であることが判明しました


というわけで次の項目ではそれについて深く解説していきたいと思います







 

電源を切るだけでは不十分。WindowsとAndroid間は相性が悪いのでデータが破損する



上でも語りましたように、そもそもマウント解除をする理由が、アクセスを辞めてデータの読み書き中に接続を切らないようにするためです


しかし、問題はそれだけではありません

もうひとつの大きな問題。それがそのSDカードを別の危機で扱う際のデータ破損です


Androidスマートフォンで使用しているSDカードを、マウント解除を行わず電源を切っただけで取り出し、それをWindowsに認識させた場合、データが破損する可能性があるということがわかったんです



具体的にはAndroidスマートフォンで使用していたSDカードをマウント解除を行わずに取り出しWindowsにて使用すると、恐らくはスマホで使っているという何らかの処理が不十分な状態(高速スタートアップのような状態)となり、その結果インデックスやらパティーションやらが不十分な状態となり、それでアクセスすることによりデータが破損する(アクセス不能になる)という状態になります

正確なことはもちろんわからないので憶測ではありますが、これには色々な要素が関係していると思われます


例えばログファイルシステム。

ログファイルシステムというのは、Windowsに搭載されている、データの書き込みやエラーの修正などを円滑に行うためのものです

このログファイルシステム、一見メリットしかないようにも思えますが、これには落とし穴があります



それはバージョンの違い

Windows7までのバージョンはLFS(ログファイルシステム)1.1というもので、Windows8、8.1、10では、LFS2.0というものにバージョンアップされています


これの何が問題かと言うと、バージョンに互換性が無いと言うところ


SDカードで例えるならば、SDXCが使えるのであればSDHCも使えるようになっています

しかし、SDHCしか使えない端末ではSDXCを使用することはできません。



で、1番の問題点。それはログファイルシステムは勝手に上書きされること



例えば、とあるSDHCカードをSDHCまでしか使えない端末で使用していたとします

で、そのSDHCカードをSDXCカードを使える機器に差し込むと、何故かSDHCカードが勝手にSDXCになってしまいます(見た目の変化なし)

で、それを元使っていたSDHCまでしか使えない機器に接続すると、中身はSDXCになっているために認識エラーを起こしぶっ壊れる……みたいな感じです。これが物凄く厄介



具体的には別のバージョンのLFSを持つ機器と接続した際に、自動でチェックディスクを試みるため、そこでエラーが発生しファイルシステムが破損してしまうということです






もちろん、これを回避する方法もあります。

それこそが、今回の記事のテーマであるマウント解除(安全な取り外し)なのです











そもそも安全な取り外しとはアクセスを辞めることだけではなく、このログファイルシステムをちゃんと別の機器で使用できるように終了させる(LFSを古いバージョンに戻す)という役割を持っています
(DVDを焼いた時、取り出す際の終了処理をイメージしてください)


こうすればバージョンが違うLFSの機器同士でも、普通にやり取りができるようになるのです








で、ここまでの情報を踏まえて考えると、スマートフォンのマウント解除もアクセスを辞めるだけではなく、Android特有のログファイルシステムのようなものがある、と考えるのが自然ではないでしょうか


現に私WindowsとAndroid間でデータを破損させる際は、マウント解除を行っていない事があったと記憶しています




私の場合はマウント解除をせずに電源を切っただけのスマートフォンからSDカードを取り出し、それをWindows 10のPCに接続しデータのコピーを行った際に、途中でファイルのパスが見つからないというエラーウィンドウが何度も表示されるようになり、そして仕方なくキャンセルしたらSDカードが認識不能(アクセスが不能になりフォーマットを要求されるようになる)になる、という感じ


この場合運が良ければ差し込んだ際のチェックディスクでどうにかなる事もあるらしいですが、運が悪ければ私のように完全にぶち壊します

あと、もうひとつ。これも憶測ではありますが、過去の同じようなAndroid↔Windows間の使用で起こった破損(もう何度も経験済み)では、コピー元のデータが全て文字化けして開けなくなるというものもありました(こちらの場合はフォーマットを要求されることは無く、認識やアクセスはできる)



で、そういう状態(アクセス不可)になると、フリーの復旧ソフトで有名なレキュバなんかは使えなくなる(確認済み)ため、クイックフォーマットを行い認識できる状態にしてから復旧ソフトを使わなければなりません

クイックフォーマットは一般的には管理情報のみのフォーマットであるため、ファイル名の情報が消えたとしても、ファイルの中身のデータは残っている場合が中~高確率であります


しかし、いくらクイックフォーマットとはいえ、フォーマットはデータを消すことですし、今回の私のケースの場合は別のドライブへのコピー中、つまりは読み出し中の破損ということで、画像ファイルなどはまだしも音楽ファイルや動画ファイルは基本的に復旧できずに全部消えてしまいました(タイトルとサイズくらいは復旧できるが完全なデータとしては復活しないため閲覧不可。また画像ファイルも不完全なものは多数あり)


というかそもそもの話復旧ソフトなんてアテにしない方がいいので、越したことはないです


友達に渡す時や仕事上のファイルを扱う時も注意です

マウント解除を行っておらずパソコンで使用してデータ破損とか全くと言って笑えないです

というか普通の人は責任が誰にあるのか、ということや何故壊れたのか?ということすら認識できないでしょう

だって普通の人こんなの知らないから

 







スマホでは絶対にマウント解除してSDカードを取り出すように



今回の電源をオフにしてから(マウント解除を行わない)のSDカードの抜き差し

これは、実はスマートフォン間であれば今のところなんの問題は無い※1と考えられます
(またはWindowsと行き来するよりはリスクは少ない)


※1
ちなみに、まずA(Android8.0)のスマートフォンでマウント解除をせず電源を切断し抜いたSDカードを、B(Android7.0)のスマートフォンに差し込み電源をON(再マウント)にし、Bの端末でマウント解除を行い電源を切断し、それをWindows10PCに接続し使用したところ、同じデータのやりとりでも問題は発生せず


また使用したSDカード、USBハブやSDカードリーダーもチェックしたところ、特に問題は無し

やはりスマートフォンのSDカードをWindowsで使用する際はマウント解除をしなければデータは破損してしまうようです







ちなみにファイルシステムがFAT32などのUSBフラッシュメモリやSDカードなどの場合はWindowsでのLFSの問題は発生しないとされていますが、あくまでもそれはWindowsPC間での話

AndroidスマートフォンとWindowsPCでは、きちんとマウント解除をしなければデータに異常があると認識され、チェックディスクが起動したりそのSDカードにアクセス(コピー、移動、書き込み)することにより読み込むことが出来なくなるという事も普通に考えられます


勿論そのようなことは報告されてはいないでしょうが、私は現にそれでデータを破損させていますし、例えそれが偶然だったとしてもデータの破損というのは基本的には原因の救命が困難であるために、大事なデータの取り扱いには限りなく安心な方法を選ぶことはリスク回避のためには不可欠でしょう









WindowsはWindowsで高速スタートアップに注意



Windowsには、バージョン8から搭載された高速スタートアップという機能があります


これがどういうものか説明しますと、見かけ上は電源が切れていても実は完全にはシャットダウンされておらず、接続されているUSBドライブなどの接続状態を維持した休止状況になります

具体的にはメモリやCPUの状態を保存しておき、その保存した状態を起動時に読み取ることで起動を高速化します
(SSDマシンでは効果なしとの報告もあり)


これは本来は次回の起動を早くするための機能なのですが、これのせいでデータの破損が巻き起こることがあるため、基本的には私は非推奨です


具体的には、PCの状態を記録し完全にはシャットダウン出来ていないという状況が悪さをします


例えばこのような

①Windows10を搭載したPCにUSBデバイスを接続したままシャットダウン

②その後デバイスを抜き、他のPCで利用

③その後、ふたたびWindows10のPCに戻して利用



という使用で、、データが消えたり破損することがあるからです



これはデフォルトではONになっているので、注意です



これの何が恐ろしいかって、上でも書いたように「電源が切れているということはアクセスしていない状態だからドライブを抜いてもなんの問題もない」と思わせてしまうところです

実際はシャットダウンが不完全で接続された特殊な状態であるため、接続している機器を抜いてしまうといろいろな不具合が発生したりします

その中でも最大限に危険なのが、データを記録しているメディアの抜き取りという事です


勿論シャットダウンしてから抜くなどという謎の行為を行わずに、起動している時に安全な取り外しを行ってから抜き取ればセーフです












あとがき。今のところは大丈夫でもデータが消える可能性があるならば慎重になった方がいい



いかがでしたでしょうか

ここまで、私のいろんな憶測と経験を語ってきましたが、これでマウント解除の大切さが理解できましたかね



勿論、ここまで読んで「俺はそんな破損したことない」って言いたい人も居るかもしれませんが、誰もが同じ環境ではないですし、なによりも壊れたという事例がある以上は対策するに越したことはありません

スマートフォンからSDカードを抜く際は、絶対にマウント解除をするようにしてください



電源を切るだけでは不十分ですよ
もしかしたら機種にもよるのかもしれませんが、石橋は叩いて渡るに越したことはないですので


以上、ここ数年感でデータを6回ありえない方法で破損させているデータの破壊者♨の人の報告でした



もうやだ
データ触るの怖い

今度からスマホ経由でPCに移す時は3枚のSDカードに同じの焼こう……単純に3枚もあればどれかは成功してくれるだろうっていうだけのクソ案ですけど堅牢性は上がるでしょうし


てなわけで記事は以上
以下今回の記事をまとめた要約です










要約



Android8.0端末でのSDカードの取り出しは電源を切るだけでは不十分

上記の方法で取り出したSDカードをWindows10マシンに接続し内部データを別ドライブにコピーしようとしたところ、コピー途中に(指定されたパスは存在しません)、または(この項目はありません。次の場所にはありません。この項目の場所を確認してから再実行してください)というエラーメッセージが発生。
(記憶が定かではないが後者である可能性が高い)


再実行を行っても再び同じ表示。スキップを行っても次のファイルもまた同じ状態に
なのでコピーをキャンセルした後、SDカードにアクセス不能になり、フォーマットを要求されるようになった

このような状態になったの原因が、SDカードのマウント解除を行わなかったためである



憶測では、AndroidにもWindowsのLFSや高速スタートアップに類似したものが存在し、マウント解除を行っていない場合シャットダウンしても完全に処理が終了していない状態になっているため、Windowsにて使用した場合チェックディスクによりパーティーション情報が破壊されると断定
(データコピーによる読み取り中にパスが存在しないというエラーが発生したというのもこれが関係しているように思われる
であればパーティーションを復元する復旧ソフト[例:TestDisk等]を使用することによりデータを復元できる可能性もあり
しかし今回の現象はとにかく情報不足であるため詳細は不明)



・対策
SDカードをAndroidスマートフォンから取り外す場合は、電源の有無ではなくマウント解除を必ず行うようにする

データをコピーしたSDカードをPCに接続する前に、同じデータをスマートフォンで他のSDカードにも書き込んでおく
(必ず2箇所にデータを保存しておくようにすれば、もし端末間を移動中のデータが破損したとしてもリカバリ、再複製が可能
またAndroidからSDカードへの書き込みでは基本的にエラーは起こらず、主にAndroidで書き込んだデータをWindowsで使用した場合に破損しているからである)


・データ復旧フリーソフトRecuva 使用レポート
Recuvaをインストール後、対象のアクセス不可ドライブをチェック

しかし、アクセスできない状態のSDカードにはRecuvaはアクセスできないようで、検出は0

よってクイックフォーマットを行いアクセスができる状態にしてから、Recuvaで詳細チェック

結果、検出事態は成功したものの、半分ほどのデータが復旧率は中~不可能となる。これは動画ファイルやMP3ファイルなどで特に顕著である

結果的に復旧できたデータはjpgなどの画像ファイルが基本的に多く、動画フォルダなどはタイトルやファイルサイズは復旧できたものの、不完全なデータで閲覧不可である

ブログパーツ
関連記事

スポンサーリンク