ESXi ARM Editionをラズパイ4にインストールした

VMware Flingにて「ESXi ARM Edition」が公開された。

早速、ラズパイ4の8GBモデルにインストールしてみた。

用意するもの
・ラズパイ4の4GBか8GBモデル
・UEFI起動専用microSD
・ESXiのインストーラーISOを書き込んだUSBメモリ
・ESXiのインストール先になるUSBメモリ(USB2.0だとインストール先に設定できなかった)
 (iSCSI LUNにもインストールできるらしい)
・Raspberry Pi OSをインストールしたmicroSD

(2020/10/14追記 一番最後にmicroSD無しで起動させる手順を追加。1回インストールが完了した後の操作になります)

インストール手順

(0) ラズパイ4のEEPROMを最新版にする

まず、純正のRaspberry Pi OSをインストールしたmicroSDで起動して
「sudo rpi-eeprom-update」を実行。

画像


上記のように「*** UPDATE AVAILABLE ***」と表示されている場合は、新しいバージョンが出ているので「sudo rpi-eeprom-update -a」を実行しアップデートトリガを建てたあと、OSを再起動(reboot)する。

再起動後、下記の様に「up-to-date」表示となることを確認する。

画像

(1) VMware Flingsの「ESXi Arm Edition」からファイルを入手

VMware Flingsの「ESXi ARM Edition」からISOイメージを入手

なお、マニュアルは「ESXi-ARM-ISO」と表示されているプルダウンメニューを開くと選択できるようになっている。

(2) UEFI起動専用microSD にUEFIファイルを置く

まず、パソコンでmicroSDをFA32でフォーマットする。その際、ボリュームライベルを「UEFI」と指定する。
32GBを超えているとexFAT形式になり、起動できないので注意すること。

ラズパイ公式が提供しているfirmware.zipをhttps://github.com/raspberrypi/firmware/releases からダウンロードしてくる。

このファイルの中にあるbootディレクトリの中身をmicroSDに展開する。

画像

展開したあと、kernelで始まるファイル名を削除する。

次に、pftf提供のUEFIを https://github.com/pftf/RPi4/releases/ からダウンロードする

ダウンロードしたzipファイルの中身を全部microSDに上書きコピーする。

ラズパイ4 4GBモデルの場合はconfig.txtの最後に「gpu_mem=16」という文字列を追加する。

なお、UEFI関連の細かいところは tianocore / edk2-platformsの「Raspberry Pi 4 Platform」を参照のこと

(3) ESXiインストーラーUSBメモリを作成

VMware FlingsからダウンロードしたESXi インストーラISOファイルを、USBメモリに書き込む。

うちでは「Rufus」を使用して書き込んだ。

画像

(4) ラズパイにUEFI起動専用microSDをさして初回起動

起動後、ESCキーを押してUEFI設定画面に遷り、「Device Manager」を選択

「Raspberry Pi Configuration」の「Display Configuration」にて「Virtual 1024×768」ぐらいの解像度を設定する。これはもっと高解像度でもいいのだが、文字が小さくて読みにくくなるだけなのでやめた方が良い。

画像

「Raspberry Pi Configuration」の「Advanced Configuration」にて「Limit RAM to 3GB」を「Disabled」に設定 (設定しないとメモリが3GBまでしか使えない)

画像

これを設定したあと、ラズパイを一度リセットする。

なお「CPU Configuration」にてオーバークロック設定も可能だが、ESXi ARM手順書に「do not overclock」とある。

(5) ESXiインストーラーUSBメモリをさして起動

起動後、ESCキーを押してUEFI設定画面に遷り、「Boot Manager」を選択

デバイス一覧からUSBメモリを選択して起動する。

画像

なお、この段階ではインストール先USBメモリはささない

(6) インストール手順をすすめてインストール先の選択を行う

ESXi インストーラーの画面はx86_64環境の場合とほぼ変わらず

画像
画像

インストール手順をすすめていくと、インストール先の選択を行うところになる。

ここの段階にきてからインストール先USBメモリをさして「F5」キーを押して更新する。

更新するとUSBメモリが追加されるはず。

画像

このとき、追加されたUSBメモリの容量が0MBとなっている場合は、該当するUSBメモリにインストールが出来ない。

インストールできるUSBを選択したあとは、普通のESXiインストールと同じ

画像
画像
画像
画像

インストールが完了したら再起動される

再起動したらESXiインストーラーUSBメモリは取り外す。

(7) 自動起動設定を行う

UEFI設定画面の「Boot Maintenance Manager」にて、インストール先USBメモリを選択して自動的に起動する設定とする。

画像

(8) ESXiが起動する

HDMI出力される画面はほぼ通常のESXi 7.0と同じ。

画像

また、Host Clientが起動しているので Webブラウザから管理画面にアクセスすることもできる。

画像
画像

(9) 手動で時刻設定を行う

ラズパイ4は時刻保持をしないので、起動直後は時間が大きくズレている。(2020/09/01に設定されていた)

まず、手動で大まかな時刻を設定して確定する。その後にNTP設定を行う。

なお、大きく時刻がズレているとvCenterサーバへの登録に失敗したりする。

(10) vCenterに登録

ESXi ARMであっても普通のESXiと同様に登録できます。

最初は「Unable to push signed certificate to host 」というエラーで登録失敗したのですが、これは、ESXi ARMとvCenter間の時刻ズレが原因でした。

画像

(11) Ubuntu 20.04 LTS(arm)のインストール

Ubuntu 公式のARM serverページからUbuntu Server installer ISOファイルを入手します。

これを使うだけで、あとは普通の仮想マシン作成手順と同じです。

画像
画像
画像

Ubuntuのインストール詳細は省略しますが、インストール中のラズパイ4の負可は下記の様になっていました。

画像

なお、パーテーション構成はこのような感じでした。

1osakanataro@ubuntu-arm:~$ uname -a
2Linux ubuntu-arm 5.4.0-48-generic #52-Ubuntu SMP Thu Sep 10 11:01:50 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
3osakanataro@ubuntu-arm:~$ df -h
4Filesystem                         Size  Used Avail Use% Mounted on
5udev                               932M     0  932M   0% /dev
6tmpfs                              199M  1.1M  198M   1% /run
7/dev/mapper/ubuntu--vg-ubuntu--lv   20G  5.0G   14G  27% /
8tmpfs                              991M     0  991M   0% /dev/shm
9tmpfs                              5.0M     0  5.0M   0% /run/lock
10tmpfs                              991M     0  991M   0% /sys/fs/cgroup
11/dev/sda2                          976M  106M  804M  12% /boot
12/dev/loop0                          49M   49M     0 100% /snap/core18/1883
13/dev/loop1                          64M   64M     0 100% /snap/lxd/16103
14/dev/loop2                          26M   26M     0 100% /snap/snapd/8543
15/dev/sda1                          511M  3.5M  508M   1% /boot/efi
16tmpfs                              199M     0  199M   0% /run/user/1000
17osakanataro@ubuntu-arm:~$

また「lshw」コマンドによるハードウェア認識は下記の様になります。

