これはなに
WindowsのマシンでHDDなどのデバイス/ストレージをXFS形式でフォーマットする手順を示すもの。 WindowsのマシンでUbuntuを起動し、Ubuntuでフォーマットする。
はじめに
UbuntuなどLinuxマシンがあるなら、ここで説明する回りくどい方法は必要ない。
必要なもの
- Windows 11(またはWindows 10)が起動するPC
- 3GB以上の空のUSBメモリ
- フォーマットしたいデバイス
- Windowsマシンの管理者権限
環境
- Windows 11 22H2
- Rufus 3.21
流れ
- フォーマットしたいデバイス内のデータをバックアップする
- WindowsのマシンでUbuntuのUSBブートメディアを作る
- WindowsのマシンでUbuntuをUSBメモリから起動する
- UbuntuでデバイスをXFSにフォーマットする
フォーマットしたいデバイス内のデータをバックアップする
フォーマットすると、フォーマットされたデバイス内のデータはすべて消去されてしまう。 そのため、必ず内部データはすべてバックアップしておく。
WindowsのマシンでUbuntuのUSBブートメディアを作る
UbuntuのUSB起動ドライブを作り、UbuntuをUSBメモリから起動できるようにする。
まず、Ubuntu Japanese Teamの公式サイト から、入れたいOSのISOイメージファイルをWindowsマシンにダウンロードする。 言語を日本語にしたいなら日本語Remixイメージ のほうがよい。 なぜなら、日本語Remixイメージは、はじめから日本語をサポートするように構成されているためである。 今回は日本語RemixイメージのUbuntu 20.04.1 LTSをダウンロードした。
次に、ダウンロードしたISOイメージファイルをUSBメモリに書き込むためのソフトウェアをダウンロード/インストールする。 今回はRufus を利用する1。 インストール版とポータブル版があるが、今回はインストールが不要なポータブル版を利用した。
ここで、用意したUSBメモリをWindows PCに差し込む。 このUSBメモリにUbuntuを入れる。
ダウンロードしたRufusのEXEファイル(e.g. rufus-3.21p.exe)を実行する。 管理者権限が必要。 Rufusの更新ポリシーの確認ダイアログが出るが、これはどちらでもかまわない2。
Rufusが起動したら、下記をすべて設定する。そのほかはデフォルトで問題ない。 保存領域のサイズについては、4096kB程度にしてもよい。
設定名 | 設定するもの |
---|---|
デバイス | Ubuntuを入れるUSBメモリを選択 |
ブートの種類 | 「選択」ボタンから、ダウンロードしたISOイメージファイルを選択 |
ここまで設定したら「スタート」をクリックする。
「ISOHybridイメージの検出」ダイアログが出たら、ISOイメージモードを選択する。
「ダウンロードが必要です」のダイアログが出たら、「はい」をクリックしてダウンロードする。
最後に警告が表示される。デバイスがUSBデバイスになっていることを再度確認して、OKを選択する。
すると、USBへの書き込みが開始する。 しばらく待って書き込みが完了したら、Rufusを閉じる。 以上で、UbuntuのUSBブートメディアが完成した。
WindowsのマシンでUbuntuをUSBメモリから起動する
作ったUbuntuのUSBブートメディアでUbuntuを起動するため、USBメモリを差したまま、Windows PCを再起動する。
起動時にF2やF12キーを押してBIOS/UEFIの設定画面を開く3。 BIOS画面ではブートメニューを開く。 ブートメニューの変更前の状態を写真などで保存したのち、起動デバイスの優先順位を、内臓SSD/HDDよりもUSBドライブが優先されるように変更する4。
BIOSの変更を保存して再起動すると、Ubuntuが起動する。 このとき「can not mount /dev/loop0 on /cow」というエラーが発生した場合は、USBブートメディアがきちんと作れていないため、再度USBブートメディアを作り直す。
Installer boot menuが表示された場合は「Try Ubuntu without installing」あるいは「Ubuntuを試す」を選択する。 絶対に「Ubuntuをインストール」してはいけない。 Windowsマシン内のデータが失われてしまう。
UbuntuでデバイスをXFSにフォーマットする
Ubuntuが起動したら、ターミナルを開き、ストレージをXFSにフォーマットしていく。
まず、ディスクのパーティションを確認する。 下記コマンドをターミナルで実行すると、接続されているストレージの情報が表示される。
sudo parted -l
表示される情報の「Model」がデバイス/ストレージの名前、「Disk」がデバイスのパスと容量である。
これらの情報から、フォーマットしたいデバイス/ストレージのパスを確認する。
以下はこのパスが/dev/sda
であるものとする。
このパスを間違えると取り返しのつかないことになるため、間違いのないようにすること。
次に、XFSへのフォーマットを実行する。
下記コマンドの/dev/sda
を、フォーマットしたいデバイス/ストレージのパスに変更して実行する。
これで、デバイス/ストレージをXFSにフォーマットできる。
sudo mkfs.xfs -f /dev/sda
このとき「デバイスもしくはリソースがビジー状態です」というエラーが発生しうる。 発生する場合は、Ubuntuのなんらかのシステムがデバイスを利用しているか、Ubuntu側で自動的にデバイスをマウントしている可能性がある。
Ubuntuのなんらかのシステムがデバイスを利用しているかどうかを確認するには、lsof
コマンドを利用する。
これにより、マウント先のディレクトリを利用しているサービスを調べられる。
そのサービスを停止すれば、ビジー状態が解除される。
下記コマンドで何も表示されない場合は無視してよい(/dev/sda
はフォーマットしたいデバイス/ストレージのパスに変更すること)。
lsof | grep /dev/sda
Ubuntu側で自動的にデバイスをマウントしているかを確認するには、lsblk
コマンドを利用する。
lsblk
出てくる結果の「NAME」がフォーマットしたいデバイス(e.g. sda
)と一致する部分を確認する。
その部分およびそこから枝分かれしている部分の「MOUNTPOINT」に/ubuntu/
から始まるパスが指定されている場合は、Ubuntu側で自動的にデバイスをマウントしている。
その場合は、デバイスをumount
コマンドでアンマウントする。下記にumount
コマンドの例を示す。
umount /dev/sda1
以上の対応をしてからXFSへのフォーマットを実行すると、今度はうまくいくはずである。 くれぐれもデバイスのパスを間違えないように。
XFSへのフォーマットが完了したら、sudo parted -l
できちんとフォーマットされたか確認するとよい。
無事フォーマットできたら、Ubuntuはシャットダウンする。 PCを再起動し、BIOS画面を開き、起動デバイスの優先順位を元に戻す。 設定を保存して再起動すると、Windowsが起動する。
以上で、WindowsマシンでストレージをXFSにマウントできた。
おわりに
作成したUSBブートメディアは、再度NTFSなどにフォーマットして、ただのUSBデバイスとして利用してよい。 Ubuntuが起動できると便利なこともあるため、そのままPCへ差しっぱなしにしてもいいだろう。
参考文献・URL
- UbuntuをUSBから起動する【ブータブルUSBドライブ】を作成する | ピーマンブラザーズの日常
- Linux UbuntuのブータブルUSBドライブを作成する手順 | 俺の開発研究所
- 方法3選|パソコンのデータを外付けHDDに自動的にバックアップする方法
- Ubuntuの入手 | Ubuntu Japanese Team
- Rufus - 起動可能なUSBドライブを簡単に作成できます
- there are filesystem specific o flags can not mount /dev/loop0 on /cow というエラー | よろろぐ
- Ubuntu で XFSファイルシステムを使う - エンジニアきまぐれTips
- ubuntu:ストレージのフォーマット \[雑多な記録\]
- 追加ディスクマウント(Ubuntu20,04、Ubuntu22.04) – お客さまサポート
- デバイスもしくはリソースがビジー状態です - inamuu wiki site
- 【Linux : Debian】fdiskでエラーが出た時の対策 | ぶたキムチBLOG