Pagina 1 di 1

spazio finito sul server.... informazione FALSA!

Inviato: gio 26 apr 2007, 10:22
da nik600
Oggi mi è capitata una cosa stranissima... che non mi sarei certo aspettato dalla mia bella slackware dopo 3 anni di funzionamento ad orologio svizzero.

Su un server di produzione, che aveva un uptime di circa 4 mesi, con una root di 10 GB, ero un po tirato con lo spazio, diciamo che restavano liberi 4 GB ma un sito web particolarmente frequentato genera all'incirca 3 GB a settimana.

Avevo predisposto allora un log rotate per evitare di finire lo spazio, e questo negli ultimi 4 mesi non dava grossi problemi, lo spazio libero della root variava da 3 a 1 GB.

Nelle ultime due settimane, nonostante io continuassi ad eliminare log, lo spazio cresceva inesorabilmente, ho fatto passare con du ogni possibile directory della root, cercando cosa mi consumava spazio ma non trovavo nulla.

Questa mattina, a tradimento da ieri sera mi sono spariti 500 MB e ho trovato apache piantato che non riusciva a scrivere sulla tmp.

Mi loggo via ssh e il risultato di df è: 100% utilizzato, niente libero.

Cerco allora di eliminare dei log, e quanta piu roba inutile (ma non cene era), niente da fare, cosi ad occhio ho rimosso 500 MB di software "vecchio" ma lo spazio restava sempre al 100%, con apache bloccato.

Rassegnato, tento un riavvio e che mi ritrovo?

Codice: Seleziona tutto

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda2              9461448   2229836   6743236  25% /
/dev/sda3            128828000  26721096  95457200  22% /data
/dev/sdb1            115377640  98657928  10858800  91% /mnt/bkup
???? 25% ???

come si spiega?

Inviato: gio 26 apr 2007, 12:53
da a1k
boh... comunque fossi in te farei una partizione /var

Inviato: gio 26 apr 2007, 12:56
da nik600
ok, ma a parte questo... che sia dovuto al filesystem (ext3) ?

Sto controllando un'altro server, dove anche li un file di log aveva raggiunto 4 GB di dimensione.... qui non ce un problema di spazio, ma mi sono accorto che eliminando il file, l'output di df non cambia.

Cosa sarà?

non posso fare un'operazione di refresh in qualche modo?

Inviato: gio 26 apr 2007, 14:31
da albatrosla
Per far ciclare i log basta dare un:

Codice: Seleziona tutto

/etc/rc.d/rc.syslog restart
Sono quasi certo che c'è un comando più "elegante" per fare la stessa cosa, ma io uso questo dopo aver controllato e cancellato i file di log divenuti troppo paffuti.

Inviato: gio 26 apr 2007, 14:41
da nik600
ma il problema credo sia slegato dai log...

nel senso, ora i log enormi non ci sono piu, perchè li ho eliminati io.

Eppure lo spazio tramite df risulta ancora occupato!

Il problema, non è tanto df (chi sene frega) ma è che anche il sistema vero e proprio non vede il nuovo spazio! infatti ho dovuto riavviare la macchina per non avere piu il problema di no space left on device!

Inviato: gio 26 apr 2007, 15:09
da albatrosla
Se cancelli il file di log manualmente, lo spazio non viene liberato. Devi eliminare il file e fare il restart di rc.syslog, altrimenti il file non viene eliminato visto che è effettivamente in utilizzo.

Inviato: gio 26 apr 2007, 16:13
da nik600
ho provato, ma non cambia nulla.

La cosa strana, è che anche se elimino un file che non centra nulla, lo spazio non viene aggiornato!

Inviato: gio 26 apr 2007, 17:43
da kobaiachi
premetto che non sono molto ferrato sull argomento filesystem quindi prendi con il beneficio del dubbio quello che scrivo

comunque

un filesystem puo contenere tanti file quanti sono gli inode sul filesystem .

se raggiungi il numero di inode ti dovrebbe dire che il disco e` pieno anche se effettivamente non lo e` controlla il numero di inode ed il numero di file che sono presenti sull hd .
il numero dei file deve essere sempre <= al numero degli inode.

Inviato: gio 26 apr 2007, 18:31
da Luci0
Hai provato a fare un check del disco offline ovvero da una distribuzione live ???

Inviato: gio 26 apr 2007, 18:32
da albatrosla
Che il file system sia montato come read-only?

Inviato: gio 26 apr 2007, 18:39
da nik600
no, è una macchina in produzione, purtroppo non posso fare questo tipo di test.

Non è sicuramente in read-only.

Inviato: gio 26 apr 2007, 19:00
da Luci0
Devi cercare di riprodurre il 'fenomeno' per tentare di capirci qualcosa, non é che c' é qualche software da aggiornare...
... sembra che ci sia qualcosa che apre file temporanei a ripetizione e non li chiude mai, in questo modo si dovrebbe creare creare una situazione del genere ... comunque recentemente lo stesso Linus Torvald si era messo a correggere alcuni bug di ext3 venuti fuori a livello kernel con il 2.6.19 (era sul n.58 di oltrelinux in kernel news).
Controlla il kernel e apache se ha delle security patch... controlla anche il log ... non é che qualcuno sta provando a fare qualcosa.. di scorretto , tipo rootkit ???

Inviato: gio 26 apr 2007, 19:43
da castcarlitos
Un semplice sync del disco non aiuta?

A me, normalmente, lo spazio viene aggiornato dopo la cancellazione dei file di log...

Inviato: gio 26 apr 2007, 22:19
da Luci0
@castcarlitos
vero! :-)

Inviato: ven 27 apr 2007, 8:53
da nik600
questa mattina lo spazio si era liberato e l'output di df è tornato accettabile!

credo anche io che la soluzione sia sync, vi tengo aggiornati se mi si ripresenta la situazione e se riesco a risolvere...

Ciao e grazie!