1osakanataro@ubuntu-arm:~$ sudo lshw
2ubuntu-arm
3    description: Computer
4    product: linux,dummy-virt
5    width: 64 bits
6    capabilities: cp15_barrier setend swp tagged_addr_disabled
7  *-core
8       description: Motherboard
9       physical id: 0
10     *-cpu
11          description: CPU
12          product: cpu
13          physical id: 0
14          bus info: cpu@0
15          capabilities: fp asimd evtstrm crc32 cpuid
16     *-memory
17          description: System memory
18          physical id: 1
19          size: 2GiB
20     *-pci
21          description: Host bridge
22          product: VMware
23          vendor: VMware
24          physical id: 100
25          bus info: pci@0000:00:00.0
26          version: 01
27          width: 32 bits
28          clock: 33MHz
29        *-generic UNCLAIMED
30             description: System peripheral
31             product: Virtual Machine Communication Interface
32             vendor: VMware
33             physical id: 0.7
34             bus info: pci@0000:00:00.7
35             version: 10
36             width: 64 bits
37             clock: 33MHz
38             capabilities: msi msix cap_list
39             configuration: latency=0 maxlatency=255 mingnt=6
40             resources: ioport:1000(size=64) memory:34500000-34501fff
41        *-display UNCLAIMED
42             description: VGA compatible controller
43             product: VMware
44             vendor: VMware
45             physical id: f
46             bus info: pci@0000:00:0f.0
47             version: 00
48             width: 64 bits
49             clock: 33MHz
50             capabilities: msi msix vga_controller bus_master cap_list
51             configuration: latency=64
52             resources: memory:30000000-303fffff memory:50000000-57ffffff memory:5c000000-5c007fff
53        *-pci:0
54             description: PCI bridge
55             product: PCI bridge
56             vendor: VMware
57             physical id: 11
58             bus info: pci@0000:00:11.0
59             version: 02
60             width: 32 bits
61             clock: 33MHz
62             capabilities: pci subtractive_decode bus_master cap_list
63             resources: memory:30400000-304fffff
64           *-sata
65                description: SATA controller
66                product: SATA AHCI controller
67                vendor: VMware
68                physical id: 1
69                bus info: pci@0000:01:01.0
70                logical name: scsi0
71                logical name: scsi1
72                version: 00
73                width: 32 bits
74                clock: 66MHz
75                capabilities: sata pm msi ahci_1.0 bus_master cap_list rom emulated
76                configuration: driver=ahci latency=64
77                resources: irq:43 memory:30410000-30410fff memory:30400000-3040ffff
78              *-disk
79                   description: ATA Disk
80                   product: VMware Virtual S
81                   physical id: 0
82                   bus info: scsi@0:0.0.0
83                   logical name: /dev/sda
84                   version: 0001
85                   serial: 00000000000000000001
86                   size: 40GiB (42GB)
87                   capabilities: gpt-1.00 partitioned partitioned:gpt
88                   configuration: ansiversion=5 guid=dcc76c9a-30c6-47ff-a50e-9c1aef36f82d logicalsectorsize=512 sectorsize=512
89                 *-volume:0 UNCLAIMED
90                      description: Windows FAT volume
91                      vendor: mkfs.fat
92                      physical id: 1
93                      bus info: scsi@0:0.0.0,1
94                      version: FAT32
95                      serial: 8602-1cb1
96                      size: 510MiB
97                      capacity: 511MiB
98                      capabilities: boot fat initialized
99                      configuration: FATs=2 filesystem=fat
100                 *-volume:1
101                      description: EXT4 volume
102                      vendor: Linux
103                      physical id: 2
104                      bus info: scsi@0:0.0.0,2
105                      logical name: /dev/sda2
106                      logical name: /boot
107                      version: 1.0
108                      serial: 62661a57-4595-43cb-a0c4-7a8bd89295ad
109                      size: 1GiB
110                      capabilities: journaled extended_attributes large_files huge_files dir_nlink recover 64bit extents ext4 ext2 initialized
111                      configuration: created=2020-10-08 10:16:20 filesystem=ext4 lastmountpoint=/boot modified=2020-10-08 11:16:51 mount.fstype=ext4 mount.options=rw,relatime mounted=2020-10-08 11:16:51 state=mounted
112                 *-volume:2
113                      description: EFI partition
114                      physical id: 3
115                      bus info: scsi@0:0.0.0,3
116                      logical name: /dev/sda3
117                      serial: qFzQl0-IcQD-bYC3-gpCZ-jpfP-zy2j-GzOGgE
118                      size: 38GiB
119                      capabilities: lvm2
120              *-cdrom
121                   description: DVD-RAM writer
122                   product: VMware SATA CD01
123                   vendor: NECVMWar
124                   physical id: 1
125                   bus info: scsi@1:0.0.0
126                   logical name: /dev/cdrom
127                   logical name: /dev/cdrw
128                   logical name: /dev/dvd
129                   logical name: /dev/sr0
130                   version: 1.00
131                   capabilities: removable audio cd-r cd-rw dvd dvd-r dvd-ram
132                   configuration: ansiversion=5 status=open
133        *-pci:1
134             description: PCI bridge
135             product: PCI Express Root Port
136             vendor: VMware
137             physical id: 15
138             bus info: pci@0000:00:15.0
139             version: 01
140             width: 32 bits
141             clock: 33MHz
142             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
143             configuration: driver=pcieport
144             resources: irq:8 memory:30500000-306fffff ioport:58000000(size=2097152)
145           *-network
146                description: Ethernet interface
147                product: 82574L Gigabit Network Connection
148                vendor: Intel Corporation
149                physical id: 0
150                bus info: pci@0000:02:00.0
151                logical name: ens160
152                version: 00
153                serial: 00:50:56:93:f5:9f
154                size: 1Gbit/s
155                capacity: 1Gbit/s
156                width: 32 bits
157                clock: 33MHz
158                capabilities: pm msi pciexpress msix bus_master cap_list rom ethernet physical logical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
159                configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k duplex=full firmware=1.8-0 ip=172.17.44.88 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
160                resources: irq:44 memory:30500000-3051ffff memory:30520000-3053ffff memory:30550000-30553fff memory:30540000-3054ffff
161        *-pci:2
162             description: PCI bridge
163             product: PCI Express Root Port
164             vendor: VMware
165             physical id: 15.1
166             bus info: pci@0000:00:15.1
167             version: 01
168             width: 32 bits
169             clock: 33MHz
170             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
171             configuration: driver=pcieport
172             resources: irq:9 memory:30700000-308fffff ioport:58200000(size=2097152)
173        *-pci:3
174             description: PCI bridge
175             product: PCI Express Root Port
176             vendor: VMware
177             physical id: 15.2
178             bus info: pci@0000:00:15.2
179             version: 01
180             width: 32 bits
181             clock: 33MHz
182             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
183             configuration: driver=pcieport
184             resources: irq:10 memory:30900000-30afffff ioport:58400000(size=2097152)
185        *-pci:4
186             description: PCI bridge
187             product: PCI Express Root Port
188             vendor: VMware
189             physical id: 15.3
190             bus info: pci@0000:00:15.3
191             version: 01
192             width: 32 bits
193             clock: 33MHz
194             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
195             configuration: driver=pcieport
196             resources: irq:11 memory:30b00000-30cfffff ioport:58600000(size=2097152)
197        *-pci:5
198             description: PCI bridge
199             product: PCI Express Root Port
200             vendor: VMware
201             physical id: 15.4
202             bus info: pci@0000:00:15.4
203             version: 01
204             width: 32 bits
205             clock: 33MHz
206             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
207             configuration: driver=pcieport
208             resources: irq:12 memory:30d00000-30efffff ioport:58800000(size=2097152)
209        *-pci:6
210             description: PCI bridge
211             product: PCI Express Root Port
212             vendor: VMware
213             physical id: 15.5
214             bus info: pci@0000:00:15.5
215             version: 01
216             width: 32 bits
217             clock: 33MHz
218             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
219             configuration: driver=pcieport
220             resources: irq:13 memory:30f00000-310fffff ioport:58a00000(size=2097152)
221        *-pci:7
222             description: PCI bridge
223             product: PCI Express Root Port
224             vendor: VMware
225             physical id: 15.6
226             bus info: pci@0000:00:15.6
227             version: 01
228             width: 32 bits
229             clock: 33MHz
230             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
231             configuration: driver=pcieport
232             resources: irq:14 memory:31100000-312fffff ioport:58c00000(size=2097152)
233        *-pci:8
234             description: PCI bridge
235             product: PCI Express Root Port
236             vendor: VMware
237             physical id: 15.7
238             bus info: pci@0000:00:15.7
239             version: 01
240             width: 32 bits
241             clock: 33MHz
242             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
243             configuration: driver=pcieport
244             resources: irq:15 memory:31300000-314fffff ioport:58e00000(size=2097152)
245        *-pci:9
246             description: PCI bridge
247             product: PCI Express Root Port
248             vendor: VMware
249             physical id: 16
250             bus info: pci@0000:00:16.0
251             version: 01
252             width: 32 bits
253             clock: 33MHz
254             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
255             configuration: driver=pcieport
256             resources: irq:16 memory:31500000-316fffff ioport:59000000(size=2097152)
257           *-usb
258                description: USB controller
259                product: USB3 xHCI 1.0 Controller
260                vendor: VMware
261                physical id: 0
262                bus info: pci@0000:0a:00.0
263                version: 00
264                width: 64 bits
265                clock: 33MHz
266                capabilities: pm pciexpress msi msix xhci bus_master cap_list
267                configuration: driver=xhci_hcd latency=0 maxlatency=255 mingnt=6
268                resources: irq:40 memory:31500000-3151ffff
269              *-usbhost:0
270                   product: xHCI Host Controller
271                   vendor: Linux 5.4.0-48-generic xhci-hcd
272                   physical id: 0
273                   bus info: usb@1
274                   logical name: usb1
275                   version: 5.04
276                   capabilities: usb-2.00
277                   configuration: driver=hub slots=4 speed=480Mbit/s
278                 *-usb:0
279                      description: Human interface device
280                      product: VMware Virtual USB Mouse
281                      vendor: VMware
282                      physical id: 1
283                      bus info: usb@1:1
284                      version: 1.02
285                      capabilities: usb-1.10
286                      configuration: driver=usbhid speed=12Mbit/s
287                 *-usb:1
288                      description: Keyboard
289                      product: VMware Virtual USB Keyboard
290                      vendor: VMware
291                      physical id: 2
292                      bus info: usb@1:2
293                      version: 1.00
294                      capabilities: usb-1.10
295                      configuration: driver=usbhid speed=12Mbit/s
296                 *-usb:2
297                      description: USB hub
298                      product: VMware Virtual USB Hub
299                      vendor: VMware, Inc.
300                      physical id: 3
301                      bus info: usb@1:3
302                      version: 1.00
303                      capabilities: usb-1.10
304                      configuration: driver=hub slots=7 speed=12Mbit/s
305                 *-usb:3
306                      description: USB hub
307                      product: VMware Virtual USB Hub
308                      vendor: VMware, Inc.
309                      physical id: 4
310                      bus info: usb@1:4
311                      version: 1.00
312                      capabilities: usb-2.00
313                      configuration: driver=hub slots=7 speed=480Mbit/s
314              *-usbhost:1
315                   product: xHCI Host Controller
316                   vendor: Linux 5.4.0-48-generic xhci-hcd
317                   physical id: 1
318                   bus info: usb@2
319                   logical name: usb2
320                   version: 5.04
321                   capabilities: usb-3.10
322                   configuration: driver=hub slots=4 speed=10000Mbit/s
323        *-pci:10
324             description: PCI bridge
325             product: PCI Express Root Port
326             vendor: VMware
327             physical id: 16.1
328             bus info: pci@0000:00:16.1
329             version: 01
330             width: 32 bits
331             clock: 33MHz
332             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
333             configuration: driver=pcieport
334             resources: irq:17 memory:31700000-318fffff ioport:59200000(size=2097152)
335        *-pci:11
336             description: PCI bridge
337             product: PCI Express Root Port
338             vendor: VMware
339             physical id: 16.2
340             bus info: pci@0000:00:16.2
341             version: 01
342             width: 32 bits
343             clock: 33MHz
344             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
345             configuration: driver=pcieport
346             resources: irq:18 memory:31900000-31afffff ioport:59400000(size=2097152)
347        *-pci:12
348             description: PCI bridge
349             product: PCI Express Root Port
350             vendor: VMware
351             physical id: 16.3
352             bus info: pci@0000:00:16.3
353             version: 01
354             width: 32 bits
355             clock: 33MHz
356             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
357             configuration: driver=pcieport
358             resources: irq:19 memory:31b00000-31cfffff ioport:59600000(size=2097152)
359        *-pci:13
360             description: PCI bridge
361             product: PCI Express Root Port
362             vendor: VMware
363             physical id: 16.4
364             bus info: pci@0000:00:16.4
365             version: 01
366             width: 32 bits
367             clock: 33MHz
368             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
369             configuration: driver=pcieport
370             resources: irq:20 memory:31d00000-31efffff ioport:59800000(size=2097152)
371        *-pci:14
372             description: PCI bridge
373             product: PCI Express Root Port
374             vendor: VMware
375             physical id: 16.5
376             bus info: pci@0000:00:16.5
377             version: 01
378             width: 32 bits
379             clock: 33MHz
380             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
381             configuration: driver=pcieport
382             resources: irq:21 memory:31f00000-320fffff ioport:59a00000(size=2097152)
383        *-pci:15
384             description: PCI bridge
385             product: PCI Express Root Port
386             vendor: VMware
387             physical id: 16.6
388             bus info: pci@0000:00:16.6
389             version: 01
390             width: 32 bits
391             clock: 33MHz
392             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
393             configuration: driver=pcieport
394             resources: irq:22 memory:32100000-322fffff ioport:59c00000(size=2097152)
395        *-pci:16
396             description: PCI bridge
397             product: PCI Express Root Port
398             vendor: VMware
399             physical id: 16.7
400             bus info: pci@0000:00:16.7
401             version: 01
402             width: 32 bits
403             clock: 33MHz
404             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
405             configuration: driver=pcieport
406             resources: irq:23 memory:32300000-324fffff ioport:59e00000(size=2097152)
407        *-pci:17
408             description: PCI bridge
409             product: PCI Express Root Port
410             vendor: VMware
411             physical id: 17
412             bus info: pci@0000:00:17.0
413             version: 01
414             width: 32 bits
415             clock: 33MHz
416             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
417             configuration: driver=pcieport
418             resources: irq:24 memory:32500000-326fffff ioport:5a000000(size=2097152)
419        *-pci:18
420             description: PCI bridge
421             product: PCI Express Root Port
422             vendor: VMware
423             physical id: 17.1
424             bus info: pci@0000:00:17.1
425             version: 01
426             width: 32 bits
427             clock: 33MHz
428             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
429             configuration: driver=pcieport
430             resources: irq:25 memory:32700000-328fffff ioport:5a200000(size=2097152)
431        *-pci:19
432             description: PCI bridge
433             product: PCI Express Root Port
434             vendor: VMware
435             physical id: 17.2
436             bus info: pci@0000:00:17.2
437             version: 01
438             width: 32 bits
439             clock: 33MHz
440             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
441             configuration: driver=pcieport
442             resources: irq:26 memory:32900000-32afffff ioport:5a400000(size=2097152)
443        *-pci:20
444             description: PCI bridge
445             product: PCI Express Root Port
446             vendor: VMware
447             physical id: 17.3
448             bus info: pci@0000:00:17.3
449             version: 01
450             width: 32 bits
451             clock: 33MHz
452             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
453             configuration: driver=pcieport
454             resources: irq:27 memory:32b00000-32cfffff ioport:5a600000(size=2097152)
455        *-pci:21
456             description: PCI bridge
457             product: PCI Express Root Port
458             vendor: VMware
459             physical id: 17.4
460             bus info: pci@0000:00:17.4
461             version: 01
462             width: 32 bits
463             clock: 33MHz
464             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
465             configuration: driver=pcieport
466             resources: irq:28 memory:32d00000-32efffff ioport:5a800000(size=2097152)
467        *-pci:22
468             description: PCI bridge
469             product: PCI Express Root Port
470             vendor: VMware
471             physical id: 17.5
472             bus info: pci@0000:00:17.5
473             version: 01
474             width: 32 bits
475             clock: 33MHz
476             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
477             configuration: driver=pcieport
478             resources: irq:29 memory:32f00000-330fffff ioport:5aa00000(size=2097152)
479        *-pci:23
480             description: PCI bridge
481             product: PCI Express Root Port
482             vendor: VMware
483             physical id: 17.6
484             bus info: pci@0000:00:17.6
485             version: 01
486             width: 32 bits
487             clock: 33MHz
488             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
489             configuration: driver=pcieport
490             resources: irq:30 memory:33100000-332fffff ioport:5ac00000(size=2097152)
491        *-pci:24
492             description: PCI bridge
493             product: PCI Express Root Port
494             vendor: VMware
495             physical id: 17.7
496             bus info: pci@0000:00:17.7
497             version: 01
498             width: 32 bits
499             clock: 33MHz
500             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
501             configuration: driver=pcieport
502             resources: irq:31 memory:33300000-334fffff ioport:5ae00000(size=2097152)
503        *-pci:25
504             description: PCI bridge
505             product: PCI Express Root Port
506             vendor: VMware
507             physical id: 18
508             bus info: pci@0000:00:18.0
509             version: 01
510             width: 32 bits
511             clock: 33MHz
512             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
513             configuration: driver=pcieport
514             resources: irq:32 memory:33500000-336fffff ioport:5b000000(size=2097152)
515        *-pci:26
516             description: PCI bridge
517             product: PCI Express Root Port
518             vendor: VMware
519             physical id: 18.1
520             bus info: pci@0000:00:18.1
521             version: 01
522             width: 32 bits
523             clock: 33MHz
524             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
525             configuration: driver=pcieport
526             resources: irq:33 memory:33700000-338fffff ioport:5b200000(size=2097152)
527        *-pci:27
528             description: PCI bridge
529             product: PCI Express Root Port
530             vendor: VMware
531             physical id: 18.2
532             bus info: pci@0000:00:18.2
533             version: 01
534             width: 32 bits
535             clock: 33MHz
536             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
537             configuration: driver=pcieport
538             resources: irq:34 memory:33900000-33afffff ioport:5b400000(size=2097152)
539        *-pci:28
540             description: PCI bridge
541             product: PCI Express Root Port
542             vendor: VMware
543             physical id: 18.3
544             bus info: pci@0000:00:18.3
545             version: 01
546             width: 32 bits
547             clock: 33MHz
548             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
549             configuration: driver=pcieport
550             resources: irq:35 memory:33b00000-33cfffff ioport:5b600000(size=2097152)
551        *-pci:29
552             description: PCI bridge
553             product: PCI Express Root Port
554             vendor: VMware
555             physical id: 18.4
556             bus info: pci@0000:00:18.4
557             version: 01
558             width: 32 bits
559             clock: 33MHz
560             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
561             configuration: driver=pcieport
562             resources: irq:36 memory:33d00000-33efffff ioport:5b800000(size=2097152)
563        *-pci:30
564             description: PCI bridge
565             product: PCI Express Root Port
566             vendor: VMware
567             physical id: 18.5
568             bus info: pci@0000:00:18.5
569             version: 01
570             width: 32 bits
571             clock: 33MHz
572             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
573             configuration: driver=pcieport
574             resources: irq:37 memory:33f00000-340fffff ioport:5ba00000(size=2097152)
575        *-pci:31
576             description: PCI bridge
577             product: PCI Express Root Port
578             vendor: VMware
579             physical id: 18.6
580             bus info: pci@0000:00:18.6
581             version: 01
582             width: 32 bits
583             clock: 33MHz
584             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
585             configuration: driver=pcieport
586             resources: irq:38 memory:34100000-342fffff ioport:5bc00000(size=2097152)
587        *-pci:32
588             description: PCI bridge
589             product: PCI Express Root Port
590             vendor: VMware
591             physical id: 18.7
592             bus info: pci@0000:00:18.7
593             version: 01
594             width: 32 bits
595             clock: 33MHz
596             capabilities: pci pm pciexpress msi normal_decode bus_master cap_list
597             configuration: driver=pcieport
598             resources: irq:39 memory:34300000-344fffff ioport:5be00000(size=2097152)
599osakanataro@ubuntu-arm:~$

