SergeySokolov
Contributor
Contributor

ESX 4, Invalid State on some guests

One day some guests VM become "Invalid" State but some OK.

Possible storage error but nothing in logs.

Trying to recovery was unsuccessful. I can't read *.vmx and *-flat.vmdk files:

# cat vm-host2.vmx

cat: vm-host2.vmx: Invalid argument

# mkdir 123

# cp vm-host2-flat.vmdk 123

cp: cannot open `vm-host2-flat.vmdk' for reading: Invalid argument

# strace cat vm-host2.vmx

execve("/bin/cat", , ) = 0

brk(0) = 0x1ff74000

mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ac2d44b1000

uname({sys="Linux", node="indium.rdtex.msk.ru", ...}) = 0

access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)

open("/etc/ld.so.cache", O_RDONLY) = 3

fstat(3, {st_mode=S_IFREG|0644, st_size=38664, ...}) = 0

mmap(NULL, 38664, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2ac2d44b2000

close(3) = 0

open("/lib64/libc.so.6", O_RDONLY) = 3

read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\332a\263=\0\0\0"..., 832) = 832

fstat(3, {st_mode=S_IFREG|0755, st_size=1713160, ...}) = 0

mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ac2d44bc000

mmap(0x3db3600000, 3494168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3db3600000

mprotect(0x3db374c000, 2097152, PROT_NONE) = 0

mmap(0x3db394c000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14c000) = 0x3db394c000

mmap(0x3db3951000, 16664, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3db3951000

close(3) = 0

mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ac2d44bd000

arch_prctl(ARCH_SET_FS, 0x2ac2d44bd250) = 0

mprotect(0x3db394c000, 16384, PROT_READ) = 0

mprotect(0x3db341b000, 4096, PROT_READ) = 0

munmap(0x2ac2d44b2000, 38664) = 0

brk(0) = 0x1ff74000

brk(0x1ff95000) = 0x1ff95000

open("/usr/lib/locale/locale-archive", O_RDONLY) = 3

fstat(3, {st_mode=S_IFREG|0644, st_size=53870032, ...}) = 0

mmap(NULL, 53870032, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2ac2d44be000

close(3) = 0

fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0

open("vm-host2.vmx", O_RDONLY) = -1 EINVAL (Invalid argument)

write(2, "cat: ", 5cat: ) = 5

write(2, "vm-host2.vmx", 12vm-host2.vmx) = 12

open("/usr/share/locale/locale.alias", O_RDONLY) = 3

fstat(3, {st_mode=S_IFREG|0644, st_size=2528, ...}) = 0

mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2ac2d781e000

read(3, "# Locale name alias data base.\n#"..., 4096) = 2528

read(3, "", 4096) = 0

close(3) = 0

munmap(0x2ac2d781e000, 4096) = 0

open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)

open("/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)

open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)

open("/usr/share/locale/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)

open("/usr/share/locale/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)

open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)

write(2, ": Invalid argument", 18: Invalid argument) = 18

write(2, "\n", 1

) = 1

close(1) = 0

exit_group(1) = ?

#

Is it possible to recovery VM's?

0 Kudos
3 Replies
SergeySokolov
Contributor
Contributor

Any ideas?

0 Kudos
mlubinski
Expert
Expert

If vmx file is broken, and you don't have any backup, then I guess there is no way to restore such VM. If vmdk files are correct, you can try to restore corrupted VMX file

restore VMX






[I]If you found this or any other answer useful please consider the use of the Helpful or correct buttons to award points[/I]

[I]If you found this or any other answer useful please consider the use of the Helpful or correct buttons to award points[/I]
0 Kudos
SergeySokolov
Contributor
Contributor

I don't know if they broken or not. Error when I try to read and copy. No way to check VMFS?

0 Kudos