¿Tiene sentido usar noatime en Linux moderno?

14

A partir de la versión 2.6.30 (que se lanzó hace 5 años), Linux tiene la opción relatimehabilitada de forma predeterminada. Significa que las actualizaciones del tiempo de acceso a los archivos son muy poco frecuentes y prudentes.

Pero aún veo recomendaciones para usar noatimeen bases de datos o discos SSD. ¿Hay alguna razón para cambiar la configuración predeterminada y usarla? ¿Hace alguna diferencia medible en comparación con relatime?

valodzka
fuente

Respuestas:

8

Realmente no hay una respuesta única a esta pregunta. Todo depende de muchos factores, incluidas las aplicaciones que utilizan el sistema de archivos, la combinación de actividad de lectura / escritura y el hardware en sí.

relatimeexiste como un compromiso para garantizar que algunas aplicaciones (más antiguas), como los sistemas de correo electrónico, que usan el valor atime para determinar si un archivo / mensaje se ha leído desde la entrega. Como tal, es una opción segura para un sistema de archivos predeterminado.

Antes de considerar montar un sistema de archivos con noatimeusted, debe auditar el uso del sistema de archivos para asegurarse de que ninguna aplicación dependa de un tiempo para funcionar correctamente.

Suponiendo que ningún usuario del sistema de archivos depende de un tiempo, entonces si vale la pena cambiar el valor predeterminado realmente depende del volumen de lecturas y escrituras en el sistema de archivos. Un uso de lectura en su mayoría probablemente no hará una gran diferencia, pero si hay un gran volumen de lecturas / escrituras en el mismo archivo (es decir, cargas de trabajo de base de datos típicas), encontrará que la mayoría de las lecturas también implican una escritura de atime y que afectará el rendimiento.

Si el sistema de archivos solo se usa para el trabajo de la base de datos, entonces debería ser seguro de usar noatimey eso reducirá las escrituras en el sistema de archivos.

Al final del día noatimeno debe usarse sin la debida consideración y la diferencia que hace solo puede determinarse mediante una evaluación comparativa bajo una carga de trabajo particular.

Richm
fuente
1
¿Cómo haría para auditar el uso del sistema de archivos para asegurarse de que ninguna aplicación dependa de un tiempo?
johnboiles
1
Buena pregunta y lamentablemente no hay una respuesta simple. Prefiero que las aplicaciones que dependen de atime lo mencionen en README, instalación o documentos de preguntas frecuentes. Históricamente, uno de los principales usuarios de atime en relación con mtime ha sido el agente de usuario de correo basado en archivos (MUA) para realizar un seguimiento de lo que se ha leído y no leído desde la entrega. Mi enfoque a menudo ha sido simplemente deshabilitar la modificación del tiempo y estar atento a cualquier cosa que se rompa. Históricamente, he dejado / var con el seguimiento de relatime activado, pero en las instalaciones más recientes, he tendido a desactivarlo.
Richm