(12) open-vm-toolsのインストール

Ubuntu 20.04など、x86_64環境であれば open-vm-tools のパッケージが存在している。

しかし、これまではARM(aarch64)環境のESXiなどは存在していなかったので、ARM環境で動作する open-vm-tools は用意されていない。このため、自分で open-vm-tools をコンパイルしてインストールする必要がある。

まずは、コンパイルに必要なパッケージ群をインストールする。

1osakanataro@ubuntu-arm:~$ sudo apt install -y automake-1.15 pkg-config libtool libmspack-dev libglib2.0-dev libpam0g-dev libssl-dev libxml2-dev libxmlsec1-dev libx11-dev libxext-dev libxinerama-dev libxi-dev libxrender-dev libxrandr-dev libgtk2.0-dev libgtk-3-dev libgtkmm-3.0-dev
2[sudo] password for osakanataro:
3Reading package lists... Done
4Building dependency tree
5Reading state information... Done
6The following additional packages will be installed:
7  adwaita-icon-theme at-spi2-core autoconf automake autopoint autotools-dev
8  build-essential cpp cpp-9 debhelper dh-autoreconf dh-strip-nondeterminism
9  dpkg-dev dwz fakeroot fontconfig fontconfig-config fonts-dejavu-core g++
10  g++-9 gcc gcc-9 gcc-9-base gettext gir1.2-atk-1.0 gir1.2-atspi-2.0
11  gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-gtk-2.0 gir1.2-gtk-3.0
12  gir1.2-harfbuzz-0.0 gir1.2-pango-1.0 gtk-update-icon-cache
13  hicolor-icon-theme humanity-icon-theme icu-devtools intltool-debian
14  libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl
15  libarchive-cpio-perl libarchive-zip-perl libasan5 libatk-bridge2.0-0
16  libatk-bridge2.0-dev libatk1.0-0 libatk1.0-data libatk1.0-dev
17  libatkmm-1.6-1v5 libatkmm-1.6-dev libatomic1 libatspi2.0-0 libatspi2.0-dev
18  libavahi-client3 libavahi-common-data libavahi-common3 libblkid-dev
19  libc-dev-bin libc6-dev libcairo-gobject2 libcairo-script-interpreter2
20  libcairo2 libcairo2-dev libcairomm-1.0-1v5 libcairomm-1.0-dev libcc1-0
21  libcolord2 libcroco3 libcrypt-dev libcups2 libdatrie-dev libdatrie1
22  libdbus-1-dev libdebhelper-perl libdpkg-perl libdrm-amdgpu1 libdrm-nouveau2
23  libdrm-radeon1 libegl-dev libegl-mesa0 libegl1 libegl1-mesa-dev libepoxy-dev
24  libepoxy0 libexpat1-dev libfakeroot libffi-dev libfile-fcntllock-perl
25  libfile-stripnondeterminism-perl libfontconfig1 libfontconfig1-dev
26  libfreetype-dev libfreetype6-dev libfribidi-dev libgail-common libgail18
27  libgbm1 libgcc-9-dev libgcrypt20-dev libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-bin
28  libgdk-pixbuf2.0-common libgdk-pixbuf2.0-dev libgl-dev libgl1
29  libgl1-mesa-dev libgl1-mesa-dri libglapi-mesa libgles-dev libgles1 libgles2
30  libglib2.0-dev-bin libglibmm-2.4-1v5 libglibmm-2.4-dev libglvnd-dev
31  libglvnd0 libglx-dev libglx-mesa0 libglx0 libgmp-dev libgmpxx4ldbl
32  libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev libgnutlsxx28 libgomp1
33  libgpg-error-dev libgraphite2-3 libgraphite2-dev libgtk-3-0 libgtk-3-bin
34  libgtk-3-common libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libgtkmm-3.0-1v5
35  libharfbuzz-dev libharfbuzz-gobject0 libharfbuzz-icu0 libharfbuzz0b
36  libice-dev libice6 libicu-dev libidn2-dev libisl22 libitm1 libjbig0
37  libjpeg-turbo8 libjpeg8 liblcms2-2 libllvm10 liblsan0 libltdl-dev
38  libmail-sendmail-perl libmount-dev libmpc3 libmspack0 libnspr4 libnspr4-dev
39  libnss3 libnss3-dev libopengl-dev libopengl0 libp11-kit-dev libpango-1.0-0
40  libpango1.0-dev libpangocairo-1.0-0 libpangoft2-1.0-0 libpangomm-1.4-1v5
41  libpangomm-1.4-dev libpangoxft-1.0-0 libpcre16-3 libpcre2-16-0 libpcre2-32-0
42  libpcre2-dev libpcre2-posix2 libpcre3-dev libpcre32-3 libpcrecpp0v5
43  libpixman-1-0 libpixman-1-dev libpng-dev libpng-tools libpthread-stubs0-dev
44  librest-0.7-0 librsvg2-2 librsvg2-common libselinux1-dev libsensors-config
45  libsensors5 libsepol1-dev libsigc++-2.0-0v5 libsigc++-2.0-dev libsm-dev
46  libsm6 libsoup-gnome2.4-1 libstdc++-9-dev libsub-override-perl
47  libsys-hostname-long-perl libtasn1-6-dev libtasn1-doc libthai-data
48  libthai-dev libthai0 libtiff5 libtsan0 libubsan1 libunbound8 libwayland-bin
49  libwayland-client0 libwayland-cursor0 libwayland-dev libwayland-egl1
50  libwayland-server0 libwebp6 libx11-xcb1 libxau-dev libxcb-dri2-0
51  libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-render0 libxcb-render0-dev
52  libxcb-shm0 libxcb-shm0-dev libxcb-sync1 libxcb-xfixes0 libxcb1-dev
53  libxcomposite-dev libxcomposite1 libxcursor-dev libxcursor1 libxdamage-dev
54  libxdamage1 libxdmcp-dev libxfixes-dev libxfixes3 libxft-dev libxft2 libxi6
55  libxinerama1 libxkbcommon-dev libxkbcommon0 libxml2-utils libxmlsec1
56  libxmlsec1-gcrypt libxmlsec1-gnutls libxmlsec1-nss libxmlsec1-openssl
57  libxrandr2 libxrender1 libxshmfence1 libxslt1-dev libxslt1.1 libxtst-dev
58  libxtst6 libxxf86vm1 linux-libc-dev m4 make manpages-dev nettle-dev
59  pango1.0-tools po-debconf ubuntu-mono uuid-dev wayland-protocols x11-common
60  x11proto-dev x11proto-input-dev x11proto-randr-dev x11proto-record-dev
61  x11proto-xext-dev x11proto-xinerama-dev xorg-sgml-doctools xtrans-dev
62  zlib1g-dev
63Suggested packages:
64  autoconf-archive gnu-standards autoconf-doc cpp-doc gcc-9-locales dh-make
65  debian-keyring gcc-9-doc gcc-multilib flex bison gdb gcc-doc gettext-doc
66  libasprintf-dev libgettextpo-dev libatkmm-1.6-doc glibc-doc libcairo2-doc
67  libcairomm-1.0-doc colord cups-common libdatrie-doc bzr freetype2-doc
68  libgcrypt20-doc libgirepository1.0-dev libglib2.0-doc libglibmm-2.4-doc
69  gmp-doc libgmp10-doc libmpfr-dev dns-root-data gnutls-bin gnutls-doc
70  libgraphite2-utils gvfs libgtk-3-doc libgtk2.0-doc libgtkmm-3.0-doc
71  libice-doc icu-doc liblcms2-utils libtool-doc imagemagick libpango1.0-doc
72  librsvg2-bin lm-sensors libsigc++-2.0-doc libsm-doc libssl-doc
73  libstdc++-9-doc libthai-doc gfortran | fortran95-compiler gcj-jdk
74  libwayland-doc libx11-doc libxcb-doc libxext-doc m4-doc make-doc
75  libmail-box-perl
76The following NEW packages will be installed:
77  adwaita-icon-theme at-spi2-core autoconf automake automake-1.15 autopoint
78  autotools-dev build-essential cpp cpp-9 debhelper dh-autoreconf
79  dh-strip-nondeterminism dpkg-dev dwz fakeroot fontconfig fontconfig-config
80  fonts-dejavu-core g++ g++-9 gcc gcc-9 gcc-9-base gettext gir1.2-atk-1.0
81  gir1.2-atspi-2.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-gtk-2.0
82  gir1.2-gtk-3.0 gir1.2-harfbuzz-0.0 gir1.2-pango-1.0 gtk-update-icon-cache
83  hicolor-icon-theme humanity-icon-theme icu-devtools intltool-debian
84  libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl
85  libarchive-cpio-perl libarchive-zip-perl libasan5 libatk-bridge2.0-0
86  libatk-bridge2.0-dev libatk1.0-0 libatk1.0-data libatk1.0-dev
87  libatkmm-1.6-1v5 libatkmm-1.6-dev libatomic1 libatspi2.0-0 libatspi2.0-dev
88  libavahi-client3 libavahi-common-data libavahi-common3 libblkid-dev
89  libc-dev-bin libc6-dev libcairo-gobject2 libcairo-script-interpreter2
90  libcairo2 libcairo2-dev libcairomm-1.0-1v5 libcairomm-1.0-dev libcc1-0
91  libcolord2 libcroco3 libcrypt-dev libcups2 libdatrie-dev libdatrie1
92  libdbus-1-dev libdebhelper-perl libdpkg-perl libdrm-amdgpu1 libdrm-nouveau2
93  libdrm-radeon1 libegl-dev libegl-mesa0 libegl1 libegl1-mesa-dev libepoxy-dev
94  libepoxy0 libexpat1-dev libfakeroot libffi-dev libfile-fcntllock-perl
95  libfile-stripnondeterminism-perl libfontconfig1 libfontconfig1-dev
96  libfreetype-dev libfreetype6-dev libfribidi-dev libgail-common libgail18
97  libgbm1 libgcc-9-dev libgcrypt20-dev libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-bin
98  libgdk-pixbuf2.0-common libgdk-pixbuf2.0-dev libgl-dev libgl1
99  libgl1-mesa-dev libgl1-mesa-dri libglapi-mesa libgles-dev libgles1 libgles2
100  libglib2.0-dev libglib2.0-dev-bin libglibmm-2.4-1v5 libglibmm-2.4-dev
101  libglvnd-dev libglvnd0 libglx-dev libglx-mesa0 libglx0 libgmp-dev
102  libgmpxx4ldbl libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev
103  libgnutlsxx28 libgomp1 libgpg-error-dev libgraphite2-3 libgraphite2-dev
104  libgtk-3-0 libgtk-3-bin libgtk-3-common libgtk-3-dev libgtk2.0-0
105  libgtk2.0-bin libgtk2.0-common libgtk2.0-dev libgtkmm-3.0-1v5
106  libgtkmm-3.0-dev libharfbuzz-dev libharfbuzz-gobject0 libharfbuzz-icu0
107  libharfbuzz0b libice-dev libice6 libicu-dev libidn2-dev libisl22 libitm1
108  libjbig0 libjpeg-turbo8 libjpeg8 liblcms2-2 libllvm10 liblsan0 libltdl-dev
109  libmail-sendmail-perl libmount-dev libmpc3 libmspack-dev libmspack0 libnspr4
110  libnspr4-dev libnss3 libnss3-dev libopengl-dev libopengl0 libp11-kit-dev
111  libpam0g-dev libpango-1.0-0 libpango1.0-dev libpangocairo-1.0-0
112  libpangoft2-1.0-0 libpangomm-1.4-1v5 libpangomm-1.4-dev libpangoxft-1.0-0
113  libpcre16-3 libpcre2-16-0 libpcre2-32-0 libpcre2-dev libpcre2-posix2
114  libpcre3-dev libpcre32-3 libpcrecpp0v5 libpixman-1-0 libpixman-1-dev
115  libpng-dev libpng-tools libpthread-stubs0-dev librest-0.7-0 librsvg2-2
116  librsvg2-common libselinux1-dev libsensors-config libsensors5 libsepol1-dev
117  libsigc++-2.0-0v5 libsigc++-2.0-dev libsm-dev libsm6 libsoup-gnome2.4-1
118  libssl-dev libstdc++-9-dev libsub-override-perl libsys-hostname-long-perl
119  libtasn1-6-dev libtasn1-doc libthai-data libthai-dev libthai0 libtiff5
120  libtool libtsan0 libubsan1 libunbound8 libwayland-bin libwayland-client0
121  libwayland-cursor0 libwayland-dev libwayland-egl1 libwayland-server0
122  libwebp6 libx11-dev libx11-xcb1 libxau-dev libxcb-dri2-0 libxcb-dri3-0
123  libxcb-glx0 libxcb-present0 libxcb-render0 libxcb-render0-dev libxcb-shm0
124  libxcb-shm0-dev libxcb-sync1 libxcb-xfixes0 libxcb1-dev libxcomposite-dev
125  libxcomposite1 libxcursor-dev libxcursor1 libxdamage-dev libxdamage1
126  libxdmcp-dev libxext-dev libxfixes-dev libxfixes3 libxft-dev libxft2
127  libxi-dev libxi6 libxinerama-dev libxinerama1 libxkbcommon-dev libxkbcommon0
128  libxml2-dev libxml2-utils libxmlsec1 libxmlsec1-dev libxmlsec1-gcrypt
129  libxmlsec1-gnutls libxmlsec1-nss libxmlsec1-openssl libxrandr-dev libxrandr2
130  libxrender-dev libxrender1 libxshmfence1 libxslt1-dev libxslt1.1 libxtst-dev
131  libxtst6 libxxf86vm1 linux-libc-dev m4 make manpages-dev nettle-dev
132  pango1.0-tools pkg-config po-debconf ubuntu-mono uuid-dev wayland-protocols
133  x11-common x11proto-dev x11proto-input-dev x11proto-randr-dev
134  x11proto-record-dev x11proto-xext-dev x11proto-xinerama-dev
135  xorg-sgml-doctools xtrans-dev zlib1g-dev
1360 upgraded, 295 newly installed, 0 to remove and 0 not upgraded.
137Need to get 106 MB of archives.
138After this operation, 1,063 MB of additional disk space will be used.
139Get:1 http://jp.ports.ubuntu.com/ubuntu-ports focal/main arm64 hicolor-icon-theme all 0.17-2 [9,976 B]
140<略>
141Setting up libgtkmm-3.0-dev:arm64 (3.24.2-1build1) ...
142Processing triggers for libgdk-pixbuf2.0-0:arm64 (2.40.0+dfsg-3) ...
143Processing triggers for libc-bin (2.31-0ubuntu9.1) ...
144osakanataro@ubuntu-arm:~$

