Понадобилось помониторить ошибку при открытии файла на NFS шаре c сервера на FreeBSD (версия 10.1 Release). Суть проблемы - Windows-клиент NFS из пакета Services for UNIX не хочет работать со включенной блокировкой, любая Windows программа при открытии или создании файла с NFS-шары пишет ,что файл заблокирован другим процессом (хотя пустые файлы создаются), а если шару монтировать с -o nolock, то всё в порядке, файлы открываются. Но мне нужна работающая блокировка. NekoDrive работает слишком медленно, ~ в 2.5 раза. Включил режим отладки, в rc.conf так:
Код: Выделить всё
nfs_server_enable="YES"
mountd_enable="YES"
mountd_flag="-r -n -d -o"
rpcbind_enable="YES"
rpc_lockd_enable="YES"
rpc_statd_enable="YES"
rpc_lockd_flags="-d 2"
rpc_statd_flags="-d"
В логе при включении rpc_lockd_flags="-d 2" появляется что NLM: local NSM state is 39 и всё. В Wireshark'е по крайней мере видно, что в ответ на запрос блокировки приходит ответ NLM_DENIED, но это малоинформативно. А почему в логе ничего нет, не очень понятно. Ткните плиз, как увидеть отладочный вывод этого lockd, и почему в логе появляется сообщение local NSM state, хотя в исходниках rpc.lockd этого сообщения не находится. Получается в ядре есть другой NLM? зачем тогда он реагирует на ключ отладки rpc.lockd?