After spending the last two days upgrading a lot of ESXi servers on the last one I was tired already so I didn't back up its boot drive.
I started the upgrade from vCenter, staged it, pre-checked remediation, remediated--green checkmarks all around. When the server came back on though, it wasn't able to boot from the drive. It seems the bootloader got lost or something. I enabled BIOS booting (it was on EFI before) to see if it picked it up but still didn't boot.
I checked the drive on my computer and I got this:
bash-3.2# diskutil list
/dev/disk4 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *15.8 GB disk4
1: EFI BOOT 104.9 MB disk4s1
2: Microsoft Basic Data BOOTBANK1 1.1 GB disk4s5
3: Microsoft Basic Data BOOTBANK2 1.1 GB disk4s6
4: 4EB2EA39-7855-4790-A79E-FAE495E21F8D 13.5 GB disk4s7
And with this info I found online it seems the data should be there either in diskXs5 or diskXs6. I also dded an image just in case:
bash-3.2# dd if=/dev/disk4 of=./hyperserver1.img bs=4096
3855360+0 records in
3855360+0 records out
15791554560 bytes transferred in 1292.042925 secs (12222159 bytes/sec)
Could I just reinstall ESXi from scratch so I get a drive with a good bootloader and then copy BOOTBANK1 & BOOTBANK2 to it or is there some check that would let only ESXi write to it? From a Mac, ownership information just says _unknown so I'm not exactly sure how --if-- I can set it back:
bash-3.2# ls -l
total 330624
drwxrwxrwx 1 _unknown _unknown 32768 Jun 14 11:19 .Spotlight-V100
drwxrwxrwx 1 _unknown _unknown 32768 Jun 14 11:19 .fseventsd
drwxrwxrwx 1 _unknown _unknown 32768 Jun 14 2020 System Volume Information
-rwxrwxrwx 1 _unknown _unknown 135334 Jun 14 2020 b.b00
-rwxrwxrwx 1 _unknown _unknown 197255 Jun 14 2020 bnxtnet.v00
-rwxrwxrwx 1 _unknown _unknown 93512 Jun 14 2020 bnxtroce.v00
-rwxrwxrwx 1 _unknown _unknown 1500 Jun 14 2020 boot.cfg
-rwxrwxrwx 1 _unknown _unknown 600424 Jun 14 2020 brcmfcoe.v00
-rwxrwxrwx 1 _unknown _unknown 32244 Jun 14 2020 brcmnvme.v00
...
If I can't recover, would the data on the disks be admitted back to the vSAN cluster if the host information is a "new" host?
Thanks for your help!
So… This is awkward…
I tried what I was set to do with the new drive but it did not work. So, defeated I flashed a new drive back to 6.7.0u3 and when it was booting up I got some page allocation error. I searched a little and found a result that basically said to got back to BIOS boot. I had enabled BIOS boot but I had not forced it, I figured if it fails to pick up the EFI bootloaded it'll fall back to the BIOS bootloader. Not quite.
I plugged back in the original drive that I had put aside, this time I made sure EFI was completely off and it booted on ESXi 7! Build 15843807 to be exact. If there's a new one already, avoid this one. It must have some bug.
Have a good weekend! :smileygrin:
UPDATE
I remember rsync can copy attributes when archiving!
It showed me a little error but it mentioned no files, I guess it was something related to macOS' resource fork files that I forgot it would write. Just to be safe I compared the original files versus the copied ones on a spreadsheet and they match perfectly. I'm still nervous to continue though. I'll wait a little more, I can't afford to lose vSAN.
So… This is awkward…
I tried what I was set to do with the new drive but it did not work. So, defeated I flashed a new drive back to 6.7.0u3 and when it was booting up I got some page allocation error. I searched a little and found a result that basically said to got back to BIOS boot. I had enabled BIOS boot but I had not forced it, I figured if it fails to pick up the EFI bootloaded it'll fall back to the BIOS bootloader. Not quite.
I plugged back in the original drive that I had put aside, this time I made sure EFI was completely off and it booted on ESXi 7! Build 15843807 to be exact. If there's a new one already, avoid this one. It must have some bug.
Have a good weekend! :smileygrin: