[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Makefile e ReiserFS con ATA RAid Promise Sx4000



mi trovavo tra le mani il controller RAID sx4000, che viaggiava su una macchina windows che è andata in pensione. ho pensato di riutilizzare l'hardware con due dischi maxtor nuovi da 80 GB, da impiegare come sistema di backup con debian

smoccolando non poco sono riuscito a compilare un modulo trovato in rete e costato parecchie ricerche.

a questo punto ho due diversi problemi che vorrei risolvere

primo problema:

i due dischi sono in raid1 e vengono correttamente montati se li formatto con ext3. se però provo a formattarli con makereiserfs ottengo questo errore: no enough blocks on device. ho cercato documentazione in rete ma non ho trovato nulla, e manco sulla lista di debian mi hanno saputo rispondere.


secondo problema:

come detto sono riuscito a compilare i sorgenti del modulo che ho trovato on line: anche se non so programmare, con molta fortuna sono riuscito a modificare un paio di cose nel makefile e a completare la compilazione. di seguito vi riporto le due righe di configurazione alternativa presenti nel makefile:

#INDEP386= -D__KERNEL__ -D__LINUX__ -D_SUPPORTENCLOSURE_
-I/usr/src/linux/include -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce
-mcpu=i386 -DCPU=386 -DMODULE -D_PBM_

INDEP386= -D__KERNEL__ -D__LINUX__ -D_SUPPORTENCLOSURE_
-I/usr/src/linux/include -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce
-mcpu=i386 -DCPU=386 -DMODULE -D_PBM_ -DMODVERSIONS -include
/usr/src/linux/include/linux/modversions.h

usando la prima il modulo si compila ma poi ci sono problemi perchè quando si va di insmod si rifiuta di partire, lamentandosi che il kernel è diverso da quello per cui è stato compilato. usando la seconda (dopo avere installato gli headers del kernel), sono riuscito a compilare modificando nei parametri del makefile la stringa "/usr/src/linux/include/linux" in "/usr/src/kernel-headers-miokernel/include/linux"

ora, vorrei modificare sto benedetto makefile in modo che fosse possibile compilarlo anche su altre distribuzioni usando qualche variabile che sosituisse "kernel-headers-miokernel" in modo da potere poi redistribuire il tutto ai poveracci che come me dovranno avere a che fare con quell'accidenti di controller

poi vorrei capire se fosse possibile perchè debian tiene gli headers del kernel in una directory diversa da quella dei sorgenti del kernel come fanno invece le distro basate su red hat.. da perfetto ignorante quale sono la seconda soluzione mi parrebbe più sensata...


grazie e scusate la mail lunghissima...

Max








Reply to: