1 Come si possono gestire più file System.map
quando si dispone di più immagini del kernel?
RISPOSTA:
Per far sì che il sistema carichi all’avvio i file /boot/System.map corretti a seconda dell’immagine del kernel che si è scelto di caricare, si dovrà modificare il file /etc/rc.d/init.d/syslog (/etc/init.d/sysklogd in una distribuzione Debian). La riga:
daemon klogd -k /boot/System.map
dovrà essere sostituita con:
daemon klogd -k /boot/System.map-uname -r
Ora si devono copiare in /boot i file System.map dei rispettivi kernel, rinominandoli nel seguente modo:
mv System.map System.map-x.y.z[Invio
2 Dove devo copiare il file System.map
e che operazioni devo compiere su di esso?
Il file System.map
si viene a trovare nella directory /usr/src/linux/
alla fine del processo di ricompilazione del kernel e va copiato nella directory /boot/
. Per ogni immagine del kernel, esiste un System.map
diverso. Occorre quindi provvedere, nel caso si desideri utilizzare più di un’immagine del kernel nel proprio sistema, a sostituire i vari file System.map
a seconda dell’immagine del kernel che si sta utilizzando.
Un modo per fare questo è rinominare i vari System.map
in System.map.x.y.z
, e creare ogni volta un collegamento simbolico che punti al System.map.x.y.z
desiderato.
Se ad esempio si è appena ricompilato il kernel 2.2.12 occorrerà copiare in /boot/
l’immagine del kernel e il file System.map
rinominando quest’ultimo in System.map.2.2.12
:
#
cp /usr/src/linux/arch/i386/boot/bzImage /boot/
[Invio]
e:
#
cp /usr/src/linux/System.map /boot/System.map.2.2.12
[Invio]
Occorrerà quindi creare il collegamento simbolico in /boot
:
#
ln -s /boot/System.map.2.2.12 /boot/System.map
[Invio]
lrwxrwxrwx 1 root root 19 Jun 5 14:38 System.map -> System.map.2.2.12 -rw-r--r-- 1 root root 186846 Jun 5 14:30 System.map-2.2.12
3 Perché dopo la ricompilazione del kernel c’è una diminuzione dello spazio nel disco?
La ricompilazione del kernel comporta una diminuzione dello spazio su disco di circa 20 – 30 Mibyte.
Per recuperare lo spazio, occorre dare:
#
make clean
[Invio]
dopo essersi posizionati in /usr/src/linux
.
4 Come si possono memorizzare gli eventuali messaggi (di errore e non) che possono risultare dalla procedura di ricompilazione del kernel?
Durante la ricompilazione del kernel, possono verificarsi numerose problematiche che vengono di solito visualizzate mediante messaggi. Con il comando:
#
make dep;make clean;make bzImage > LOG-k 2> ERR-k;make modules > LOG-m 2> ERR-m
[Invio]
sarà possibile registrare nei file LOG-k
e LOG-m
gli avvertimenti e gli errori verificatesi durante la ricompilazione del kernel e l’installazione dei moduli.
Risulterà quindi più facile individuare i problemi e le cause degli errori.