В системе Solaris 10 я получаю ошибки от lsof
:
can't read vnode at 0x7d900000000
can't read vnode at 0x7b
Но у меня такая же lsof
двоичный файл в другом аналогичном поле Solaris 10, где он не дает такой же ошибки.
В другом ящике lsof
успешно отображает информацию об открытых файлах.
Кто-нибудь еще сталкивался с такой же проблемой и смог ее решить?
Фрагмент полного вывода:
$ lsof
lsof: WARNING: compiled for Solaris release 5.9; this is 5.10.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
(unknown) 1 root cwd can't read vnode at 0x7d900000000
(unknown) 1 root rtd can't read vnode at 0x7b
(unknown) 9 root cwd can't read vnode at 0x7d900000000
....
Выход isainfo -kv
и file
:
$ isainfo -kv
64-bit sparcv9 kernel modules
$ file `which lsof`
/usr/local/bin/lsof: ELF 32-bit MSB executable SPARC Version 1, dynamically linked, stripped
Выход uname -a
на сервере, где работает lsof:
$ uname -a
SunOS server009 5.10 Generic_150400-26 sun4u sparc SUNW,SPARC-Enterprise
Выход uname -a
на сервере, где lsof не работает:
$ uname -a
SunOS server043 5.10 Generic_150400-12 sun4u sparc SUNW,Sun-Fire-V890
lsof: ВНИМАНИЕ: скомпилировано для Solaris версии 5.9; это 5.10.
Это подозрительно похоже на lsof
сообщает вам, что он сломан, и вам нужно восстановить lsof
двоичный файл из исходного кода (или, другими словами: обновление) для надежной работы с вашей текущей версией Solaris.
Если это не вариант, этот ответ может помочь вам обойти проблему.