instalacia kernel-image 2.6 - GNU/Debian sarge i386 - dlhe
To |
Debian CZ/SK project discussion list <czdebian-l zavinac debian bod cz> |
From |
Marian Cavojsky <cavojsky zavinac soria-grey bod sk> |
Date |
Mon, 27 Dec 2004 18:36:54 +0100 |
Mail-followup-to |
Marian Cavojsky <cavojsky zavinac soria-grey bod sk>, Debian CZ/SK project discussion list <czdebian-l zavinac debian bod cz> |
User-agent |
Mutt/1.5.6+20040907i |
Pri poslednej aktualizacii jadra, dnes rano, mi neprebehla postinstall
konfiguracia. Zistil som, ze mi nevygeneroval initrd.img. Samozrejme, ze
som to zistil, az ked nenabootoval NB. Este, ze tam mam aj testovaciu
instalaciu Gentoo.
Vrtal som sa v tom a nakoniec som nasiel tento problem:
V subore '/usr/share/initrd-tools/scripts/e2fsprogs', pomocou ktoreho sa
vytvara initrd.img je tento kod:
for i in `ldd /sbin/tune2fs /usr/bin/awk | sort -u | awk '{print $3}'`
do
mkdir -p `dirname $INITRDDIR/$i`
cp $i $INITRDDIR/$i
done
Skotroloval som co vrati ldd na tieto dva subory:
$ ldd /sbin/tune2fs
linux-gate.so.1 => (0x00000000)
libext2fs.so.2 => /lib/libext2fs.so.2 (0x55575000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0x5558b000)
libblkid.so.1 => /lib/libblkid.so.1 (0x5558f000)
libuuid.so.1 => /lib/libuuid.so.1 (0x55596000)
libe2p.so.2 => /lib/libe2p.so.2 (0x55599000)
libc.so.6 => /lib/tls/libc.so.6 (0x5559e000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x55555000)
$ ldd /usr/bin/awk
linux-gate.so.1 => (0x00000000)
libm.so.6 => /lib/tls/libm.so.6 (0x55575000)
libc.so.6 => /lib/tls/libc.so.6 (0x55598000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x55555000)
A tu je problem. Neviem, kde sa tam nabrala ta vazba na nejaku kniznicu
'linux-gate.so.1'. V systeme nie je programy funguju aj ked tam nie je.
mkinitrd pada na tom, ze sa pokusa skopirovat subor 0x00000000, ktory
samozrejme neexistuje.
Obisiel som to kamenarskym kladivom:
for i in `ldd /sbin/tune2fs /usr/bin/awk | sort -u | awk '{print $3}' | grep -v
0x000000`
Sice pri instalacii este zahlasi chyby ohladom suboru 0x00000000, ale
initrd.img uz vygeneruje a system aj funguje.
Problem bude asi s 'ldd'. Hlasi mi to na kazdu dynamicky linkovanu
binarku. Neviem, kedy som ju upgradoval, a neviem ci je to upgradom.
$ ldd /sbin/init
linux-gate.so.1 => (0x00000000)
libc.so.6 => /lib/tls/libc.so.6 (0x55575000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x55555000)
$ ldd /usr/bin/ldd
not a dynamic executable
Druha vec je vo chvilach beznadeje som sa pokusal kompilovat si teda
vlastne jadro a bez initrd.img.
Bezim na systeme:
# cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 4
model name : AMD Athlon(tm) 64 Processor 3000+
stepping : 10
ale na Debian i386 (Skusal som aj AMD64, ale to je este silne nestabilne
a po dvoch tyzdnoch pouzivania sa mi to rozpadlo na poskodenie
zakladnych kniznic pri upgrade. Nie len ze som to nemohol nabootovat ani
do single - /bin/bash, ale ani chroot do toho Debianu sa nepodaril).
konfiguracie prebehne vporiadku. (V Gentoo som aj skompiloval jadro, ale
to nebolo schopne rozumne komunikovat s niektorymi systemovymi
aplikaciami - napr. ifconfig.) Kompilacia tohoto nakonfigurovaneho
jadra, ale skonci hned na zaciatku s hlaskou:
# make
CHK include/linux/version.h
CC scripts/mod/empty.o
cc1: error: code model `kernel' not supported in the 32 bit mode
make[2]: *** [scripts/mod/empty.o] Error 1
make[1]: *** [scripts/mod] Error 2
make: *** [scripts] Error 2
A tu som sa zasekol. Nech som sa akokolvek pokusal tu kompilaciu
rozbehnut, tak som sa zastavil na tejto, pripadne som sa prebojoval
trosku dalej a zastavil som sa na podobnej hlaske. Ako sa na takejto
kombinacii HW vs SW kompiluje jadro? Jadro je cerstvo stiahnute z
www.kernel.org (to iste mi urobilo 2.6.9 predtym vpohode kompilovane a
pouzivane na GNU/Debian AMD64).
Vdaka za rady.
--
Marian Cavojsky <cavojsky @ soria-grey.sk>
Spravca siete, Soria & Grey s.r.o, reklamna agentura
Partial thread listing: