# [HW] Monitorare accessi al disco rigido

## Cazzantonio

Ho un piccolo server che non usa praticamente mai l'hard disk. Praticamente lo usa solo quando (di rado) si riavvia, quando fa il sync di portage una volta al giorno e quando lo aggiorno. Ah, ovviamente anche quando lo uso... però avviene di rado.

I log vengono scritti su tmpfs, /tmp e /var/tmp pure sono in tmpfs, addirittura /var/run e /var/lock sono in tmpfs!

Tutto questo perché l'hard disk contenuto in questo microserver possa andarsene in spin-down tranquillamente finché non evocato di nuovo per uno dei compiti precedenti.

Purtroppo c'è ancora qualche processo che scrive su disco perché lo spin-down non avviene.

Volevo sapere se potete indicarmi come monitorare gli accessi al disco, per capire quale sia il programma (o i programmi) che continuano ad accedere al disco.

----------

## djinnZ

find | fuser oppure inotify.

che fs usi e con quali opzioni ?

----------

## Cazzantonio

 *djinnZ wrote:*   

> find | fuser oppure inotify.
> 
> che fs usi e con quali opzioni ?

 Uso ext3, formattato con 

```
has_journal resize_inode dir_index filetype needs_recovery sparse_super
```

è montato con 

```
/dev/sda1   /         ext3   noatime,nodiratime      0 1
```

Ho provato fuser ma non funziona come serve a me, penso dovrò usare inotify, anche se è un tool che non conosco e dovrò perderci un po' di tempo...

----------

## djinnZ

in che senso non va?

```
find -L /var -depth -mount -type [d,f,p,s) | xargs fuser
```

oppure

```
lsof | grep "/var"
```

non ti riportano nulla di utile?

Vedi che se usi link simbolici o mount del tipo 

```
mount -t tmpfs /var/tmp
```

 su un filesystem in rw mi pare che comunque il kernel registri attività.

Proverei a rimontarla brutalmente in ro e vedere cosa succede.

----------

## gutter

Scusa la banalità ma un semplice iostat non potrebbe esserti utile?

----------

## Cazzantonio

 *gutter wrote:*   

> Scusa la banalità ma un semplice iostat non potrebbe esserti utile?

 Lo farei volentieri, solo non ho il comando iostat... in che pacchetto lo trovo?

Ho trovato la directory /var/spool/cron che viene controllata ogni minuto dal demone cron... temo sia impossibile eliminare questo comportamento senza eliminare anche cron vero?

----------

## gutter

```

*  app-admin/sysstat

      Latest version available: 8.0.3

      Latest version installed: [ Not Installed ]

      Size of downloaded files: [no/bad digest]

      Homepage:    http://perso.wanadoo.fr/sebastien.godard/

      Description: System performance tools for Linux

      License:     GPL-2

```

----------

## djinnZ

 *Cazzantonio wrote:*   

> Ho trovato la directory /var/spool/cron che viene controllata ogni minuto dal demone cron... temo sia impossibile eliminare questo comportamento senza eliminare anche cron vero?

 metti anche quella su ram un rsync verso una dir a piacere /tmp/spool/cron, per dirne una, all'avvio, la rimonti con --bind ed allo shutdown fai un rsync inverso. La rogna è che devi modificare l'rc di cron o farlo dipendere da un rc script dedicato.

Sempre che cron su una macchina del genere ti serve a qualcosa.

----------

## Cazzantonio

 *djinnZ wrote:*   

> metti anche quella su ram un rsync verso una dir a piacere /tmp/spool/cron, per dirne una, all'avvio, la rimonti con --bind ed allo shutdown fai un rsync inverso. La rogna è che devi modificare l'rc di cron o farlo dipendere da un rc script dedicato.

 Quello non è un problema, ho già un initscript dedicato che mi rigenera ad ogni avvio /var/log, /var/run e /var/lock, quindi aggiungere anche /var/spool/cron non è un problema...

Grazie comunque per le prezione informazioni, non conoscevo systat, e nemmeno fuser   :Smile: 

Non si finisce mai di imparare   :Very Happy: 

----------

