VMware Cloud Community
ryusoma
Contributor
Contributor

ESXi 5.1U1 upgrade failure - OSError: [Errno 39] Directory not empty

Hello all-

just attempted to update my ESXi server from 5.1 799733 to 5.1U1 1065491.  During the upgrade the process hangs at 24% completion with the error message as above:

OSError: [Errno 39] Directory not empty: '/vmfs/volumes/3934f7e6-f070467f-afd0-f0ef312248d9/state.7173326'


I have retried a second time with the same result.  Is there any workaround?  Or can I perform a clean install and just import the VMs from the datastores without any problems?

26 Replies
vHaridas
Expert
Expert

Hi

see this KB, this will help you.

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=200716...

Thanks,

Hari

Please consider awarding points for "Correct" or "Helpful" replies. Thanks....!!! https://vprhlabs.blogspot.in/
Reply
0 Kudos
mattfrailey
Contributor
Contributor

Confirmed that this article does work to fix the above error.  Ran into the same issue upgrading single host from 5.0 to 5.5.  Just change the path from /bootbank to /vmfs/volumes as displayed in the error code on the screen.  You can safely reboot the host when the error comes up, as it will revert back to the previously installed version of vSphere.

Reply
0 Kudos
sc_2111
Enthusiast
Enthusiast

Hello ,

I'm having the same issue.

Upgrading 5.0 to 5.1U1 from iso image .

Ran into the same error but there's no vua.log file in the /var/log/VMware folder

Changing dir to /bootbank brought me to a DIR where I can only find a state.tgz file

Any help is appreciated

thanks

*EDIT

I found it lately in /altbootbank

thanks

Messaggio modificato da Stefano

Reply
0 Kudos
firstpoint
Contributor
Contributor

do you found the solution?

Reply
0 Kudos
abhiworld4u
Contributor
Contributor

I exactly have the same issue with the same error number when I try to upgrade from 5.0 to 5.5.

As per KB, we need to check vua.log file which is not existing!

Any help is appreciated.

Reply
0 Kudos
mattfrailey
Contributor
Contributor

The error screen will tell you the location of the state.XXXX file rather than looking for the vua.log file.  Then follow the KB article posted by vHaridas

Reply
0 Kudos
abhiworld4u
Contributor
Contributor

Here is the simple fix that you can do:

Move the local.tgz (in /altbootbank/state.xxxxx/) one directory higher.

Explanation:

ESXi has 2 memory banks that stores system image, they call it bootbank and altbootbank. When you upgrade, it will use altbootbank so that bootbank is preserved as a failsafe option. I moved local.tgz in /altbootbank/state.xxxxx/ one directory above and emptied the directory, upgrade worked on the next try.


Also, lets say for some reason upgrade (under /altbootbank) has some issue and gets messed up, then it will try the config in bootbank and comes up fine. local.tgz inside state.tgz holds the ESXi configuration. This can also be used to restore ESXi config when needed manually.

After upgrade:

From below details, you can see that current it is running out of /bootbank/state.tgz

/vmfs/volumes/xxxxxxxxxxxxxxxxxxxxxxx # date

Wed Apr  9 11:58:04 UTC 2014

/vmfs/volumes/yyyyyyyyyyyyyyyyyyyyyyyy # pwd

/bootbank

/vmfs/volumes/yyyyyyyyyyyyyyyyyyyyyyyy # ls -la | grep state

-rwx------    1 root root         21686 Apr  9 11:41 state.tgz

/vmfs/volumes/yyyyyyyyyyyyyyyyyyyyyyy # cd /altbootbank/

/vmfs/volumes/xxxxxxxxxxxxxxxxxxxxxxxxx # ls -la | grep state

-rwx------    1 root root         17965 Apr  8 22:56 state.tgz

Thank you,

Abhilash Shashidhara

cjtwestwood
Contributor
Contributor

I am attempting an ESXi upgrade from 5.1 to 5.1 U2.  However, after attempting to upgrade from a CD, I got the error specified at the top of the thread.  I looked in /altbootbank and found two state.XXXXXX directories both containing local.tgz.  I moved the local.tgz down a directory from the state.XXXXXX directory referenced in my error.  However, after rebooting and re-running the installer, the installer doesn't find my installation and wants to overwrite the ESX partition.  I rebooted again and moved local.tgz back to its original location and fired off the installer again but it still doesn't recognize my installation.

