気まま研究所ブログ

ITとバイク、思ったことをてきとーに書きます。

起動しないWindowsからUSBメモリとUbuntuでデータを救出する

f:id:AonaSuzutsuki:20190712133930p:plain

以前、「Windowsが起動しなくなった時のデータ救出法」という同様の記事を書きましたが、Ubuntuの試用版を用いることでもうちょっと簡単に救出できるのでその方法をご紹介します。
ただ、USBメディアを作成していない場合はもう一台普通に動くパソコン(今回はMac)が必要なので持ってない場合は前記事の方法くらいしかないでしょう。
事前に作っておくと幸せになれるかも。

また、もしこの作業中にデータ消えたり何らかのトラブル起きても責任負わないのでよろしくお願いします。

検証環境

メディア作成PC

項目 詳細
機種 Macbook Air Retina 2018
OS macOS 10.13.6
メモリ 8GB

救出対象

項目 詳細
機種 VMWare Virtual Machine
OS Windows 10 Pro x64

この他に仕事で何度か救出できているので大体のパソコンで行けると思います。

用意するもの

  1. USBメモリ (4GB以上)
  2. UNetbootin
  3. 有線マウス

*1 USBメモリUbuntuのインストールメディアが書き込めればどのサイズでも大丈夫ですが、4GB以上が単価を取っても無難でしょう。

*2 今回UNetbootinを用いますが、ブータブルUSBとして書き込みができればなんでもいいです。

*3 有線マウスは必須ではありませんが、パソコンによってはドライバーが無いため、トラックパッドが動作しないのであると無難です。
無線マウスはマウスによって特殊なドライバーが必要で、動作しない場合があるので同じくおすすめしません。

起動用Ubuntu USBメモリの作成

仮想メディアのダウンロード

書き込み用のUbuntuインストールメディアをダウンロードしておきます。
Ubuntuの入手 | Ubuntu Japanese Team
記事執筆当時は18.04が最新で配布されています。
おそらく新しいのが出ても以下の手順は変わらないでしょう。
なお、ubuntu.comのほうはBitLockerの解除で必要なdislockerの環境構築が超めんどいです。

USBメモリの消去

ディスクユーティリティでUSBメモリを消去(フォーマット)します。
Windowsならエクスプローラのフォーマットで問題ありません。
f:id:AonaSuzutsuki:20190712133720p:plain
書き込みの際にフォーマット変えられるかもしれませんが、一応Ubuntuでも認識できるようにMS-DOS(WindowsFAT32)でフォーマットしておきます。
なお、macOSの場合はディスクユーティリティの装置の表記(今回はdisk2s1)を確認しておきましょう。
他にストレージ挿していて、後の作業でこの装置を間違えると関係ないストレージに書き込まれます。
確かすでにあるデータは消えなかったとは思いますが、間違えないことに越したことはないでしょう。
Windowsはドライブレター(F:とか)を指定します。

USBメモリに書き込み

USBにUbuntuインストーラを書き込みます。
今回もセーフブートの時と同じくUNetbootinを使用します。
f:id:AonaSuzutsuki:20190712133807p:plain
事前にダウンロードしておいたisoファイルを選択して書き込みます。
なお、macOSの場合は/dev/disk3s1みたいな表記になっていますが、ディスクユーティリティの装置と一致するものを選びましょう。
Windowsは多分ドライブレターになってると思います。

あとは書き込みが終わるまで待ちます。
f:id:AonaSuzutsuki:20190712133916p:plain

USBブートと救出

USBブート

パソコンによってはBIOSの設定変更が必要なので必要に応じて行ってください。
参考程度に、FUJITSUのラップトップは完全シャットダウン(あるいは再起動)のあとに大体F2連打でピーという音がなった後BIOSが立ち上がります。
パナソニックのLet's noteも一緒でした。

起動したらTry ubuntu without installingを選択し、エンターで起動します。
f:id:AonaSuzutsuki:20190712133930p:plain

Windows領域へアクセス

するとファイルビューアでWindowsの領域がマウントされており、そこからコピーすることができるはずです。
あとはバックアップ用USBを挿し込んでコピペしていけば救出完了です。
f:id:AonaSuzutsuki:20190712133945p:plain

BitLockerをかけている場合

