¿Cómo verifico los permisos de archivos efectivos (incluidas las ACL) / accesibilidad para un archivo determinado y un usuario determinado (incluidas las cuentas de servicio / sistema) sin verificar la ruta completa manualmente?
Ejemplo: supongamos que un usuario joe y el archivo /long/path/to/file.txt. Incluso si file.txt se modificó a 777, joe todavía debe poder acceder a / long / y luego / long / path / y luego / long / path / to / before. Si joe no tiene al menos acceso de lectura a todas las carpetas en la ruta, no puede acceder (leer / escribir / ejecutar) el archivo. Por lo tanto, los permisos efectivos para él (como usuario "world / all") son 0 y no puede acceder al archivo.
Alternativamente: ¿cómo obtengo una lista de los permisos (incluidas las ACL) de todos los usuarios (incluido el servicio / cuentas del sistema) para un archivo determinado?
Una aplicación o un script de bash también son bienvenidos.
Una pregunta similar con un enfoque ligeramente diferente ya se ha hecho en Unix & Linux: Cómo verificar si un usuario ¿Puede acceder a un archivo dado?