VMware ESXiからUSBフラッシュドライブにアクセスする方法【VMFSデータストア化・FAT32/NTFSからのファイルコピー】
VMware ESXiホストに外部USBフラッシュドライブ(USBメモリ)を直接接続したいケースは少なくありません。例えば、拠点間のWAN回線が低速だったり高負荷だったりする場合に、仮想マシンのイメージをコピーしてリモートオフィスへ送る必要があるとき、VMファイルを外部USBメディアにバックアップしたいとき、LANに負荷をかけたくない場合にISOファイルやVMイメージをESXiホストへコピーしたいときなどが挙げられます。
本記事では、USBフラッシュドライブをESXiホストに接続してVMFSデータストアとして利用する方法と、FAT32/NTFSパーティションから直接ファイルをコピーする方法を解説します。
外部USBドライブをVMware ESXiのVMFSデータストアとして接続する方法
USBドライブをESXiホストに接続し、その上にVMFSデータストアを作成できれば、仮想マシンのファイルやイメージを簡単にコピー・移動できるようになります。
公式には、VMwareは外部USBドライブをVMFSデータストアとして使用することをサポートしていません。しかし実際には動作するため、利用することは可能です。なお、ESXiは2TBを超えるUSBデバイスには対応していない点に注意してください。
VMware ESXi 6.5以降では、USBデバイスをホストに接続する方式が変更されました。以前は複数のドライバー(xhci、ehci-hcd、usb-uhci、usb-storage)が使われていましたが、現在は単一のUSBドライバーvmkusbに統合されています。
- SSH経由でESXiのコンソールに接続します。
- USB Arbitratorサービスを停止します。このサービスは、ESXiホストから仮想マシンへUSBデバイスをパススルーする機能(USBパススルー)に使用されるものです。
# /etc/init.d/usbarbitrator stop
ホスト再起動後にUSB Arbitratorが自動起動しないようにするには、以下のコマンドを実行します。# chkconfig usbarbitrator off - 空のUSBドライブをESXiホストに接続します。
- USBドライブのデバイス名は、ログファイル/var/log/vmkernel.logを確認するか、/dev/disksディレクトリを参照して特定できます。
# ls /dev/disks/
USBディスクは通常mpx.vmhbaXまたはnaa.Xという名前で表示されます。 - USBドライブにGPT(GUID)パーティションテーブルを作成します。
# partedUtil mklabel /dev/disks/naa.5000000000000001 gpt - 次に、ドライブ上にパーティションを手動で作成します。そのためには、ドライブの先頭セクターと最終セクターを指定する必要があります。ディスクのセクター情報を確認するには以下のコマンドを実行します。
# partedUtil getptbl /dev/disks/naa.5000000000000001 - 先頭セクターは常に2048です。最終セクターのサイズは、getptblの出力結果をもとに計算します。この例では以下のように計算されます。
121597 * 255 * 63 - 1 = 1953455804
ドライブに既存のパーティションがある場合は、削除しておきましょう。# partedUtil delete /dev/disks/naa.5000000000000001 1 - VMFSパーティションを作成します(この種のパーティションのGUIDは常にAA31E02A400F11DB9590000C2911D1B8です)。
# partedUtil setptbl /dev/disks/naa.5000000000000001 gpt "1 2048 1953455804 AA31E02A400F11DB9590000C2911D1B8 0" - 続いて、パーティションをVMFS6でフォーマットします。
# vmkfstools -C vmfs6 -S USB-HDD-DSDatastore /dev/disks/naa.5000000000000001:1 - GUIのVMware vSphere Clientを開き、ストレージ(Storages)に移動します。利用可能なデータストアの一覧にUSBドライブが表示されるはずです。
USBドライブ(NTFS/FAT32)からESXiへ直接ファイルをコピーする方法
USBドライブのファイルシステムをVMFSに変更したくない場合(WindowsからVMFSにアクセスする裏技もあります)、ESXiのコンソールからNTFSまたはFAT32でフォーマットされたパーティション上のファイルにアクセスし、必要なファイルをコピーすることができます。
なお、USBドライブをESXiホストに接続する前に、必ずUSB Arbitratorサービスを無効化しておいてください。
ESXiからFAT32でフォーマットされたパーティションにアクセスするにはmcopyツールを使用します。USBドライブ上のNTFSパーティションにアクセスする場合はntfscatを使用します。Ext3ファイルシステムも標準でサポートされています。基本的な制限事項は以下のとおりです。
- FAT32およびExt3パーティションは読み書き可能です。
- NTFSドライブは読み取り専用です(NTFSのUSBドライブからESXiホストへデータをコピーすることはできますが、その逆はできません)。
FAT32のUSBデバイスからESXiへファイルをコピーするには、以下のコマンドを使用します。
# /bin/mcopy -i "/dev/disks/naa.5000000000000001:2" ::/some.iso /vmfs/volumes/12345678-ddd654321-4321-aaaabbbb2222/iso/some.iso
/some.isoはUSBドライブ上のファイルへのパスです。2つ目のパスは、ESXiホスト上のコピー先(例:VMFSデータストアへの直接コピー)を示しています。
ESXiからUSBへファイルをコピーして戻す場合は、コマンド内のパスを入れ替えるだけです。
FAT32の最大の問題点は、4GBを超えるファイルをサポートしていないことです。そのため、仮想マシンのVMDKファイルをコピーするのはかなり困難です。通常は、コピー前に元のファイルを複数のパーツに分割します(例:3GBごと)。
# split -b 3221225472 /vmfs/volumes/xx/vm1/vm1.vmdk
その後、すべてのパーツをUSBドライブにコピーし、ターゲットのESXiホスト上で結合します。
# cat vm1* > vm1.vmdk
NTFSでフォーマットされたUSBドライブからESXiホストへファイルをコピーするには、以下のコマンドを使用します。
# /bin/ntfscat -f /dev/disks/naa.5000000000000001:2" some.iso > /vmfs/volumes/12345678-ddd654321-4321-aaaabbbb2222/iso/some.iso
NTFSの場合、ESXiへのコピーはできますが、逆方向のコピーはできません。ntfscatではNTFSへの書き込みができないためです。
-
USBフラッシュドライブから削除した写真を復元する方法【完全ガイド】
写真とは、単なる画像ではなく、私たちの大切な思い出そのものです。写真には、二度と訪れないかもしれない人生の一瞬が記録されています。一枚の写真を見るだけで、あの瞬間をもう一度味わうことができる方も多いでしょう。だからこそ、写真を失ってしまうことは本当に悲しいものです。そこで本記事では、USBフラッシュドライブから削除された写真を復元するための手順を詳しく解説します。 パソコンやスマートフォンのデータを復元できる写真復元ソフトは数多く存在します。しかし、USBメモリやSDカード、外付けハードディスクなどの外部デバイスから失われた写真を復元できるかご存じでしょうか?Systweak Software
-
故障したUSBメモリを修復する方法|原因の切り分けから具体的な対処手順まで完全解説
USBメモリは、パソコンに差し込んでデータをコピーするだけという、最もシンプルなデバイスの一つだと思われがちです。しかし、実際には常に快調に使えるとは限りません。ある日突然、USBメモリが動かなくなった——そんな経験はありませんか?実はこれは世界的によくある問題で、多くの人は「新しいものを買って、古いのは捨てるしかない」と考えています。 USBメモリは安価でどこでも入手できるため、それが一般的な考え方になっています。しかし、捨てられているUSBメモリのうち、少なくとも半分程度は状態次第で正常に復旧できるといわれています。USBメモリを廃棄する前に、まず本記事の「事前チェック」を読んでみてくださ