Puede consultar http://samwel.tk/laptop_mode/ . Aunque esta página no trata principalmente de su problema, ofrece una buena idea general de cómo funciona IO e ideas, cómo silenciar sus discos apagándolos.
La respuesta corta para su problema:
echo 1> / proc / sys / vm / block_dump
producirá mensajes en syslog como:
23 de julio 10:04:05 kernel locutus: ls (5224): LEA el bloque 7340136 en dm-4
23 de julio 10:04:05 kernel locutus: ls (5224): LEER bloque 4335136 en dm-4
23 de julio 10:04:05 kernel locutus: ls (5224): LEER bloque 15505568 en dm-4
23 de julio 10:04:05 kernel locutus: ls (5224): LEER bloque 7340160 en dm-4
23 de julio 10:04:05 kernel locutus: ls (5224): LEER bloque 7340168 en dm-4
He usado un simple comando ls
NOTA: asegúrese de que el registro de su sistema esté apagado o escrito en un disco ram (tipo: tmpfs) antes de hacerlo, porque (cita): "su sistema puede entrar en un bucle de retroalimentación, donde syslogd provoca actividad en el disco, esto provoca la salida del núcleo, y esto hace que syslogd haga más actividad de disco "
Recomiendo montar / tmp como un disco ram y luego configurar el registro en / tmp / syslog. Esto en / etc / fstab (y un reinicio) hará:
ninguno / tmp tmpfs por defecto, tamaño = 256M 0 0
He estado usando iotop para descubrir qué está usando la unidad. Desde el sitio web debe tener "kernel de Linux ≥ 2.6.20 con las opciones TASK_DELAY_ACCT y TASK_IO_ACCOUNTING habilitadas".
Parece que solo estás interesado en un disco en particular. Puede considerar escribir un script que verifique rutinariamente con lsof o fuser para acceder a esa unidad / partición.
fuente
Si un proceso comienza a escribir datos en la unidad, puede averiguarlo revisando regularmente los archivos abiertos: lsof .
De lo contrario, podría buscar con "libre" si el archivo de intercambio se utiliza o no.
fuente
Debería poder usar la auditoría de Linux para agregar un reloj en el punto de montaje de la unidad, luego monitorear los registros con ausearch después del evento para averiguar en qué archivo se leyó o se escribió (si corresponde) y en qué proceso lo hizo, la auditoría puede Esté atento a las lecturas, escrituras, ejecuciones y cambios de atributos en cualquier sistema de archivos (siempre que sea compatible con su sistema, debería serlo).
fuente
Tal vez podría usar incron que usa inotify para iniciar comandos basados en la actividad del sistema de archivos. Luego, podría ver el punto de montaje y usar incron para activar lsof para buscar qué proceso está accediendo a él.
fuente
Lo fácil de verificar lo que está haciendo girar su disco es:
vaya al directorio del disco montado, para mí fue / media / disk0 / transmission
entonces ejecutas:
sudo fatrace -c
tendrá la salida de cualquier cosa que llegue a esa carpeta, por ejemplo, puede iniciar sesión con ssh y hacer un ls.
fuente