「git clone https://github.com/vmware/open-vm-tools.git」を実行して、open-vm-toolsのソースコードをダウンロードする。

1osakanataro@ubuntu-arm:~$ git clone https://github.com/vmware/open-vm-tools.git
2Cloning into 'open-vm-tools'...
3remote: Enumerating objects: 1286, done.
4remote: Counting objects: 100% (1286/1286), done.
5remote: Compressing objects: 100% (557/557), done.
6remote: Total 55877 (delta 876), reused 1040 (delta 729), pack-reused 54591
7Receiving objects: 100% (55877/55877), 21.09 MiB | 5.96 MiB/s, done.
8Resolving deltas: 100% (41991/41991), done.
9osakanataro@ubuntu-arm:~$

そして「cd open-vm-tools/open-vm-tools/」「autoreconf -i」「./configure」を実行。

1osakanataro@ubuntu-arm:~$ cd open-vm-tools/open-vm-tools/
2osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ autoreconf -i
3libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'config'.
4libtoolize: copying file 'config/ltmain.sh'
5libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
6libtoolize: copying file 'm4/libtool.m4'
7libtoolize: copying file 'm4/ltoptions.m4'
8libtoolize: copying file 'm4/ltsugar.m4'
9libtoolize: copying file 'm4/ltversion.m4'
10libtoolize: copying file 'm4/lt~obsolete.m4'
11configure.ac:201: installing 'config/compile'
12configure.ac:70: installing 'config/config.guess'
13configure.ac:70: installing 'config/config.sub'
14configure.ac:329: installing 'config/install-sh'
15configure.ac:329: installing 'config/missing'
16Makefile.am: installing './INSTALL'
17checkvm/Makefile.am: installing 'config/depcomp'
18lib/guestRpc/Makefile.am:26: warning: 'CFLAGS' is a user variable, you should not override it;
19lib/guestRpc/Makefile.am:26: use 'AM_CFLAGS' instead
20libappmonitor/Makefile.am:39: warning: source file '$(top_srcdir)/lib/stubs/stub-panic.c' is in a subdirectory,
21libappmonitor/Makefile.am:39: but option 'subdir-objects' is disabled
22automake: warning: possible forward-incompatibility.
23automake: At least a source file is in a subdirectory, but the 'subdir-objects'
24automake: automake option hasn't been enabled.  For now, the corresponding output
25automake: object file(s) will be placed in the top-level directory.  However,
26automake: this behaviour will change in future Automake versions: they will
27automake: unconditionally cause object files to be placed in the same subdirectory
28automake: of the corresponding sources.
29automake: You are advised to start using 'subdir-objects' option throughout your
30automake: project, to avoid future incompatibilities.
31libappmonitor/Makefile.am:39: warning: source file '$(libappmonitor_rpcchanneldir)/bdoorChannel.c' is in a subdirectory,
32libappmonitor/Makefile.am:39: but option 'subdir-objects' is disabled
33libappmonitor/Makefile.am:39: warning: source file '$(libappmonitor_rpcchanneldir)/rpcChannel.c' is in a subdirectory,
34libappmonitor/Makefile.am:39: but option 'subdir-objects' is disabled
35libappmonitor/Makefile.am:39: warning: source file '$(libappmonitor_rpcchanneldir)/glib_stubs.c' is in a subdirectory,
36libappmonitor/Makefile.am:39: but option 'subdir-objects' is disabled
37libappmonitor/Makefile.am:47: warning: source file '$(libappmonitor_rpcchanneldir)/vsockChannel.c' is in a subdirectory,
38libappmonitor/Makefile.am:47: but option 'subdir-objects' is disabled
39libappmonitor/Makefile.am:47: warning: source file '$(libappmonitor_rpcchanneldir)/simpleSocket.c' is in a subdirectory,
40libappmonitor/Makefile.am:47: but option 'subdir-objects' is disabled
41libguestlib/Makefile.am:55: warning: 'CFLAGS' is a user variable, you should not override it;
42libguestlib/Makefile.am:55: use 'AM_CFLAGS' instead
43libvmtools/Makefile.am:65: warning: source file '$(top_srcdir)/lib/stubs/stub-log.c' is in a subdirectory,
44libvmtools/Makefile.am:65: but option 'subdir-objects' is disabled
45tests/testDebug/Makefile.am:44: warning: 'CFLAGS' is a user variable, you should not override it;
46tests/testDebug/Makefile.am:44: use 'AM_CFLAGS' instead
47tests/testPlugin/Makefile.am:44: warning: 'CFLAGS' is a user variable, you should not override it;
48tests/testPlugin/Makefile.am:44: use 'AM_CFLAGS' instead
49vgauth/lib/Makefile.am:29: warning: source file '../common/audit.c' is in a subdirectory,
50vgauth/lib/Makefile.am:29: but option 'subdir-objects' is disabled
51vgauth/lib/Makefile.am:29: warning: source file '../common/certverify.c' is in a subdirectory,
52vgauth/lib/Makefile.am:29: but option 'subdir-objects' is disabled
53vgauth/lib/Makefile.am:29: warning: source file '../common/i18n.c' is in a subdirectory,
54vgauth/lib/Makefile.am:29: but option 'subdir-objects' is disabled
55vgauth/lib/Makefile.am:29: warning: source file '../common/prefs.c' is in a subdirectory,
56vgauth/lib/Makefile.am:29: but option 'subdir-objects' is disabled
57vgauth/lib/Makefile.am:29: warning: source file '../common/usercheck.c' is in a subdirectory,
58vgauth/lib/Makefile.am:29: but option 'subdir-objects' is disabled
59vgauth/lib/Makefile.am:29: warning: source file '../common/VGAuthLog.c' is in a subdirectory,
60vgauth/lib/Makefile.am:29: but option 'subdir-objects' is disabled
61vgauth/lib/Makefile.am:29: warning: source file '../common/VGAuthUtil.c' is in a subdirectory,
62vgauth/lib/Makefile.am:29: but option 'subdir-objects' is disabled
63vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/alias.c' is in a subdirectory,
64vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
65vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/file.c' is in a subdirectory,
66vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
67vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/filePosix.c' is in a subdirectory,
68vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
69vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/netPosix.c' is in a subdirectory,
70vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
71vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/proto.c' is in a subdirectory,
72vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
73vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/random.c' is in a subdirectory,
74vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
75vgauth/service/Makefile.am:34: warning: source file '../serviceImpl/saml-xmlsec1.c' is in a subdirectory,
76vgauth/service/Makefile.am:34: but option 'subdir-objects' is disabled
77vgauth/service/Makefile.am:36: warning: source file '../serviceImpl/saml-xml-security-c.cpp' is in a subdirectory,
78vgauth/service/Makefile.am:36: but option 'subdir-objects' is disabled
79vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/service.c' is in a subdirectory,
80vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
81vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/ticket.c' is in a subdirectory,
82vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
83vgauth/service/Makefile.am:20: warning: source file '../serviceImpl/verify.c' is in a subdirectory,
84vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
85vgauth/service/Makefile.am:20: warning: source file '../common/audit.c' is in a subdirectory,
86vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
87vgauth/service/Makefile.am:20: warning: source file '../common/certverify.c' is in a subdirectory,
88vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
89vgauth/service/Makefile.am:20: warning: source file '../common/i18n.c' is in a subdirectory,
90vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
91vgauth/service/Makefile.am:20: warning: source file '../common/prefs.c' is in a subdirectory,
92vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
93vgauth/service/Makefile.am:20: warning: source file '../common/usercheck.c' is in a subdirectory,
94vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
95vgauth/service/Makefile.am:20: warning: source file '../common/VGAuthLog.c' is in a subdirectory,
96vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
97vgauth/service/Makefile.am:20: warning: source file '../common/VGAuthUtil.c' is in a subdirectory,
98vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
99vgauth/service/Makefile.am:20: warning: source file '../common/vmxlog.c' is in a subdirectory,
100vgauth/service/Makefile.am:20: but option 'subdir-objects' is disabled
101vmblock-fuse/Makefile.am:40: warning: source file '$(top_srcdir)/modules/shared/vmblock/block.c' is in a subdirectory,
102vmblock-fuse/Makefile.am:40: but option 'subdir-objects' is disabled
103vmblock-fuse/Makefile.am:40: warning: source file '$(top_srcdir)/modules/shared/vmblock/stubs.c' is in a subdirectory,
104vmblock-fuse/Makefile.am:40: but option 'subdir-objects' is disabled
105vmhgfs-fuse/Makefile.am:38: warning: source file '$(top_srcdir)/lib/stubs/stub-debug.c' is in a subdirectory,
106vmhgfs-fuse/Makefile.am:38: but option 'subdir-objects' is disabled
107vmhgfs-fuse/Makefile.am:38: warning: source file '$(top_srcdir)/lib/stubs/stub-log.c' is in a subdirectory,
108vmhgfs-fuse/Makefile.am:38: but option 'subdir-objects' is disabled
109vmhgfs-fuse/Makefile.am:38: warning: source file '$(top_srcdir)/lib/stubs/stub-panic.c' is in a subdirectory,
110vmhgfs-fuse/Makefile.am:38: but option 'subdir-objects' is disabled
111osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ ./configure
112checking build system type... aarch64-unknown-linux-gnu
113checking host system type... aarch64-unknown-linux-gnu
114checking for gcc... gcc
115checking whether the C compiler works... yes
116checking for C compiler default output file name... a.out
117checking for suffix of executables...
118checking whether we are cross compiling... no
119checking for suffix of object files... o
120checking whether we are using the GNU C compiler... yes
121checking whether gcc accepts -g... yes
122checking for gcc option to accept ISO C89... none needed
123checking whether gcc understands -c and -o together... yes
124checking how to run the C preprocessor... gcc -E
125checking for X... libraries , headers
126checking for gethostbyname... yes
127checking for connect... yes
128checking for remove... yes
129checking for shmat... yes
130checking for IceConnectionNumber in -lICE... yes
131checking for grep that handles long lines and -e... /usr/bin/grep
132checking for egrep... /usr/bin/grep -E
133checking for ANSI C header files... yes
134checking for sys/types.h... yes
135checking for sys/stat.h... yes
136checking for stdlib.h... yes
137checking for string.h... yes
138checking for memory.h... yes
139checking for strings.h... yes
140checking for inttypes.h... yes
141checking for stdint.h... yes
142checking for unistd.h... yes
143checking valgrind/valgrind.h usability... no
144checking valgrind/valgrind.h presence... no
145checking for valgrind/valgrind.h... no
146checking for a BSD-compatible install... /usr/bin/install -c
147checking whether build environment is sane... yes
148checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
149checking for gawk... gawk
150checking whether make sets $(MAKE)... yes
151checking whether make supports the include directive... yes (GNU style)
152checking whether make supports nested variables... yes
153checking dependency style of gcc... gcc3
154checking how to run the C preprocessor... gcc -E
155checking for gcc... (cached) gcc
156checking whether we are using the GNU C compiler... (cached) yes
157checking whether gcc accepts -g... (cached) yes
158checking for gcc option to accept ISO C89... (cached) none needed
159checking whether gcc understands -c and -o together... (cached) yes
160checking for g++... g++
161checking whether we are using the GNU C++ compiler... yes
162checking whether g++ accepts -g... yes
163checking dependency style of g++... gcc3
164checking for a sed that does not truncate output... /usr/bin/sed
165checking whether ln -s works... yes
166checking how to print strings... printf
167checking for a sed that does not truncate output... (cached) /usr/bin/sed
168checking for fgrep... /usr/bin/grep -F
169checking for ld used by gcc... /usr/bin/ld
170checking if the linker (/usr/bin/ld) is GNU ld... yes
171checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
172checking the name lister (/usr/bin/nm -B) interface... BSD nm
173checking the maximum length of command line arguments... 1572864
174checking how to convert aarch64-unknown-linux-gnu file names to aarch64-unknown-linux-gnu format... func_convert_file_noop
175checking how to convert aarch64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
176checking for /usr/bin/ld option to reload object files... -r
177checking for objdump... objdump
178checking how to recognize dependent libraries... pass_all
179checking for dlltool... no
180checking how to associate runtime and link libraries... printf %s\n
181checking for ar... ar
182checking for archiver @FILE support... @
183checking for strip... strip
184checking for ranlib... ranlib
185checking command to parse /usr/bin/nm -B output from gcc object... ok
186checking for sysroot... no
187checking for a working dd... /usr/bin/dd
188checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
189checking for mt... mt
190checking if mt is a manifest tool... no
191checking for dlfcn.h... yes
192checking for objdir... .libs
193checking if gcc supports -fno-rtti -fno-exceptions... no
194checking for gcc option to produce PIC... -fPIC -DPIC
195checking if gcc PIC flag -fPIC -DPIC works... yes
196checking if gcc static flag -static works... yes
197checking if gcc supports -c -o file.o... yes
198checking if gcc supports -c -o file.o... (cached) yes
199checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
200checking whether -lc should be explicitly linked in... no
201checking dynamic linker characteristics... GNU/Linux ld.so
202checking how to hardcode library paths into programs... immediate
203checking whether stripping libraries is possible... yes
204checking if libtool supports shared libraries... yes
205checking whether to build shared libraries... yes
206checking whether to build static libraries... yes
207checking how to run the C++ preprocessor... g++ -E
208checking for ld used by g++... /usr/bin/ld
209checking if the linker (/usr/bin/ld) is GNU ld... yes
210checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
211checking for g++ option to produce PIC... -fPIC -DPIC
212checking if g++ PIC flag -fPIC -DPIC works... yes
213checking if g++ static flag -static works... yes
214checking if g++ supports -c -o file.o... yes
215checking if g++ supports -c -o file.o... (cached) yes
216checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
217checking dynamic linker characteristics... (cached) GNU/Linux ld.so
218checking how to hardcode library paths into programs... immediate
219checking for pkg-config... pkg-config
220checking libintl.h usability... yes
221checking libintl.h presence... yes
222checking for libintl.h... yes
223checking for libmspack >= 0.0.20040308alpha (via pkg-config)... yes
224checking for glib-2.0 >= 2.34.0 (via pkg-config)... yes
225checking for gmodule-2.0 >= 2.34.0 (via pkg-config)... yes
226checking for gobject-2.0 >= 2.34.0 (via pkg-config)... yes
227checking for gthread-2.0 >= 2.34.0 (via pkg-config)... yes
228checking for glib-genmarshal... yes
229checking for fuse (via pkg-config)... no
230configure: WARNING: Fuse is missing, vmblock-fuse/vmhgfs-fuse will be disabled.
231checking security/pam_appl.h usability... yes
232checking security/pam_appl.h presence... yes
233checking for security/pam_appl.h... yes
234checking for pam_start in -lpam... yes
235checking for BIO_new_file in -lssl... no
236checking for openssl >= 1.0.1 (via pkg-config)... yes
237checking for strlen in -lxml2... yes
238checking xmlsec/xmlsec.h usability... no
239checking xmlsec/xmlsec.h presence... no
240checking for xmlsec/xmlsec.h... no
241checking for xmlsec1-config... /usr/bin/xmlsec1-config
242checking CUnit/CUnit.h usability... no
243checking CUnit/CUnit.h presence... no
244checking for CUnit/CUnit.h... no
245configure: WARNING: CUnit not found, tests won't be compiled.
246checking for XeviQueryVersion in -lXext... yes
247checking for X11/extensions/extutil.h... yes
248checking for XineramaQueryVersion in -lXinerama... yes
249checking for XOpenDevice in -lXi... yes
250checking for XRenderQueryVersion in -lXrender... yes
251checking for XRRQueryVersion in -lXrandr... yes
252checking for XTestQueryExtension in -lXtst... yes
253checking for SmcOpenConnection in -lSM... yes
254checking X11/SM/SMlib.h usability... yes
255checking X11/SM/SMlib.h presence... yes
256checking for X11/SM/SMlib.h... yes
257checking X11/ICE/ICElib.h usability... yes
258checking X11/ICE/ICElib.h presence... yes
259checking for X11/ICE/ICElib.h... yes
260checking for XCompositeQueryExtension in -lXcomposite... yes
261checking X11/extensions/Xcomposite.h usability... yes
262checking X11/extensions/Xcomposite.h presence... yes
263checking for X11/extensions/Xcomposite.h... yes
264checking for gdk-pixbuf-xlib-2.0 >= 2.21.0 (via pkg-config)... yes
265checking for gtk+-3.0 >= 3.0.0 (via pkg-config)... yes
266checking for gtkmm-3.0 >= 3.0.0 (via pkg-config)... yes
267checking for sigc++-2.0 >= 2.5.1 (via pkg-config)... yes
268checking for crypt in -lcrypt... yes
269checking for dlopen... no
270checking for dlopen in -ldl... yes
271checking for ecvt... yes
272checking for fcvt... yes
273checking for mkdtemp... yes
274checking for pthread_mutex_init in -lpthread... yes
275checking for g++... yes
276checking for libtirpc (via pkg-config)... no
277configure: tirpc is needed: no
278configure: building without libtirpc
279checking for rpcgen... /usr/bin/rpcgen
280checking crypt.h usability... yes
281checking crypt.h presence... yes
282checking for crypt.h... yes
283checking for inttypes.h... (cached) yes
284checking for stdint.h... (cached) yes
285checking for stdlib.h... (cached) yes
286checking wchar.h usability... yes
287checking wchar.h presence... yes
288checking for wchar.h... yes
289checking sys/inttypes.h usability... no
290checking sys/inttypes.h presence... no
291checking for sys/inttypes.h... no
292checking sys/io.h usability... no
293checking sys/io.h presence... no
294checking for sys/io.h... no
295checking sys/param.h usability... yes
296checking sys/param.h presence... yes
297checking for sys/param.h... yes
298checking sys/sysinfo.h usability... yes
299checking sys/sysinfo.h presence... yes
300checking for sys/sysinfo.h... yes
301checking for sys/types.h... (cached) yes
302checking for sys/user.h... yes
303checking sys/vfs.h usability... yes
304checking sys/vfs.h presence... yes
305checking for sys/vfs.h... yes
306checking syslimits.h usability... no
307checking syslimits.h presence... no
308checking for syslimits.h... no
309checking unwind.h usability... yes
310checking unwind.h presence... yes
311checking for unwind.h... yes
312checking for wchar.h... (cached) yes
313checking linux/unistd.h usability... yes
314checking linux/unistd.h presence... yes
315checking for linux/unistd.h... yes
316checking for X11/extensions/panoramiXproto.h... yes
317checking for stdbool.h that conforms to C99... yes
318checking for _Bool... yes
319checking for an ANSI C-conforming const... yes
320checking for uid_t in sys/types.h... yes
321checking for inline... inline
322checking for mode_t... yes
323checking for off_t... yes
324checking for pid_t... yes
325checking for size_t... yes
326checking for struct stat.st_rdev... yes
327checking whether time.h and sys/time.h may both be included... yes
328checking whether struct tm is in sys/time.h or time.h... time.h
329checking for working volatile... yes
330checking for GCC flag -Wno-pointer-sign... yes
331checking for GCC flag -Wno-unused-value... yes
332checking for GCC flag -fno-strict-aliasing... yes
333checking for GCC flag -Wno-unknown-pragmas... yes
334checking for GCC flag -Wno-uninitialized... yes
335checking for GCC flag -Wno-deprecated-declarations... yes
336checking for GCC flag -Wno-unused-const-variable... yes
337checking for GCC flag -fvisibility... yes
338checking for GCC flag -Wno-unused-but-set-variable... yes
339checking for doxygen... no
340configure: WARNING: doxygen not found; API documentation will not be generated.
341checking for pkg-config... /usr/bin/pkg-config
342checking pkg-config is at least version 0.9.0... yes
343checking for LIBUDEV... no
344configure: WARNING: Missing libdrm or libudev. The resolutionKMS plugin will search for them at run-time.
345checking that generated files are newer than configure... done
346configure: creating ./config.status
347config.status: creating Makefile
348config.status: creating lib/Makefile
349config.status: creating lib/appUtil/Makefile
350config.status: creating lib/auth/Makefile
351config.status: creating lib/backdoor/Makefile
352config.status: creating lib/asyncsocket/Makefile
353config.status: creating lib/sslDirect/Makefile
354config.status: creating lib/pollGtk/Makefile
355config.status: creating lib/poll/Makefile
356config.status: creating lib/dataMap/Makefile
357config.status: creating lib/hashMap/Makefile
358config.status: creating lib/dict/Makefile
359config.status: creating lib/dynxdr/Makefile
360config.status: creating lib/err/Makefile
361config.status: creating lib/file/Makefile
362config.status: creating lib/foundryMsg/Makefile
363config.status: creating lib/glibUtils/Makefile
364config.status: creating lib/guestApp/Makefile
365config.status: creating lib/guestRpc/Makefile
366config.status: creating lib/hgfs/Makefile
367config.status: creating lib/hgfsBd/Makefile
368config.status: creating lib/hgfsHelper/Makefile
369config.status: creating lib/hgfsServer/Makefile
370config.status: creating lib/hgfsServerManagerGuest/Makefile
371config.status: creating lib/hgfsServerPolicyGuest/Makefile
372config.status: creating lib/hgfsUri/Makefile
373config.status: creating lib/impersonate/Makefile
374config.status: creating lib/lock/Makefile
375config.status: creating lib/message/Makefile
376config.status: creating lib/misc/Makefile
377config.status: creating lib/netUtil/Makefile
378config.status: creating lib/nicInfo/Makefile
379config.status: creating lib/panic/Makefile
380config.status: creating lib/panicDefault/Makefile
381config.status: creating lib/procMgr/Makefile
382config.status: creating lib/rpcChannel/Makefile
383config.status: creating lib/rpcIn/Makefile
384config.status: creating lib/rpcOut/Makefile
385config.status: creating lib/rpcVmx/Makefile
386config.status: creating lib/slashProc/Makefile
387config.status: creating lib/string/Makefile
388config.status: creating lib/stubs/Makefile
389config.status: creating lib/syncDriver/Makefile
390config.status: creating lib/system/Makefile
391config.status: creating lib/unicode/Makefile
392config.status: creating lib/user/Makefile
393config.status: creating lib/vmCheck/Makefile
394config.status: creating lib/vmSignal/Makefile
395config.status: creating lib/wiper/Makefile
396config.status: creating lib/xdg/Makefile
397config.status: creating services/Makefile
398config.status: creating services/vmtoolsd/Makefile
399config.status: creating services/plugins/Makefile
400config.status: creating services/plugins/appInfo/Makefile
401config.status: creating services/plugins/serviceDiscovery/Makefile
402config.status: creating services/plugins/desktopEvents/Makefile
403config.status: creating services/plugins/dndcp/Makefile
404config.status: creating services/plugins/guestInfo/Makefile
405config.status: creating services/plugins/hgfsServer/Makefile
406config.status: creating services/plugins/powerOps/Makefile
407config.status: creating services/plugins/resolutionSet/Makefile
408config.status: creating services/plugins/resolutionKMS/Makefile
409config.status: creating services/plugins/timeSync/Makefile
410config.status: creating services/plugins/vix/Makefile
411config.status: creating services/plugins/vmbackup/Makefile
412config.status: creating services/plugins/deployPkg/Makefile
413config.status: creating vmware-user-suid-wrapper/Makefile
414config.status: creating toolbox/Makefile
415config.status: creating hgfsclient/Makefile
416config.status: creating hgfsmounter/Makefile
417config.status: creating checkvm/Makefile
418config.status: creating rpctool/Makefile
419config.status: creating vgauth/Makefile
420config.status: creating vgauth/lib/Makefile
421config.status: creating namespacetool/Makefile
422config.status: creating vgauth/cli/Makefile
423config.status: creating vgauth/test/Makefile
424config.status: creating vgauth/service/Makefile
425config.status: creating libguestlib/Makefile
426config.status: creating libguestlib/vmguestlib.pc
427config.status: creating libDeployPkg/Makefile
428config.status: creating libDeployPkg/libDeployPkg.pc
429config.status: creating libhgfs/Makefile
430config.status: creating libvmtools/Makefile
431config.status: creating xferlogs/Makefile
432config.status: creating modules/Makefile
433config.status: creating vmblock-fuse/Makefile
434config.status: creating vmhgfs-fuse/Makefile
435config.status: creating vmblockmounter/Makefile
436config.status: creating tests/Makefile
437config.status: creating tests/vmrpcdbg/Makefile
438config.status: creating tests/testDebug/Makefile
439config.status: creating tests/testPlugin/Makefile
440config.status: creating tests/testVmblock/Makefile
441config.status: creating docs/Makefile
442config.status: creating docs/api/Makefile
443config.status: creating scripts/Makefile
444config.status: creating scripts/build/rpcgen_wrapper.sh
445config.status: creating udev/Makefile
446config.status: creating libappmonitor/Makefile
447config.status: creating libappmonitor/appmonitor.pc
448config.status: executing depfiles commands
449config.status: executing libtool commands
450osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$

