6490047 ランダム
 ホーム | 日記 | プロフィール 【フォローする】 【ログイン】

ふるた技工所(てっこうしょ)

ふるた技工所(てっこうしょ)

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

PR

キーワードサーチ

▼キーワード検索

プロフィール

Aちゃん22

Aちゃん22

フリーページ

2012.03.11
XML
カテゴリ:ソフト開発日誌
壊れた SSD SAMSUNG 470 128GBytes (MZ5PA128HMCD-0AA00) をサルベージした。The Linux SCSI Generic (sg) Driverで提供されている sg3_utils を使う。

sg3_utils 中に含まれている sg_dd コマンドが便利だ。次の様にして、不良ブロックを飛ばしながらコピーする。iflag=coe,sgio は "Continue on error" と "SCSI command にてアクセス" という指定だ。最近の Linux は SATA デバイスでも途中 SCSI 層を経由している。

# sg_dd if=/dev/sdd of=/home/root/ssddump.img iflag=coe,sgio bs=512 bpt=4

もし途中で止まってしまった場合は、次の様にメッセージが出る。

sg_read failed, at or after lba=236198400 [0xe141a00]

メッセージの lba= から LBA 番号を拾い出し、次の様にコマンドを打ってコピーを継続できる。どうしても再開しない場合は bpt=2 あるいは bpt=1 にしてみる。遅くなるが確実に継続できるようになる。

# sg_dd if=/dev/sdd of=/home/root/ssddump.img skip=236198400 iflag=coe,sgio oflag=append bs=512 bpt=4

dd コマンドでも良さそうに思える? dd にはエラーがあった場合に読み飛ばす conv=noerror がある。しかし、dd コマンドは Linux の read() system call を使う。先読み、エラーリトライが入り、高頻度のエラーによってはドライブが切断状態になってしまう。sg_dd なら早々にアクセスを諦めるので、切断状態に至る可能性は低くなる。

読み取ったイメージをどうするか? loop back file system を使って mount する。offset= オプションにて partition の先頭位置を指定できる

でも次は続けてサルベージではなく、SSD の解析作業をした。





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2012.03.13 00:09:15
コメント(0) | コメントを書く
[ソフト開発日誌] カテゴリの最新記事


カレンダー

カテゴリ

サイド自由欄

コメント新着

ご無沙汰してます@ Re[4]:ようやく転職エージェントに会うも - 3 分で終了(04/01) Aちゃん22さんへ かなり昔のことですが、…
Aちゃん22@ Re[3]:ようやく転職エージェントに会うも - 3 分で終了(04/01) ご無沙汰してますさんへ、こんにちは、 N …
ご無沙汰してます@ Re[2]:ようやく転職エージェントに会うも - 3 分で終了(04/01) Aちゃん22さんへ ご返信ありがとうござい…
Aちゃん22@ Re[1]:ようやく転職エージェントに会うも - 3 分で終了(04/01) ご無沙汰してますさん、こんにちは。 たま…
ご無沙汰してます@ Re:ようやく転職エージェントに会うも - 3 分で終了(04/01) 更新を楽しみにしてました。個人事業主に…

ニューストピックス


© Rakuten Group, Inc.