Bluepostech

プログラムとかはこっち

【Linux】仮想端末でHDDのフォーマット

LinuxとかOSレベルのことをいじるようになったので、バックアップ用に2TBのモバイルUSBHDDを買った。

 

ただし付属のケーブルが弱かったりファームウェア上の理由で、つながったりつながらなかったりする。ランプがつくまで抜き差ししないといけない。交換するのもめんどうそうなのでそのまま使うが。

モバイルタイプのUSBHDDというと大半がバスパワー、すなわちUSB端子から直接電力を得るタイプが多い。このタイプのUSBは別で電源を用意する必要がなく手軽な反面、ホスト(PC、タブレットなど)の端子に十分な電力供給能力を要求する。そのため、ノートPCやタブレットでは、しばしば電圧不足で動かないことがある。

それを見越して「タブレットは無理かな」と思って買ったのだが、手持ちのNEC LaVieTab PC-TE307にmicroUSB(B)-USB(A)変換コネクタを通してつないだところ、なんと認識した。これは強い。こういうかゆいところに手が届くようになっているのがこのタブレットの気に入っている点である。さすがNEC

 

NEC PC-TE307N1W LaVie Tab E

NEC PC-TE307N1W LaVie Tab E

 

 

ところが、デフォルトでは中身は読めないしフォーマットもできない。原因はHDDのフォーマットの種類で、デフォルトのNTFSにAndroidは対応しておらず、一昔前までのWindowsのスタンダードであるFAT32でフォーマットする必要がある。ちなみに、AndroidLinuxの流れを汲んでいるにもかかわらずext4も読めない。

さらに困ることに、最近のWindowsはFAT32でフォーマットする機能がついていない。フリーソフトを使えばできるのだが、いろいろ面倒くさい。ちなみにmacならできる。

そこで、プログラミングやLaTeXをいじるためにインストールしてある仮想端末(Virtualbox)上のxubuntu13.10でフォーマットしてみた。多分やり方はubuntuLinuxなら共通だと思う。

 

まず、仮想端末を起動した状態でまずPCのUSBにつなぐ。ここでホストOSで認識、ドライバがインストールされる。

次に仮想端末のUSBのタブを選択して、該当するHDDにチェックをいれる。するとホスト側では「Virtualbox USB」みたいな名前(うろおぼえ)のデバイスのインストールが始まり、終わると仮想端末にUSB接続した状態になる。

ここからがLinuxでの操作になるのだが、デバイス名を確認する。

sudo ls -l /dev

ストレージはsd~という名前になっていて、パーティションが番号付けされている。これでxubuntu上ではsdbと認識されたらしいことがわかった。

次に、フォーマットするだけなら飛ばしていいのだが、将来的にLinuxのUSBブートを試すため、パーティションの設定。ここで、windowsなどにも読ませるパーティションは先頭にする必要がある。fdiskコマンドでsdb1をメイン領域にして100GBのLinux用領域sdb2とswap領域を作った。

ここからがキモのフォーマット。LinuxでFAT32フォーマットするときはmkdosfsコマンドを使う。

sudo mkdosfs -v /dev/sdb1

サイズがでかいので、自動的にFAT32を選択してフォーマットしてくれる。ここから所用で外出して帰ってきたら終わっていたのでどれくらい時間がかかるかはわからないが、多分2時間以内には終わってると思う。

これでHDDはFAT32になった。確認のためまずwindowsで確認してみる。仮想端末のUSBのチェックをはずすと、すぐwindows側で再認識される。確認するとどうやらちゃんとFAT32になっているようである。

ちゃんと「安全に取り外す」コマンドを実行してからはずして、タブレットでも試してみたところ、認識、読み込み、書き込みができた。ただしディスクを回しているのでかなり電池を食う。目で見て電池が減っていく。10分で5%くらい減った。なのでつなぎっぱなしにはできない。

追記:HDDはついにびくともしなくなってしまったので、結局初期不良で修理に出した。一応ちゃんと対応してくれたが、詫びの一言もなかったのは少しどうなのかと思った。無料保証が長いのは助かるが、不良品が出たら交換だけしとけばいいという態度も考え物だ。