続いてコンパイル。なぜか、ただのmakeにもsudoしろ、とあるけど、まぁ、マニュアルにそう書いてあるからなぁ・・・

「sudo make」「sudo make install」「sudo ldconfig」

1osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ sudo make
2[sudo] password for osakanataro:
3Making all in lib
4make[1]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/lib'
5Making all in guestRpc
6make[2]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/lib/guestRpc'
7/bin/bash ../../scripts/build/rpcgen_wrapper.sh lib/guestRpc/nicinfo.x nicinfo.h
8/bin/bash ../../scripts/build/rpcgen_wrapper.sh lib/guestRpc/nicinfo.x nicinfo_xdr.c
9/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DPACKAGE_NAME=\"open-vm-tools\" -DPACKAGE_TARNAME=\"open-vm-tools\" -DPACKAGE_VERSION=\"11.1.5\" -DPACKAGE_STRING=\"open-vm-tools\ 11.1.5\" -DPACKAGE_BUGREPORT=\"open-vm-tools-devel@lists.sourceforge.net\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DPACKAGE=\"open-vm-tools\" -DVERSION=\"11.1.5\" -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_X11_SM_SMLIB_H=1 -DHAVE_X11_ICE_ICELIB_H=1 -DHAVE_X11_EXTENSIONS_XCOMPOSITE_H=1 -DHAVE_ECVT=1 -DHAVE_FCVT=1 -DNO_DNET=1 -DHAVE_CRYPT_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_WCHAR_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_SYS_SYSINFO_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_USER_H=1 -DHAVE_SYS_VFS_H=1 -DHAVE_UNWIND_H=1 -DHAVE__BOOL=1 -DHAVE_STDBOOL_H=1 -DHAVE_STRUCT_STAT_ST_RDEV=1 -DTIME_WITH_SYS_TIME=1 -I.   -I/home/osakanataro/open-vm-tools/open-vm-tools/lib/include -I/home/osakanataro/open-vm-tools/open-vm-tools/lib/include  -DUSING_AUTOCONF=1 -DOPEN_VM_TOOLS -DUSE_VGAUTH  -DNO_ICU -DVMX86_TOOLS -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_DEFAULT_SOURCE -DENABLE_RESOLUTIONKMS  -g -O2 -Wall -Werror -Wno-pointer-sign -Wno-unused-value -fno-strict-aliasing -Wno-unknown-pragmas -Wno-uninitialized -Wno-deprecated-declarations -Wno-unused-const-variable -Wno-unused-but-set-variable -Wno-unused -MT libGuestRpc_la-nicinfo_xdr.lo -MD -MP -MF .deps/libGuestRpc_la-nicinfo_xdr.Tpo -c -o libGuestRpc_la-nicinfo_xdr.lo `test -f 'nicinfo_xdr.c' || echo './'`nicinfo_xdr.c
10<略>
11Making all in docs
12make[1]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/docs'
13make[2]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/docs'
14make[2]: Nothing to be done for 'all-am'.
15make[2]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools/docs'
16make[1]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools/docs'
17Making all in udev
18make[1]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/udev'
19make[1]: Nothing to be done for 'all'.
20make[1]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools/udev'
21make[1]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools'
22make[1]: Nothing to be done for 'all-am'.
23make[1]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools'
24osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$
1osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ sudo make install
2[sudo] password for osakanataro:
3Making install in lib
4make[1]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/lib'
5Making install in guestRpc
6make[2]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/lib/guestRpc'
7make[3]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools/lib/guestRpc'
8make[3]: Nothing to be done for 'install-exec-am'.
9make[3]: Nothing to be done for 'install-data-am'.
10<略>
11/usr/bin/install -c -m 644 ./99-vmware-scsi-udev.rules /lib/udev/rules.d
12make[2]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools/udev'
13make[1]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools/udev'
14make[1]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools'
15make[2]: Entering directory '/home/osakanataro/open-vm-tools/open-vm-tools'
16make[2]: Nothing to be done for 'install-exec-am'.
17/usr/bin/install -c -d /etc/vmware-tools/
18/usr/bin/install -c ./tools.conf /etc/vmware-tools/tools.conf.example
19make[2]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools'
20make[1]: Leaving directory '/home/osakanataro/open-vm-tools/open-vm-tools'
21osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$
1osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ sudo ldconfig
2osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$

