Bug 81793 - can't boot after upgrading to sys-apps/gawk-3.1.4-r2
|
Bug#:
81793
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: major
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: base-system@gentoo.org
|
Reported By: chris@realcomputerguy.com
|
|
Component: Core system
|
|
|
URL:
|
|
Summary: can't boot after upgrading to sys-apps/gawk-3.1.4-r2
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2005-02-12 15:10 0000
|
after upgrading to sys-apps/gawk-3.1.4-r2 system no longer boots
keep getting numerous gawk errors during the boot process which eventually hangs
the oft repeated error is ->
gawk: error while loading shared libraries: libexpat.so.0: cannot open shared object file: no such file or directory
after dropping back to sys-apps/gawk-3.1.3-r2 the system boots normally
Reproducible: Always
Steps to Reproduce:
1.emerge sys-apps/gawk-3.1.4-r2
2.boot
3.
Actual Results:
the errors as detailed above appear, boot process hangs
Expected Results:
system should have booted normally
the error is consistent and repeatable on my desktop but I have no problem at
all with the newer gawk on my laptop
~ # emerge info
Portage 2.0.51-r15 (default-linux/x86/2004.3, gcc-3.4.3,
glibc-2.3.4.20041102-r0, 2.6.10-ck5 i686)
=================================================================
System uname: 2.6.10-ck5 i686 Intel(R) Pentium(R) 4 CPU 2.53GHz
Gentoo Base System version 1.6.9
Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 7 2005, 11:21:35)]
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python: 2.3.4-r1
sys-devel/autoconf: 2.59-r6, 2.13
sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4
sys-devel/binutils: 2.15.92.0.2-r2
sys-devel/libtool: 1.5.10-r4
virtual/os-headers: 2.6.8.1-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe -s"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env
/usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe -s"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig candy ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="ftp://gentoo.mirrors.pair.com http://mirrors.tds.net/gentoo
http://open-systems.ufl.edu/mirrors/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X aalib acl acpi alsa apache2 arts audiofile avi bash-completion berkdb
bitmap-fonts bonobo cdparanoia cdr crypt cups curl divx4linux dv dvd dvdr encode
esd f77 fam flac font-server fortran gdbm gif gphoto2 gpm gstreamer gtk gtk2
gtkhtml guile imagemagick imap imlib ipv6 jack java jpeg jpeg2k kde lcms ldap
libg++ libwww mad mikmod mmx motif mozilla mpeg ncurses nls nptl odbc oggvorbis
opengl oss pam pda pdflib perl png ppds python qt quicktime readline samba sasl
scanner sdl slang spell sse ssl svg svga tcltk tcpd tetex theora threads tiff
truetype truetype-fonts type1-fonts unicode usb wmf xine xml xml2 xmms xv zlib"
Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS
I got this too. It seems the new gawk links dynamically to /usr/lib/libexpat,
so startup scripts that use gawk before /usr is mounted fail.
I have the same thing.
The system drops to a login prompt after starting what it can with the filesystem readonly (unable to init /etc/mtab)
emerge info:
Portage 2.0.51-r15 (default-linux/x86/2004.3, gcc-3.4.3, glibc-2.3.4.20041102-r0
, 2.6.10-morph22 i686)
=================================================================
System uname: 2.6.10-morph22 i686 AMD Athlon(tm) 2600+
Gentoo Base System version 1.6.9
Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 8 2005, 17:29:29)
]
ccache version 2.3 [enabled]
dev-lang/python: 2.3.4-r1
sys-devel/autoconf: 2.59-r6, 2.13
sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4
sys-devel/binutils: 2.15.92.0.2-r1, 2.15.92.0.2-r2
sys-devel/libtool: 1.5.10-r4
virtual/os-headers: 2.6.8.1-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=athlon-xp -pipe -fstack-protector"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share
/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/shar
e/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=athlon-xp -pipe -fstack-protector"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/
distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/home/portage"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X aalib alsa apm avi berkdb bitmap-fonts cdr cfq-ts crypt cups divx div
x4linux dvd encode f77 fam flac font-server foomatic foomaticdb fortran gdbm gif
gimpprint gpm gtk gtk2 imagemagick imlib ipv6 java jpeg libg++ libwww live mad
mikmod mmx motif mozilla mpeg nas ncurses nls nptl offensive oggvorbis opengl os
s pam pdflib perl pic png posix ppds python quicktime readline samba sdl spell s
se ssl staircase svga tcltk tcpd tiff truetype truetype-fonts type1-fonts unicod
e usb xml xml2 xmms xpm xv zlib"
Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS
*** Bug 81817 has been marked as a duplicate of this bug. ***
I think you're having the same problem described in bug # 81823.
*** Bug 81823 has been marked as a duplicate of this bug. ***
I simply copied libexpat* from /usr/lib to /lib
Why is this ebuild not masked? If not an unbootable system, what makes an
ebuild qualify for masking?
Applying it to a remote system could be reasonably catastrophic. Shouldn't it
be masked until it's resolved?
The issue is that sys-apps/gawk-3.1.4-r2 in /bin depends on dev-libs/expat in
/usr/lib.
The latest (-r2 only) version gawk depends on libexpat:
$ ldd /bin/gawk
linux-gate.so.1 => (0xffffe000)
libdl.so.2 => /lib/libdl.so.2 (0x4aa6a000)
libm.so.6 => /lib/libm.so.6 (0x4ab5b000)
libexpat.so.0 => /usr/lib/libexpat.so.0 (0x4ac6d000)
libc.so.6 => /lib/libc.so.6 (0x4a940000)
/lib/ld-linux.so.2 (0x4a926000)
This make my late sytem boot become big mess. I managed to login, but root
filesystem was mounted read only. I had to "mount -o remount,rw /" and "cp -a
/usr/lib/libexpat* /lib" in order to be able to boot it again.
Two choices:
- moving gawk into the land of /usr and remove the use of gawk in the init
script until /usr is accessible.
- moving libexpat into the land of /
Thanks for fixing this thing quickly.
The origin of this bug is the patch proposed in enhancement proposal bug
#57857.
(From update of attachment 51172 [details])
removal of awk from /sbin/rc will be a feature for the future, not for the
current baselayout
Personally I'd like to see gentoo sometime in the future adopt mawk (GPL-2).
Frankly, gawk is bloated and slow. mawk can run circles around gawk. Of all the
ebuilds and system files I've seen that call gawk specifically, not one has
actually used a gawk specific extension. Of course on a gentoo system and most
other linux distros awk is a symlink to gawk and so it doesn't matter if you
call awk or gawk -- gawk still gets executed. It would seem more fitting for a
lean and mean distro such as gentoo to use a lean and mean version of awk and
not some slow wimp version. :) One day I would really like to see gentoo link
awk to mawk but keep gawk as an aside (even though I've never seen anything in
gentoo actually use a gawk specific extension).
*** Bug 82046 has been marked as a duplicate of this bug. ***
assuming we dont have problems refering to 'awk' in baselayout, you could in
theory just update the /bin/awk symlink to point to mawk ... regardless,
gawk-3.1.4-r3 is now in portage ... it'll build gawk twice if USE=xml, that
way we get the normal gawk w/out libexpat requirements in /bin while the xml
peeps get their 'xmlgawk' in /usr/bin
shew.. nice work. :) My fancy for awk didn't want to see it removed anyway. :)
*** Bug 82096 has been marked as a duplicate of this bug. ***
*** Bug 82137 has been marked as a duplicate of this bug. ***
*** Bug 82263 has been marked as a duplicate of this bug. ***
*** Bug 82853 has been marked as a duplicate of this bug. ***
*sigh* at least i am not the only one who has submitted this bug as duplicate
:)