ESXiブートUSBメモリーのクローンでハマる

Windows上で書き込むのはやめよう

結論から書くと、、、
ddでクローンするのがいちばん簡単で楽ということ。

Windows上のツール「USB Image Tool」でimgファイルを書き込もうとしても、下画面のエラーに悩まされて無駄にすること数時間以上。素直に最初からLinux上でddしてた方が良かった。。。

以下がクローンした先のUSBメモリー。

[ 1524.525712] sd 3:0:0:0: [sdb] 61702144 512-byte logical blocks: (31.5 GB/29.4 GiB)
[ 1524.534467] sd 3:0:0:0: [sdb] Write Protect is off
[ 1524.534474] sd 3:0:0:0: [sdb] Mode Sense: 43 00 00 00
[ 1524.543182] sd 3:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 1524.623681]  sdb: unknown partition table
[ 1524.675655] sd 3:0:0:0: [sdb] Attached SCSI removable disk
root@www:~#
root@www:~# dd if=/home/xxxxx/esxi6.0boot.img of=/dev/sdb bs=512k
dd: `/dev/sdb' の書き込みエラー: デバイスに空き領域がありません
60257+0 レコード入力
60256+0 レコード出力
31591497728 バイト (32 GB) コピーされました、 3165.65 秒、 10.0 MB/秒
root@www:~# 

root@www:~# watch -n 5 "pkill -USR1 dd"

root@www:~# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
GPT PMBR size mismatch (62844671 != 61702143) will be corrected by w(rite).

Command (m for help): p

Disk /dev/sdb: 29.4 GiB, 31591497728 bytes, 61702144 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x2cc8ead1

Device     Boot Start      End  Sectors Size Id Type
/dev/sdb1           1 62844671 62844671  30G ee GPT

Command (m for help):q
root@www:~# 

最後までハマったのは、上記の通りクローン先のUSBメモリー容量が、元のものよりも小さかったという点。さらに、fdiskしてもパーティションの分割具合が見えない(汗

USBメモリーの選択を誤ったか、585MBも小さかった。上リスト(クローン先)と、下リスト(クローン元)のログを見比べるとよく分かる。

しかし、結果的にESXiブートメディアの場合は書き込まれなくても、元のUSBメモリーをWindows上のディスク管理で見ると後ろがほとんど使われてないことが分かるため、エラーなど楽観視(;・∀・) まぁ、32GBのUSBメモリーを使うだなんて無駄すぎるということも分かる。。。

以下、クローン元のブートUSBメモリーをfdiskで覗いたところ。

[ 1814.380325] sd 3:0:0:0: [sdb] 62844672 512-byte logical blocks: (32.1 GB/29.9 GiB)
[ 1814.390336] sd 3:0:0:0: [sdb] Write Protect is off
[ 1814.390344] sd 3:0:0:0: [sdb] Mode Sense: 43 00 00 00
[ 1814.398499] sd 3:0:0:0: [sdb] No Caching mode page found
[ 1814.398583] sd 3:0:0:0: [sdb] Assuming drive cache: write through
[ 1814.601718]  sdb: sdb1 sdb5 sdb6 sdb7 sdb8 sdb9
[ 1814.651455] sd 3:0:0:0: [sdb] Attached SCSI removable disk
root@www:~# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): p

Disk /dev/sdb: 30 GiB, 32176472064 bytes, 62844672 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: C88B6B3A-AA8E-408E-B1FA-60CBF8262CBC

Device       Start     End Sectors  Size Type
/dev/sdb1       64    8191    8128    4M EFI System
/dev/sdb5     8224  520191  511968  250M Microsoft basic data
/dev/sdb6   520224 1032191  511968  250M Microsoft basic data
/dev/sdb7  1032224 1257471  225248  110M unknown
/dev/sdb8  1257504 1843199  585696  286M Microsoft basic data
/dev/sdb9  1843200 7086079 5242880  2.5G unknown


Command (m for help): q

root@www:~#

空き容量がなく書込みエラーとなったものの、何も問題なくブートできた。後ろの約27GBは未確保だからクローンできてなくても構わないし(;´∀`)

このまま使っていくつもり。。。

sponsored links