Strumento Linux per tracciare lo spazio delle directory nel tempo


8

Esistono strumenti Linux comuni che tengono traccia dello spazio su disco nel tempo, non solo un filesystem in generale, ma ad esempio, in modo da poter vedere facilmente quali alberi di directory si sono gonfiati e ridotti storicamente? Il problema si verifica sui server che sembrano continuare a colpire 0 spazio libero nonostante di routine casa-pulizia della cache e file TMP, registri ecc ho già utilizzare strumenti come df, due lsofspesso e pianificare ati lavori per trovare i file di età compresa tra oltre una certa dimensione / tipo quando la bassa i segni d'acqua vengono colpiti, ecc.

Preferibilmente un pacchetto Debian / Ubuntu.


Presumo che tu voglia qualcosa di più user-friendly che du -scorrere in cron, giusto?
peterph

1
Penso che stiano cercando un calcolo storico dell'utilizzo dello spazio su disco come quello che otterresti per l'utilizzo della CPU o dell'I / O facendo un comando "sar".
Bratchley

Questo può essere fatto con un basso sovraccarico usando uno strumento che controlla ed estrae i dati rilevanti dal giornale (ext3)?
Michael Martinez,

Risposte:


3

Un paio di cose renderebbe problematica la creazione di uno strumento come questo:

  1. Il kernel non mantiene la cronologia delle dimensioni della directory o del file specifico del file (come fa con l'uso della memoria, l'attività I / O o il tempo della CPU), quindi tutto ciò che è scritto dovrebbe essere nello spazio utente.
  2. Anche se qualcosa fosse scritto usando inotify o qualcosa del genere, su server occupati l'overhead di un demone dello spazio utente che registra l'output di "du -s" dopo ogni modifica del file sarebbe enorme. Su server meno occupati probabilmente non avresti questa preoccupazione. Quindi ti imbatti nella situazione in cui lo strumento è utile solo per le persone che non possono permettersi il suo overhead.
  3. I demoni di Network Monitoring come Zabbix o Nagios contengono un monitoraggio dell'utilizzo del disco primitivo (di interi filesystem) con storie che soddisfano le esigenze della maggior parte degli amministratori in questo senso. Esigenze oltre a ciò sono in genere interruzioni / correzioni nel punto in cui si entra nel filesystem in questione e si verifica che cosa occupi spazio dopo il fatto (utilizzando il monitoraggio della rete per avvisare proattivamente di possibili problemi).
  4. Se hai davvero bisogno di saperlo e aspettare che i tuoi avvisi proattivi ti avvisino quando si sta ripetendo (in modo che tu possa verificarlo) non è un'opzione, alla fine puoi scrivere uno script per monitorare le directory che ti interessano di. (fondamentalmente registrare l'output di "find / path / to / dir -type d -exec du -sh {} \;" in qualche modo sarà facile da rivedere).

Quindi non esiste una vera domanda per la creazione di uno strumento per lo spazio utente per farlo poiché sarebbe difficile farlo correttamente e le soluzioni esistenti ti avvicinano abbastanza all'ideale.

Risposta breve: Non sono a conoscenza di un tale strumento, ma ha senso che non ci sarebbe.


È a portata di mano per hackerare insieme script di spazio utente per es. registra duistantanee periodiche dal cron di tutte / alcune directory, memorizzale in SQL / CSV per successive analisi per restringere il consumo dello spazio di archiviazione e creare rapporti amichevoli per individuarlo. Con la possibilità di ingrandire la gerarchia di dir, si spera. Ma questo richiede tempo e spero che esista qualcosa di simile, anche se imperfetto (hardlink ecc.).
Marcos,

1
Mi chiedo se questo, con molto meno sovraccarico di "du -s", potrebbe essere fatto con qualche strumento che controlla il diario del filesystem?
Michael Martinez,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.