で、 /etc/systemd/system/vmtoolsd.service としてopen-vm-tools 起動用ファイルを置く

1osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ sudo cat > /etc/systemd/system/vmtoolsd.service << EOF
2> [Unit]
3> Description=
4> Description=Open VM Tools
5> After=
6> After=network-online.target
7> [Service]
8> ExecStart=
9> ExecStart=/usr/local/bin/vmtoolsd
10> Restart=always
11> RestartSec=1sec
12> [Install]
13> WantedBy=multi-user.target
14> EOF
15-bash: /etc/systemd/system/vmtoolsd.service: Permission denied
16osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$

おや?なぜかうまくいかない。

viでファイルを作成する方は成功した。

1osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ sudo vi /etc/systemd/system/vmtoolsd.service
2osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ cat /etc/systemd/system/vmtoolsd.service
3[Unit]
4Description=
5Description=Open VM Tools
6After=
7After=network-online.target
8[Service]
9ExecStart=
10ExecStart=/usr/local/bin/vmtoolsd
11Restart=always
12RestartSec=1sec
13[Install]
14WantedBy=multi-user.target
15osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$

「sudo systemctl enable vmtoolsd」で起動時にopen-vm-toolsが起動されるように設定し、手動で起動することを確認

1osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ sudo systemctl enable vmtoolsd
2osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ systemctl start vmtoolsd
3==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
4Authentication is required to start 'vmtoolsd.service'.
5Authenticating as: osakanataro
6Password:
7osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ sudo systemctl start vmtoolsd
8osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$ systemctl status vmtoolsd
9● vmtoolsd.service - Open VM Tools
10     Loaded: loaded (/etc/systemd/system/vmtoolsd.service; enabled; vendor preset: enabled)
11     Active: active (running) since Thu 2020-10-08 03:49:27 UTC; 6s ago
12   Main PID: 73818 (vmtoolsd)
13      Tasks: 3 (limit: 2234)
14     Memory: 1.3M
15     CGroup: /system.slice/vmtoolsd.service
16             mq73818 /usr/local/bin/vmtoolsd
17 
18Oct 08 03:49:27 ubuntu-arm systemd[1]: Started Open VM Tools.
19osakanataro@ubuntu-arm:~/open-vm-tools/open-vm-tools$