The ESXi host does still boot fine.  Anyone have any thoughts on how I can upgrade this host?  Any and all feedback is appreciated.

Thank you,

Christopher Thompson

Reply
0 Kudos
ndavey1
Contributor
Contributor

@Christopher,

Did you manage to upgrade your host.  I have exactly the same problem that after moving the local.tgz it doesn't find the installation and wants to do a fresh install.  Please help.

Thanks.

Reply
0 Kudos
firstpoint
Contributor
Contributor

At the end I redid a new installation

Andrea Scarabelli

Reply
0 Kudos
cjtwestwood
Contributor
Contributor

No, I haven't resolved this yet.  I am planning to rebuild the affected hosts when time permits.  If you or anyone else finds a resolution, please let me know.

Reply
0 Kudos
herbert_busin
Contributor
Contributor

I all....

I had the same problems: error 39 (folder not empty at 24%) or incompatibility vib update.

I need to update esxi 5.1 to 5.5 U1, when i try remove local.tgz next boot from cd the install don't show me upgrade host and preserve vmfs.

I try many many solutions but

The only one solution for me is:

1- esxcli command VMware-ESXi-5.1.0-Update1-1065491-HP-5.61.2-Sep2013-depot.zip

2-esxcli command update-from-esxi5.1-5.1_update02.zip

3-boot from cd with iso-VMware ESXi-5.5.0-1331820-HP-5.72.27-Feb2014.iso

and finally depot or update-from-esxi5.5-5.5_update01.zip or boot from cd with

VMware-ESXi-5.5.0-Update1-1746018-HP-5.74.27-Jun2014.iso.

I update 3 host in this way and now all run ...

I hope this can help.

by

       Herbert

MrTScott
Contributor
Contributor

I ran into the same issue, the upgrade option was no longer available after emptying the stale.####### directories.  I kept trying different things until I finally figured out a workaround.  Copy the contents of bootbank to altbootbank and then try the upgrade again.  The upgrade option should be available again.  Hope this helps.

AaronMac
Contributor
Contributor

I'm glad I found this thread! I ran into this problem today upgrading a host from ESXi 5.5 Update 1 to 5.5 Update 2. I did a quick search and found that KB article from VMware that says how to move the local.tgz file (I found it in altbootbank) but then as others have reported here when I rebooted and attempted to upgrade again it only gave me the option to wipe out my data and install fresh. I always install ESXi to a flash drive so that didn't really bother me as I wouldn't lose my VMs but that particular host has several network connections on different VLAN's and I didn't want to try and rebuild it from memory so I held off on the ugprade thinking there must be a work around. I will try the suggestion about moving files from bootbank to altbootbank and will try to upgrade again next week and will report back.

Reply
0 Kudos
Ram8
Enthusiast
Enthusiast

Hi,

Please check the /tmp , /var and /cache if the partitions are full. Delete any unwanted files.

Thanks.

Reply
0 Kudos
AaronMac
Contributor
Contributor

What do you mean by unwanted files? I assume there will be open files in some or all of those folders while the host is running.

Reply
0 Kudos
herbert_busin
Contributor
Contributor

Have you try to esxcli command update from zip file ?

This is secur way..

Reply
0 Kudos
AaronMac
Contributor
Contributor

No I have always done the upgrades by booting from the install CD, will have to try using CLI method next time. I decided to just do a fresh install of ESXi on that host since I always keep my VM's on a different datastore from ESXi so I didn't lose anything. I figured it would be better to start fresh so I don't have more problems in the future.

On a side note I think this happened because this particular host is a Gen8 HP server and I encountered this bug:http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=208561...

Reply
0 Kudos
herbert_busin
Contributor
Contributor

Hi,

good idea... but try next time.

I have hp dl380 gen8 as you and mix solution install cd or esxli command is the best solution in this case, all ever downloaded from hp or vmware.

bye

Good job.

Reply
0 Kudos