しかしながら、BitLockerをかけている場合はちょっと面倒です。
Windowsで救出する場合は純正の機能で回復キーさえあればロック解除ができるのですが、今回はUbuntuのためそのような機能はありません。
そのため、今回はOSSのロック解除するツールを使用して救出を試みます。
なお、BitLocker回復キーが手元に無い場合はマイクロソフトアカウントから取得できます。(もしキーが無くてかつログインできなかったら救出不可)

回復キーの取得

BitLockerを掛ける際に、USBに保存するか、ファイルとして保存するか、印刷するかの選択があったと思います。
それで保存したキーがあればこの手順は踏まなくて大丈夫です。
マイクロソフトアカウントにアップロードしている方はこの手順で取得する必要があります。
ところで、ファイルに保存した場合ってマイクロソフトアカウントで見れないんですかね。

まず、マイクロソフトアカウントにログインします。
するとデバイスという項目があるのでそこを開き、すべてのデバイスを開きます。
該当するデバイスが表示されている場合はそのまま「管理」を開きます。
f:id:AonaSuzutsuki:20190712134008p:plain

バイス一覧の中から該当するデバイスを探し出し、下の管理とかいろいろなパターンで書かれたリンクをクリックします。
f:id:AonaSuzutsuki:20190712134021p:plain

すると下の方にBitLocker データ保護という項目があり、ストレージ一覧が表示されているはずなので救出したいストレージの「回復キーの管理」を開きます。
f:id:AonaSuzutsuki:20190712134034p:plain

今回スクショはありませんが、回復キーが表示されるので、めちゃくちゃ長いですがスマホの写真かなにかで保存しておきましょう。
USBやテキストファイルとして保存しており、アップロードされていない場合はここでも取得できないのでご注意ください。
もし紛失していたら全消去コースです。

端末の起動

以降の操作はここで説明する端末を使用します。
ご存知の方は飛ばしてもらって大丈夫です。

左下の点が9つあるマークをクリックし、Terminalと検索します。
すると端末が出てくるので立ち上げておきましょう。
f:id:AonaSuzutsuki:20190712134051p:plain

dislockerのインストール

まずはdislockerのインストールをしておきます。
幸いdislockerはJapanese Ubuntuの場合パッケージシステムからインストールするだけで済みます。

$ sudo apt-get update
$ sudo apt-get install dislocker

無事インストールできたら念の為本当にインストールできたか確認しておきましょう。

$ dislocker --help
dislocker by Romain Coltel, v0.7.1 (compiled for Linux/x86_64)
...

ちなみに、ubuntu.comのほうのイメージだとパッケージに入ってないのでGithubソースコードからビルドする必要があります。
依存パッケージも足りないので必要なリポジトリ追加して、インストールして、ビルドして...という手間が付いてくるので潔くJapanese TeamのUbuntuを入れましょう。

バイスファイルの確認

解錠作業の前に解錠したいストレージのデバイスファイルを確認します。
GPartedを起動し、bitlockerのパーティションを探します。
今回は/dev/sda4でした。
f:id:AonaSuzutsuki:20190712134129p:plain

なお、fdiskコマンドでも確認できます。
ただし、ファイルシステムは書かれていないのでタイプとサイズで見極めるしか無いでしょう。

$ sudo fdisk -l

f:id:AonaSuzutsuki:20190712134142p:plain

BitLockerパーティションの解錠

救出だけなら読み込み専用で問題ないでしょうし、データ消失のリスクを考えて今回は-rオプションをつけます。
もし書き換えもするなら-rオプションは外しておきましょう。

$ sudo mkdir /media/bitlocker
$ sudo dislocker -r -V /dev/sda4 -p123456-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX -- /media/bitlocker

なお、-pオプションは-pの後にスペースなしで回復キーを入力します。

もし回復キーをUSBで保存している場合はdislocker-fuseコマンドでファイルを指定するそうです。
USBのほうは未確認なので要検証。

sudo dislocker-fuse -r -V /dev/sda4 -f /media/user/usb-drive/00000000-0X0X-0XX0-XXX0-XXXX0XXX00XX.BEK -- /media/bitlocker

あとは/media/bitlocker/のdislocker-fileをマウントすればファイルビューアで操作ができます。
なお、こちらも書き込みする場合は-rオプションを外しましょう。

sudo mkdir /media/win10
sudo mount -r -o loop /media/bitlocker/dislocker-file /media/win10

f:id:AonaSuzutsuki:20190712134201p:plain

アンマウントする場合はumountで

$ sudo umount /media/win10
$ sudo umount /media/bitlocker