Что означает код errno 71 (EREMOTE) в macOS?

 
Также может означать:
КонстантаТипОС
ERROR_REQ_NOT_ACCEPОшибка WindowsWindows
EPROTOerrnoLinux
EPROTOerrnoSolaris
REF_UNKNOWN_LOGON_SESSIONКод BSODWindows
Предыдущий Следующий
EPROTO EPROTO

EREMOTE

EREMOTE в Darwin

В Darwin значение 71 (EREMOTE) означает: слишком много удалённых уровней в пути Darwin. Обход пути в устаревшей удалённой файловой системе превысил границу реализации, представленную он.

Что зафиксировать

СведенияНа какой вопрос отвечают
Компоненты пути, цепочка монтирований, состояние NFS или automount, идентификаторы vnode и системный вызов разрешения пути.Связывают ошибку с конкретным действующим объектом API, а не только с переведённым сообщением.
Darwin errno и версия SDK/XNU.Показывают, возникла ли ошибка в ABI вызывающей стороны, оболочке или поставщике.
Результат первого системного вызова или ioctl, а также процесс, поток и экземпляр объекта.Сохраняет errno до его перезаписи.
Контрольный объект той же сборки macOS.Даёт контрольное сравнение на той же платформе.

Контрольная проверка

  1. Разрешите целевой объект через прямое монтирование без вложенного удалённого перенаправления. При анализе удалённого пути не меняйте двоичный файл, ABI заголовков и поставщика.
  2. Немедленно сохраните errno и сравните связанное возвращаемое значение. Запишите, достигает ли проверка удалённого пути той же границы системного вызова или среды выполнения, что и исходная ошибка.
  3. Повторите тест с одним контролируемым объектом, сохранив идентификатор и песочницу без изменений. Если errno изменился после теста, анализ перешёл к новой границе, а не к другой формулировке прежней ошибки.

Исправление

Упростите или исправьте топологию монтирований и путей и не сохраняйте пути, проходящие через устаревшие удалённые уровни.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.