Я пытаюсь протестировать несколько тысяч экспортов файловых серверов NFSv3 на сотни серверов. Многое может пойти не так, от конфигурации сервера до подключения к сети. Самый полный тест, который я могу сделать, это попытаться смонтировать его на клиенте.
Я могу это сделать, но на самом деле монтирование всего больше, чем мне нужно, занимает состояние и ресурсы, выходящие за рамки выполнения программы, и имеет тенденцию немного нагружать клиента. Я не раз сталкивался с проблемами, которые, кажется, указывают на то, что что-то на клиенте было недовольно и мешало монтированию. (Без каких-либо изменений, кроме перезагрузки клиента, монтирование снова заработало).
Вместо этого я надеялся написать что-то более легкое, которое просто действовало бы как клиент NFS и смотрело бы, успешно ли вызов NFS MOUNT вернул дескриптор файла. Если это так, мой сервер работает, и мой клиент авторизован. Но я не нашел простого кода для этого.
Когда я смотрю на Исходный код Linux, он выглядит так: по крайней мере, часть кода связана с тем, что это модуль Linux, что сбивает с толку.
Есть ли какой-то код пользовательского пространства, который просто запрашивает дескриптор файла NFS через вызов монтирования, который я мог бы удалить? (Или есть какая-то причина, по которой моя идея не сработает)? Это все AUTH_SYS, поэтому мне не нужно получать билеты kerberos или что-то еще.