Newsgroup: it.comp.os.linux.iniziare
Titolo: Linux può andare in crash quando incontra una partizione reiserfs rovinata

Non è un post di critica a linux. il crash si e verificato in una
condizione abbastanza anomala.
Scrivo perchè ho perso il finesettimana credendo di essere stato bucato
da un cracker ma...
Riporto la mia esperienza sperando che possa aiutare
qualcun'altro a diagnosticare i problemi del suo sistema.
Alcune settimane fa, per problemi di spazio ho spostato /var/spool su
un mountpoint diverso.Purtroppo nel modificare /etc/fstab mi sono
scordato di mettere il check al boot sul nuovo reiserfs che ho
preparato apposta. 
Poi ho dimenticato il tutto e confidando nel check al boot di tutte le
partizioni non mi sono preoccupato più di tanto quando il pc si spegne
brutalmente per blackout ( succede spesso nel finesettimana quando si
tenta di assorbire molto di piu di quello per cui il contatore è
tarato ).
Ad un certo punto il PC inizia a bloccarsi (completamente morto, non
risponde ne la tastiera ne la rete.) apparentemente in modo casuale e
dalle informazioni di log non risulta nulla di significativo. 
Torno ad una versione di kernel è driver nvidia che erano stati stabili
per mesi. metto su lm_sensor per monitorare la temperature. Eseguo un
memtest86 e abbasso di molto il clock di processore è bus.
I crash continuano a ripetersi ma forse non mi sembrano più
casuali.... Avvengono sempre quando ho il modem acceso (difficile 
esserne certi perchè il modem è quasi sempre acceso e collegato)
Mi avranno bucato? un problema in ppp o iptables?
Per quanto mi sembrasse improbabile disattivo apache e  mysql
che avevo installato di recente. Ricompilo il ppp, verfico che
iptables blocchi tutto accertandomi che blocchi anche apache (mi sto
impratichendo ma non l'ho mai reso, volutamente, accessibile dall'esterno)
lancio un chkrootkit. Un giro sul log di xinetd mi mostra solo indirizzi
della rete interna. I log degli accessi mi sembrano normali. Insomma, se
non fosse per i crash del sistema, non avrei nessun motivo di credere che
qualcuno giri a far danno sul mio PC. Comunque con la potenza di un server
linux a disposizione mi sembra troppo banale per un cracker limitarsi a
crascharlo.
Devo monitarare il sistema!!!
Attivo il sia un sar, che una voce di crontab che mi salva in un file il
contenuto di ps aux ogni secondo. 
Trovato! Indizio importante! I crash avvengono ogni 2 ore,
mentre è in esecuzione un fetchnews che viene periodicamente lanciato
da crontab. 
fetcnews -vv ed ecco che circa a meta del lavoro vedo un kernel panic
(messaggio che non sono stato capace di trovare in nessun log).
Immediatamente la macchina si blocca. Riprovo utilizzando texpire e il
pc si blocca di nuovo.
Fetchnews, non lavora a livello di kenel, non dovrebbe bloccare il
pc. Unica ipotesi sensata un settore danneggiato o il filesystem rovinato.
Comincio con un badblock (perchè ero erroneamente convinto che il
check del filesystem fosse già attivo al boot). 
badblock \dev\miopartizione -s Nessun risultato. TUTTO OK PER FORTUNA.
Smonto la partizione e lancio il check del filesystem ed ecco finelmente 
che scopro il problema. Una serie di errori riguardano i file dei dati
di fetchnews che risiedono in /var/spool/news. Correggo e texpire riprende
a funzionare trovandomi una decina di header danneggiati.
Vado a verificare in /etc/fstab ed ecco che scopro di aver fatto la
cazzata. Nel sesto parametro compare uno zero che indica di non fare il
check all'avvio.
TUTTO RISOLTO! Unico piccolo motivo di disappunto: speravo di trovare un
messaggio di kernel panic in un qualche messaggio di log del kernel,
magari con l'indicazione di un filesystem inconsistente.

 dalle informazioni di log non risulta nulla di significativo. 
E' successo anche a me con la prima veriosne di ReiserFS che il kernel
crashava in modo irreversibile quando cercavo di accedere a un determinato
file corrotto.
Questo file non era editabile o cancellabile in nessun modo.
Non ho mai trovato una soluzione al problema tranne quella di fare un
archivio di quella partizione (escluso il file) e formattarla.
-- 
Quid rides? Mutato nomine de te fabula narratur.
(Orazio) 

 archivio di quella partizione (escluso il file) e formattarla.
A me č andata molto meglio meglio. Reiserfsck mi ha risolto tutto, il
difficile č stato solo capire da dove arrivava il problema.

 difficile è stato solo capire da dove arrivava il problema.
In effetti capire e isolare la causa di problemi come questi e' molto
lungo e frustrante..



Salute a tutti, mi accodo al thread per un dubbio che ho da un poco di
tempo: i famosi parametri quinto e sesto del /etc/fstab (di cui si è
parlato), nel caso che si utilizzino filesistem diversi si mettono con
lo stesso criterio indicato in man fstab?
Es, in questo fstab sono corretti il 5° e 6° parametro?
/dev/hda1   /boot   reiserfs  defaults,nosuid,nodev      1  2
/dev/hda15  /       reiserfs  defaults                   0  1
/dev/hda2   /usr    reiserfs  defaults,nodev             0  2
/dev/hda13  /home   xfs       defaults,nodev             0  2
/dev/hda10  /tmp    reiserfs  defaults,nodev,nosuid      0  2
/dev/hda5   /var    reiserfs  defaults,nodev,nosuid      0  2
/dev/fd0    /floppy auto      noauto,nosuid,noexec,nodev 0  0	
Il dubbio mi viene dal non sapere se i vari fsck, xfs_check e reiserfsck
vengono chiamati in automatico al momento del mount iniziale a seconda
del tipo di fs presente.
Ciao & TIA
Antonio
-- 
  /¯\  |¯ \/ ¯|(*** !!! attenzione:  campo From alterato !!! ***)
 /¯_¯\ |¯|\/|¯| )----------------------------------------------(
/_/ \_\|_|  |_|(a_m_a_d_e_s_a_n_i_chiocciola_l_i_b_e_r_o_dot_i_t)

 Es, in questo fstab sono corretti il 5° e 6° parametro?
[...]
Per quanto ne capisco io sono giusti.
non saprei se ci sono filesys che fanno eccezioni.
Io uso reiser e ext3. Mai usato xfs.


Grazie Claudio per la risposta. Spero che, se qualcuno ha qualche
obiezione, si faccia avanti ;)
Ciao
Antonio
-- 
  /¯\  |¯ \/ ¯|(*** !!! attenzione:  campo From alterato !!! ***)
 /¯_¯\ |¯|\/|¯| )----------------------------------------------(
/_/ \_\|_|  |_|(            con funzione antispamming           )
----------------)----------------------------------------------(