View Full Version : Debian Distro-Upgrade, compilazione kernel+moduli
DaRkBoDoM
01-08-2002, 09:20
Ciao a tutti.
Ho Effettuato un upgrade da Potato a Woody... e fin qua nessun problema.
Adesso vorrei aggiornare il kernel, ma purtroppo, nella macchina su cui devo lavorare ( P133, 16 Mb RAM, Hd 450 Mb ) non e' rimasto abbastanza spazio per poter lavorare sui sorgenti.
Ho provato a montare una partizione condivisa con samba da questo PC, ma, non supportando il filesystem i links simbolici, non riesco neanche a compilare menuconfig :)
Potrei utilizzare la condivisione del filesistem NFS riavviando questo PC sotto linux, ma forse la soluzione migliore e + semplice (consideranzo anche i tempi compilazione :P ) e' quella di far compilare il kernel a questo PC.
Per il kernel in se', una volta configurato correttamente per lavorare nell'altra macchina, non dovrebbe esserci alcun problema (correggetemi se sbaglio), basta copiare la bzImage :)
Il problema che mi pongo e' relativo ai moduli, io li ho sempre installati con "make modules_install", ma, adottando questo sistema non potrei farlo... come fare allora?
Tnx
qweasdzxc
01-08-2002, 12:43
se lo compili nella "debian way" non avrai mai problemi di moduli, installazioni e robe del genere
intanto ti suggerisco di provare sul 133 un kernel 2.4.18, fai un apt-get install kernel-image-2.4.18 (ci sono versioni ottimizzate per 586, magari prova quelle)
poi se te lo vuoi comunque compilare da solo, lo compili dove vuoi senza problemi (sempre che i pc abbiano la stessa architettura e non stai ottimizzando gcc per un particolare processore), sposti il deb del kernel che viene generato grazie all'utilizzo del pacchetto kernel-package (apt-gettalo) e installi quello la usando dpkg
per istruzioni un filo piu dettagliate su come usare kernel-package vai qua
http://forum.hwupgrade.it/showthread.php?threadid=293122
Kernel Panic!!
01-08-2002, 12:44
Originariamente inviato da DaRkBoDoM
Ciao a tutti.
Ho Effettuato un upgrade da Potato a Woody... e fin qua nessun problema.
e ci mancherebbe, io ho fatto upgrade da Hamm a Woody per sfizio, senza problemi :D
Adesso vorrei aggiornare il kernel, ma purtroppo, nella macchina su cui devo lavorare ( P133, 16 Mb RAM, Hd 450 Mb ) non e' rimasto abbastanza spazio per poter lavorare sui sorgenti.
Ho provato a montare una partizione condivisa con samba da questo PC, ma, non supportando il filesystem i links simbolici, non riesco neanche a compilare menuconfig :)
Potrei utilizzare la condivisione del filesistem NFS riavviando questo PC sotto linux, ma forse la soluzione migliore e + semplice (consideranzo anche i tempi compilazione :P ) e' quella di far compilare il kernel a questo PC.
Per il kernel in se', una volta configurato correttamente per lavorare nell'altra macchina, non dovrebbe esserci alcun problema (correggetemi se sbaglio), basta copiare la bzImage :)
Il problema che mi pongo e' relativo ai moduli, io li ho sempre installati con "make modules_install", ma, adottando questo sistema non potrei farlo... come fare allora?
Tnx
direi di compilarlo creando il pacchetto deb... basta che, da dentro /usr/src/linux, tu gli dia il solito make xconfig/menuconfig/config, dopodichè (devi apt-gettare make-kpkg) vai con:
make-kpkg clean
make-kpkg kernel-image
lo lasci lavorare e alla fine ti ritrovi un bel ../kernel-image-qualcosa.deb, pronto da installare sull'altra macchina :) (dpkg -i kernel-image-qualcosa.deb)
occhio a compilarlo tenendo conto del processore dell'altro pc (se lo compili su un P3 e l'altro pc è un pentium, non mettere ottimizzazioni i686 :p )
DaRkBoDoM
01-08-2002, 13:10
Scusate, mi sono accorto che ho omesso qualche info :)
Il kernel in questione e' un 2.4.x e su questa macchina come distro sto usando Mandrake.
Ho la necessita' di compilarlo manualmente e non posso utilizzare un precompilato in quanto devo includere delle patch x il modem isdn rilasciate dal produttore, e cmq nel precompilato "non so cosa c'e' dentro", quindi non mi piace :P
Ho capito come fare per il kernel, ma per i moduli ancora non ci sono :confused:
Kernel Panic!!
01-08-2002, 13:15
prova a copiarti a mano il tree dei moduli ( /lib/modules/`uname -r` ), usare l'immagine del kernel relativa e riavviare... dovrebbe mettere a posto le dipendenze dei moduli in fase di boot, al massimo prova con un "depmod -a"
DaRkBoDoM
01-08-2002, 15:07
Ok, adesso provo.
Se nn mi sentite + vuold ire che mi e' scoppiato il proxy mentre cambiavo kernel :P
Tnx ^^
Kernel Panic!!
01-08-2002, 15:19
backupa i vecchi moduli e il vecchio kernel magari prima :p
DaRkBoDoM
03-08-2002, 07:24
Allora... sono vivo ^_^
Son riuscito ad infilare il kernel 2.4 nel proxy, evitando l'uso di moduli, ho compilato tutto all'interno del kernel stesso.
Isdn funge
La NE2000 me la configura senza problemi
iptables non da' errori,
MA il nat proprio non ne vuole sapere di andare... eppure ho compilato tutto all'interno del kernel.
Ho provato addirittura a settare le policy di default per INPUT, FORWARD, e OUTPUT su accept (follia)
e poi ad inserire questa riga:
iptables -t nat -A POSTROUTING -j MASQUERADE
(di nuovo follia)
in teoria cosi' dovrebbe fare da router x chiunque... eppure non va'...
...le ho provate un po' tutte... dove sbaglio?
Kernel Panic!!
03-08-2002, 13:26
echo 1 > /proc/sys/net/ipv4/ip_forward
prova questo (se non l'avevi provato...)
DaRkBoDoM
03-08-2002, 14:43
Gia' abilitato... tra le altre cose iptables non da' errori, con un iptables -t nat -L -v si vede che la regola e' stata aggiunta correttamente e i contatori dimostrano che i pacchetti vengano processati tramite quella regola... sta di fatto che la connessione pero' nn va.
Se riavvio col vecchio 2.2 e le vecchie regole di ipchains funziona di nuovo tutto :eek:
Kernel Panic!!
03-08-2002, 14:49
mmm magari ti sei dimenticato roba nel kernel... ti dico cosa ho messo io nel mio router (ma credo non sia tutto necessario :p )
(voce Networking Options)
Packet socket
Network packet filtering (replaces ipchains)
Network packet filtering debugging
Unix domain sockets
TCP/IP networking
IP: multicasting
IP: advanced router
(sottovoce IP: Netfilter Configuration)
Connection tracking (required for masq/NAT) FTP protocol support IRC protocol support
IP tables support (required for filtering/masq/NAT)
Connection state match support
Packet filtering
Full NAT
MASQUERADE target support
REDIRECT target support
LOG target support
ora, non so se sia tutto necessario, sto kernel l'ho configurato mesi fa un po' alla c@$$0, però funziona :D
PS: Silent night, bodom night :p
DaRkBoDoM
03-08-2002, 16:12
Mancava il debugging di netfilter, il resto c'e' tutto... e pure di piu' (a Netfilter confioguration ho inserito tutte le voci) :P
Ads ricompilo poi lo sparo nel 133 e vediamo se stavolta funge, grazie 1000 x la partecipazione :)
Kernel Panic!!
03-08-2002, 16:30
Originariamente inviato da DaRkBoDoM
[B]Mancava il debugging di netfilter, il resto c'e' tutto... e pure di piu' (a Netfilter confioguration ho inserito tutte le voci) :P
Ads ricompilo poi lo sparo nel 133 e vediamo se stavolta funge, grazie 1000 x la partecipazione :)
mmm mi sa che il debugging del netfilter non serve a niente in questo caso...
che kernel hai? che versione di iptables? e di pppd?
io per abilitare il nat ho messo in avvio ste 2 righe:
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
ma mi par di aver letto che l'avevi fatto anche tu... quindi...
DaRkBoDoM
03-08-2002, 16:47
iptables 1.2.6a
kernel 2.4.18
ipppd version i2.2 patch level 12
Eh gia' il debugging nn serve a niente :(
DaRkBoDoM
03-08-2002, 16:51
magari influisce il fatto che nn stia usando moduli ma abbia tutto il necessario direttamente nel kernel?
Kernel Panic!!
03-08-2002, 18:12
ipppd? ma hai isdn?
DaRkBoDoM
03-08-2002, 18:50
Si, ma col 2.2 funziona senza problemi, pure col 2.4 fatta eccezione per il nat ^^
Nn credo dipenda da quello cmq
Kernel Panic!!
03-08-2002, 18:51
mah, io proverei con pppd normale...
DaRkBoDoM
03-08-2002, 18:57
O_o
pppd con isdn mica lavora che io sappia, cmq il numero lo compone senza problemi, se pingo un sito funge, il lynx apre le pagine, ecc... solo che nn fa il nat
Kernel Panic!!
03-08-2002, 18:59
Originariamente inviato da DaRkBoDoM
[B]O_o
pppd con isdn mica lavora che io sappia, cmq il numero lo compone senza problemi, se pingo un sito funge, il lynx apre le pagine, ecc... solo che nn fa il nat
ah scusa, non avevi specificato che avevi isdn :p
mmm...nella riga di iptables hai provato a mettere -o ippp0 ?
DaRkBoDoM
03-08-2002, 19:01
Si', e' la prima cosa che ho provato (come dal Linux Ip Masquerading HowTo) ma nn funge, ho provato anche a mettere -s 192.168.1.0/24 (la lan per capirci), ma nn va neanche in quel modo.
Kernel Panic!!
03-08-2002, 19:03
mmm
dns? hai un server dns sul pc che fa nat? che dns hai specificato nei pc della rete?
DaRkBoDoM
03-08-2002, 19:06
Come DNS uso quelli del provider (Libero)
Dal gateway li Pingo, da questo PC no... cmq se dipendesse dal dns tentando di connettermi ad un sito (faccio sempre i test con google) usando direttamente l'indirizzo IP dovrei riuscirci anche da questo PC, cosa che invece non avviene... non capisco xo' come mai i counter del nat si incrementano... non e' che magari fa il forward in uscita e poi scarta i pacchetti quando ritornano?
Kernel Panic!!
03-08-2002, 19:07
filtering di pacchetti (firewall insomma) l'hai già messo? al massimo prova a toglierlo, magari ti blocca pacchetti che passano per nat...
DaRkBoDoM
03-08-2002, 19:12
Lo avevo messo, ma poi ho tolto tutto x esser sicuro.
Le polici di INPUT, OUTPUT e FORWARD sono su ACCEPT e nn ci sono regole, idem x le chain del nat con un'unica regola in POSTROUTING, non e' che magari serve qualche altra regola dico?
Cioe' quella regola instrada i pacchetti che da eth0 devono uscire su internet, ma per le risposte dei avri server come fa? Basta quella regola? Oppure ne va aggiunta un'altra?
In teoria lui dovrebbe memorizzarsi le intestazioni TCP/IP che modifica, quindi basta solo quella giusto? ma allora perche' non funge? Sto diventando matto :confused: :eek: :(
Kernel Panic!!
03-08-2002, 19:17
Originariamente inviato da DaRkBoDoM
[B]Lo avevo messo, ma poi ho tolto tutto x esser sicuro.
Le polici di INPUT, OUTPUT e FORWARD sono su ACCEPT e nn ci sono regole, idem x le chain del nat con un'unica regola in POSTROUTING, non e' che magari serve qualche altra regola dico?
Cioe' quella regola instrada i pacchetti che da eth0 devono uscire su internet, ma per le risposte dei avri server come fa? Basta quella regola? Oppure ne va aggiunta un'altra?
In teoria lui dovrebbe memorizzarsi le intestazioni TCP/IP che modifica, quindi basta solo quella giusto? ma allora perche' non funge? Sto diventando matto :confused: :eek: :(
io ho solo quella regola su iptables, + quello echo 1 > ... che dò in avvio (insieme al comando per metter quella regola di iptbles per il nat), e tutto funziona...
domanda scema (ma magari non lo è :) ): nei pc della rete hai impostato come gateway l'ip di sto pc che dovrebbe far nat? sennò non va nulla :D
DaRkBoDoM
03-08-2002, 19:20
Risposta alla domanda scema:
Stesso identico PC, faccio un reboot col kernel 2.2 e lo script x ipchains tutti i PC vanno su internet (altrimenti ads nn starei postando :P), faccio un reboot con 2.4 e script x iptables (semplice semplice come ti ho descritto) e dalla LAN sono escluso da internet.
Il kernel e' compilato con 'sta roba qua
#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
# CONFIG_NETLINK_DEV is not set
CONFIG_NETFILTER=y
CONFIG_NETFILTER_DEBUG=y
CONFIG_FILTER=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_TOS=y
CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_ROUTE_LARGE_TABLES is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_IP_MROUTE is not set
# CONFIG_ARPD is not set
# CONFIG_INET_ECN is not set
# CONFIG_SYN_COOKIES is not set
#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_FTP=y
CONFIG_IP_NF_IRC=y
CONFIG_IP_NF_QUEUE=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_LIMIT=y
CONFIG_IP_NF_MATCH_MAC=y
CONFIG_IP_NF_MATCH_MARK=y
CONFIG_IP_NF_MATCH_MULTIPORT=y
CONFIG_IP_NF_MATCH_TOS=y
CONFIG_IP_NF_MATCH_AH_ESP=y
CONFIG_IP_NF_MATCH_LENGTH=y
CONFIG_IP_NF_MATCH_TTL=y
CONFIG_IP_NF_MATCH_TCPMSS=y
CONFIG_IP_NF_MATCH_STATE=y
CONFIG_IP_NF_MATCH_UNCLEAN=y
CONFIG_IP_NF_MATCH_OWNER=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_MIRROR=y
CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_IP_NF_NAT_SNMP_BASIC=y
CONFIG_IP_NF_NAT_IRC=y
CONFIG_IP_NF_NAT_FTP=y
CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_TARGET_TOS=y
CONFIG_IP_NF_TARGET_MARK=y
CONFIG_IP_NF_TARGET_LOG=y
CONFIG_IP_NF_TARGET_ULOG=y
CONFIG_IP_NF_TARGET_TCPMSS=y
# CONFIG_IPV6 is not set
# CONFIG_KHTTPD is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q is not set
Kernel Panic!!
03-08-2002, 19:23
Originariamente inviato da DaRkBoDoM
[B]Risposta alla domanda scema:
Stesso identico PC, faccio un reboot col kernel 2.2 e lo script x ipchains tutti i PC vanno su internet (altrimenti ads nn starei postando :P), faccio un reboot con 2.4 e script x iptables (semplice semplice come ti ho descritto) e dalla LAN sono escluso da internet.
Il kernel e' compilato con 'sta roba qua
#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
# CONFIG_NETLINK_DEV is not set
CONFIG_NETFILTER=y
CONFIG_NETFILTER_DEBUG=y
CONFIG_FILTER=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_TOS=y
CONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_ROUTE_LARGE_TABLES is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_IP_MROUTE is not set
# CONFIG_ARPD is not set
# CONFIG_INET_ECN is not set
# CONFIG_SYN_COOKIES is not set
#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_FTP=y
CONFIG_IP_NF_IRC=y
CONFIG_IP_NF_QUEUE=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_LIMIT=y
CONFIG_IP_NF_MATCH_MAC=y
CONFIG_IP_NF_MATCH_MARK=y
CONFIG_IP_NF_MATCH_MULTIPORT=y
CONFIG_IP_NF_MATCH_TOS=y
CONFIG_IP_NF_MATCH_AH_ESP=y
CONFIG_IP_NF_MATCH_LENGTH=y
CONFIG_IP_NF_MATCH_TTL=y
CONFIG_IP_NF_MATCH_TCPMSS=y
CONFIG_IP_NF_MATCH_STATE=y
CONFIG_IP_NF_MATCH_UNCLEAN=y
CONFIG_IP_NF_MATCH_OWNER=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_MIRROR=y
CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_IP_NF_NAT_SNMP_BASIC=y
CONFIG_IP_NF_NAT_IRC=y
CONFIG_IP_NF_NAT_FTP=y
CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_TARGET_TOS=y
CONFIG_IP_NF_TARGET_MARK=y
CONFIG_IP_NF_TARGET_LOG=y
CONFIG_IP_NF_TARGET_ULOG=y
CONFIG_IP_NF_TARGET_TCPMSS=y
# CONFIG_IPV6 is not set
# CONFIG_KHTTPD is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q is not set
(approccio semplicistico): visto che il mio va, togli la roba che tu hai in + (avevo aggiunto anche io qualcosa mi pare e faceva casini)
dal pc client prova (da root) un bel
"route add default gw indirizzo_del_pc_che_fa_nat"
e vedi se per caso così va (prima di toccare il kernel, va ;) )
DaRkBoDoM
03-08-2002, 19:34
Alleluja adesso funge... cosa ho modificato? Niente... O_o
Kernel Panic!!
03-08-2002, 19:42
ma come... :confused:
DaRkBoDoM
03-08-2002, 19:44
Ho fatto l'ennesimo reboot, mi son riconnesso, e ha cominciato a funzionare... mah... ads provo ad inserire le regole del firewall
Kernel Panic!!
03-08-2002, 19:46
Originariamente inviato da DaRkBoDoM
[B]Ho fatto l'ennesimo reboot, mi son riconnesso, e ha cominciato a funzionare... mah... ads provo ad inserire le regole del firewall
boh ma avrai cambiato qualcosa prima di rebootare no? :D
vabbè va, ora va :)
DaRkBoDoM
03-08-2002, 19:49
Uhm... ho aggiunto il debugging di netfilter al kernel e il supporto x la selezione della modalita' VGA... nn credo c'entrino molto ^^
BOH
Kernel Panic!!
03-08-2002, 19:50
Originariamente inviato da DaRkBoDoM
[B]Uhm... ho aggiunto il debugging di netfilter al kernel e il supporto x la selezione della modalita' VGA... nn credo c'entrino molto ^^
BOH
boh... meglio così va :D
for($i=0; $i<10; $i++)
echo "ma ciao!";
Kernel Panic!!
03-08-2002, 19:51
Originariamente inviato da Kernel Panic!!
[B]
for($i=0; $i<10; $i++)
echo "ma ciao!";
(credevo lo eseguisse il codice :p :p :p )
DaRkBoDoM
03-08-2002, 20:00
Boh... infilate pure le regole del firewall nn so che dire, mi scoccia nn aver capito come mai nn funzionava.
P.s. Sisis ma certo che ti esegue codice arbitrario in PHP... sarebbero dei pazzi ^^
Kernel Panic!!
03-08-2002, 20:04
Originariamente inviato da DaRkBoDoM
[B]Boh... infilate pure le regole del firewall nn so che dire, mi scoccia nn aver capito come mai nn funzionava.
P.s. Sisis ma certo che ti esegue codice arbitrario in PHP... sarebbero dei pazzi ^^
eheh :p :D
hai un pvt :p
DaRkBoDoM
03-08-2002, 20:47
Capito cosa era cambiato: mi ero dimenticato lo script del 2.2 (ipchains)
In pratica funziona cosi': se avvio linux con lo script del 2.2 e dopo carico manualmente quello del 2.4 funge, se avvio direttamente con lo script del 2.4 non va
DaRkBoDoM
03-08-2002, 22:27
finalmente ho fatto luce... era sbagliato l'ordine con cui abilitavo le varie opzioni nel kernel.
Abilitavo ip_dynaddr x ultimo, quando invece va abilitato subito dopo l'ip_forward... almeno cosi' pare.
-_-'[/siz]
Kernel Panic!!
04-08-2002, 02:43
mah, se carichi un modulo che dipende da un altro, se lo trascina dietro...
DaRkBoDoM
04-08-2002, 08:18
No, non i moduli... orprio l'ordine con cui abilitavo le opzioni nel kernel.
echo "1" > /proc/sys/net/ipv4/ip_forward (forse ho cannato dir qua nell'esempio :P)
poi abilitavo/disattivavo un'altra serie di cose e per ultimo
echo "1" > /procsys/net/ipv4/ip_dynaddr
Ecco. L'ip_dynaddr a quanto ho visto va abilitato immediatamente dopo all'ip_forward, altrimenti non va il MASQ
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.