管理画面上でもvmware-toolsの起動を確認。

microSD無しで起動する方法

最新のラズパイ4のEEPROMではUSBブート有効になってる(Releasenoteの2020-09-03)し、ptftのUEFIもv1.17で「Enable direct USB boot」とあるのでできるはず、ということでチャレンジ。

最初、どうやってもUSBメモリから起動するような雰囲気ないなぁ、と思っていたら、EEPROMの設定にあるBOOT_ORDERが「0x1」(microSDのみ)となっているためと判明。

最新のBOOT_ORDERデフォルトは「0xf41」に変わっていて、USBメモリ(0x4)とmicroSD(0x1)をチャンレジして、起動しなかったら再チャレンジループ(0xf)ということになっている。

なので、ラズパイOS上で「sudo rpi-eeprom-edit」で「BOOT_ORDER=0xf41」に変更して保存し再起動して、反映されていることを確認(sudo rpi-eeprom-config)。

その後、ESXi ARMがインストールされているUSBメモリの4つに分かれているパーテーションのうち1個目のパーテーション内に、起動用microSD内のファイルを全部コピーすればOKです。

コピーが完了したESXi ARMインストール USBメモリの1個目パーテーションの中身はこんな感じになっています。

1root@ubuntuserver:# fdisk -l /dev/sdb
2GPT PMBR size mismatch (30719966 != 30719999) will be corrected by w(rite).
3ディスク /dev/sdb: 14.7 GiB, 15728640000 バイト, 30720000 セクタ
4単位: セクタ (1 * 512 = 512 バイト)
5セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
6I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
7ディスクラベルのタイプ: gpt
8ディスク識別子: F2A67F1C-5EA4-4861-9CDD-EC9811D6DC48
9 
10デバイス   開始位置 最後から   セクタ サイズ タイプ
11/dev/sdb1        64   204863   204800   100M EFI システム
12/dev/sdb5    208896  2306047  2097152     1G Microsoft 基本データ
13/dev/sdb6   2308096  4405247  2097152     1G Microsoft 基本データ
14/dev/sdb7   4407296 30719966 26312671  12.6G 不明
15root@ubuntuserver:~# mount /dev/sdb1 /mnt
16root@ubuntuserver:~# cd /mnt
17root@ubuntuserver:/mnt# ls /mnt
18COPYING.linux           bcm2708-rpi-b-rev1.dtb  bcm2710-rpi-2-b.dtb       bootcode.bin  fixup4x.dat   start4.elf    start_x.elf
19EFI                     bcm2708-rpi-b.dtb       bcm2710-rpi-3-b-plus.dtb  config.txt    fixup_cd.dat  start4cd.elf
20LICENCE.broadcom        bcm2708-rpi-cm.dtb      bcm2710-rpi-3-b.dtb       fixup.dat     fixup_db.dat  start4db.elf
21RPI_EFI.fd              bcm2708-rpi-zero-w.dtb  bcm2710-rpi-cm3.dtb       fixup4.dat    fixup_x.dat   start4x.elf
22Readme.md               bcm2708-rpi-zero.dtb    bcm2711-rpi-4-b.dtb       fixup4cd.dat  overlays      start_cd.elf
23bcm2708-rpi-b-plus.dtb  bcm2709-rpi-2-b.dtb     bcm2711-rpi-cm4.dtb       fixup4db.dat  start.elf     start_db.elf
24root@ubuntuserver:/mnt# ls /mnt/EFI/*
25/mnt/EFI/BOOT:
26BOOTAA64.EFI
27 
28/mnt/EFI/VMware:
29mboot64.efi  safeboot64.efi
30root@ubuntuserver:/mnt#

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Statcounter