Tengo 2 usuarios en mi servidor. Uno con sudo accede a otro sin. ¿Cómo puedo dar acceso a los registros de nginx?
/var/log/nginx/error.log
¿A otro usuario sin sudopermiso para usar cat /var/log/nginx/error.log? ¿Puedo crear algo así como un enlace simbólico para iniciar sesión en su directorio / home / username?
Entonces mi pregunta es: ¿cómo puede un usuario sin sudopermiso verificar los registros de nginx?

sudoacceso a que? No está claro a partir de su pregunta. Sé que algunas personas hacen que 'sudo access' signifique 'acceso raíz', pero eso no es técnicamente exacto. Por favor ellaborate.sudopara darle los permisos en realidad, dependiendo de cómo quieras configurarlo.setfacl -m 'user:someuser:r' /var/log/nginx/error.log. No estoy seguro de cómo funcionaría eso con logrotate.sudoacceso a cat / tail / etc, el registro es probablemente una mejor opción de todos modos. "Respuestas:
Por ejemplo, así:
chmod 755 /var/log/nginx && chmod 644 /var/log/nginx/*.log && chmod 644 /var/log/nginx/*.gzDe esta forma, cualquiera podrá leer y leer el contenido del directorio / var / log / nginx y leer los archivos * .log.
También debe verificar la configuración de rotación del registro para que los permisos no se vuelvan a cambiar. Para las últimas versiones de Nginx, hasta 1.6.2 inclusive, el archivo
/etc/logrotate.d/nginxha utilizado la líneacreate 0640 www-data admpara establecer permisos al rotar registros. Esto debería cambiarse a algo asícreate 0644 www-data adm. Cabe señalar que esta solución permite a todos los usuarios del servidor leer todos los registros de Nginx.Actualización: las configuraciones de logrotate también deben actualizarse para incluir el
su www-data admpara permitir que la utilidad logadm funcione sin quejarse de los permisos de directorio incorrectos.fuente
/etc/logrotate.d/nginxescreate 0640 www-data adm. Eso está en 1.6.2, pero no creo que esa línea haya cambiado en bastante tiempo.