On 02/08/11 17:24, Petr Macek:
Zdravim,
predem se omlouvam za dost spatne polozeny dotaz, spis jen zkousim,
jestli nekdo nema podobnou zkusenost.
Dokud jsem mel tenhle problem na jednom stroji, bral jsem to jako
nejakou svou chybu a neresil to, ale ted mam stejny problem na 2
strojich a asi za to nemuzu ja :-)

Situace - FreeBSD 7.x (i386) updatnuta na 8.1. Update probehne dobre a
dle doporuceneho postupu, ale po updatu server kazdou chvili spadne na
Fatal trap 12

Ani doporuceny postup bez zjevnych chyb neni zarukou bezproblemoveho upgrade.

Nejcastejsi problem jsou ruzne dynamicke knihovny - nejlepe zapomenute ci ruzne lec stejnojmenne. Do stejne kategorie pak take spadaji pipadne "zapomenute" knihovni override v /etc/libmap.conf

Bohuzel situace je takova, ze na tech strojich moc nemuzu laborovat (oba
jsou mnoho kilometru ode mne, takze jsem jen odstavil named). Snazil
jsem se vygooglit nejakou souvislost, ale nic nemuzu najit a nevim, jak
takovou vec napravit.

Podobnych updatu jsem delal desitky, problem je jen s touto kombinaci.
Nema nekdo podobnou zkusenost? Ja bohuzel momentalne nemam moc casu na
testovani, proto jsem si dovolil takto obecny dotaz.

Ja bych, zvolil bych tento postup -
- smazat obsah /usr/local/lib/compat/pkg
... coz jsou stare zalohy knihoven po upgrade portu - pokud jsou portu aktualizovane, nema zadny z nich legitimni duvod takovy soubor pouzivat

- cd /usr/src ; make delete-old delete-old-libs
... coz zlikviduje knihovny a dalsi soubory, ktere se vyskytovaly v predchozich verzich OS, ne vsak v teto (a plati totez co u prechoziho bodu - neni duvod aby je nekdo pouzival)

- overit, ze dynamicky linkovane programy (zejmena vsechno co je v /bin /sbin /lib /libexec - a tytez adresare v /usr a /usr/local podstromu) neobsahuji odkazu na neexistujici knihovny. To na kazdy zavolas
ldd -f '%A %o %p\n'
zajimaji te dy, ktere obsahuji retezec "not found"

Pokdu takovy najdes, pak jsi prave nasel soubor, ktery patri do nepreinstalovaneho portu, pokud pujde dokonce o soubor ze zakladniho systemu, pak patrne neni pravda, ze upgrade probehl bez problemu (naposled jsem sam resil asi pred hodinou).

 -------------------

Alternativne muze jit po problem "thread versus non-thread" - a zde by mohl pomoci preklad vsech portu.

 -------------------

Jeste mi ale vlastne dochazi, ze ja odpovidma jako by padal nejaky proces - pokud pada cely system (coz jsem z toho nevyrozumel uplne jasne) tak to v knihovnach spis nebude (i kdyz vylouceno to ani tak neni), zde by byly kandidatem potize s loadable modulama (takze vlastne taky dynamicke knihovny, jen kernelove) - zapomenuty stary modul v /boot/modules, neprepistalovany (z jakehokoliv duvodu) v /boot/kernel ...

Ono by trochu vic napovedely udaje z ulozeneho coredumpu - tam je napsano kde kod byl, kdyz to spatlo i "backtrace" nahoru, takze by byla indicie co muze byt vadne ...

Dan
--
FreeBSD mailing list (users-l@freebsd.cz)
http://www.freebsd.cz/listserv/listinfo/users-l

Odpovedet emailem