Как отладить ошибки "Отказано в доступе" в Linux (lstat() = -1 EACCES)
Есть ли способ отладки, почему я получаю
lstat("/path/to/file", 0x...) = -1 EACCES (разрешение отклонено)
ошибка при доступе к файлу / каталогу? точно ли это из-за проблем с selinux, или из-за разрешения пользователя / группы, или из-за NFS, или из-за ACL, которые могут войти в игру?
У меня были правильные права доступа к каталогу для пользователя, и я смог создать файл в этом каталоге после входа в систему как пользователь. Однако, когда PHP работает в области Apache с тем же пользователем и группой, он не может создать файл.
Я понимаю, что Apache использует suid для перехода от "root" к требуемому пользователю, но все же, когда PHP выполняется под Apache, файл не создается. Кроме того, PHP выводит правильные и ожидаемые реальные и эффективные идентификаторы пользователя (вместо root).
Для тех, кто заинтересован, файл / path / to / находится на монтировании NFSv4, но я бы хотел точно указать, по каким причинам в этом отказано.
Было бы возможно узнать!?