<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>47482</bug_id>
          
          <creation_ts>2004-04-10 22:09 0000</creation_ts>
          <short_desc>libs from /usr referenced in /bin and /lib</short_desc>
          <delta_ts>2005-02-13 23:59:16 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Core system</component>
          <version>2004.0</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P1</priority>
          <bug_severity>critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>das@teegra.net</reporter>
          <assigned_to>qa@gentoo.org</assigned_to>
          <cc>base-system@gentoo.org</cc>
    
    <cc>mr_bones_@gentoo.org</cc>
    
    <cc>x86-kernel@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>das@teegra.net</who>
            <bug_when>2004-04-10 22:09:51 0000</bug_when>
            <thetext>I&apos;m using Gentoo Base System version 1.4.3.13 on amd64.

There are items in /bin, /sbin, and /lib that reference items in /usr.
This can problematic for scripts that run at boot time. I&apos;m trying to track down a problem in a boot script that I can&apos;t recreate when /usr is mounted, and I believe this might be a source of the problem. Even if it is not, it is not correct ro reference libraries from /usr in /bin, /lib, and /sbin. 

# pwd
/lib
# ls -l | grep /usr
lrwxrwxrwx    1 root     root           17 Mar 13 13:37 libacl.a -&gt; /usr/lib/libacl.a
lrwxrwxrwx    1 root     root           18 Mar 13 13:37 libacl.la -&gt; /usr/lib/libacl.la
lrwxrwxrwx    1 root     root           18 Mar 13 13:37 libattr.a -&gt; /usr/lib/libattr.a
lrwxrwxrwx    1 root     root           19 Mar 13 13:37 libattr.la -&gt; /usr/lib/libattr.la

# pwd
/sbin
# ldd * | grep /usr
        libmng.so.1 =&gt; /usr/lib/libmng.so.1 (0x0000002a9566a000)
        libjpeg.so.62 =&gt; /usr/lib/libjpeg.so.62 (0x0000002a95c9f000)
        libfreetype.so.6 =&gt; /usr/lib/libfreetype.so.6 (0x0000002a9566a000)
        libldap.so.2 =&gt; /usr/lib/libldap.so.2 (0x0000002a959b7000)
        liblber.so.2 =&gt; /usr/lib/liblber.so.2 (0x0000002a95aec000)
        libsasl2.so.2 =&gt; /usr/lib/libsasl2.so.2 (0x0000002a95f47000)
        libssl.so.0.9.7 =&gt; /usr/lib/libssl.so.0.9.7 (0x0000002a9605d000)
        libcrypto.so.0.9.7 =&gt; /usr/lib/libcrypto.so.0.9.7 (0x0000002a96193000)
        libwrap.so.0 =&gt; /usr/lib/libwrap.so.0 (0x0000002a9566a000)

# pwd
/bin
# ldd * | grep /usr
        libattr.so.1 =&gt; /usr/lib/libattr.so.1 (0x0000002a95770000)
        libattr.so.1 =&gt; /usr/lib/libattr.so.1 (0x0000002a95c55000)
        libcrack.so.2 =&gt; /usr/lib/libcrack.so.2 (0x0000002a9579d000)
        libattr.so.1 =&gt; /usr/lib/libattr.so.1 (0x0000002a95770000)
        libattr.so.1 =&gt; /usr/lib/libattr.so.1 (0x0000002a95c55000)
        libattr.so.1 =&gt; /usr/lib/libattr.so.1 (0x0000002a95770000)
        libcrack.so.2 =&gt; /usr/lib/libcrack.so.2 (0x0000002a9579d000)
        libattr.so.1 =&gt; /usr/lib/libattr.so.1 (0x0000002a95c55000)</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>das@teegra.net</who>
            <bug_when>2004-04-10 22:53:24 0000</bug_when>
            <thetext>After copying the missing libraries via &quot;cp $(ldd /bin/* /sbin/* | grep /usr | awk &apos;{print $3}&apos; | sort -u) /lib&quot; my boot script problems went away. I was getting a &quot;Failed to calculate module dependencies&quot; error, and nothing I did was fixing it, until I tracked it down to a library problem.

This a serious problem, so I&apos;m upping the severity and priority.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>seemant@gentoo.org</who>
            <bug_when>2004-04-11 01:17:16 0000</bug_when>
            <thetext>wow, that&apos;s terrible with the attr and acl stuff -- I&apos;m very very sorry -- I&apos;ll fix this asap</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dragonheart@gentoo.org</who>
            <bug_when>2004-04-23 19:22:29 0000</bug_when>
            <thetext>(ldd /sbin/* /bin/* | cut -f 3 -d &apos; &apos; | grep -E ^/usr/lib | xargs -n1 qpkg -f -v | sort | uniq)
media-libs/freetype-2.1.5-r1 *
media-libs/libmng-1.0.4 *
sys-devel/binutils-2.14.90.0.7-r4 *
sys-libs/cracklib-2.7-r8 *
sys-libs/zlib-1.1.4-r2 *

media-libs/jpeg-6b-r3 *
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>solar@gentoo.org</who>
            <bug_when>2004-04-23 19:36:51 0000</bug_when>
            <thetext>Please POST your USE flags.

If you have USE=&quot;acl&quot; then you can expect libacl to be there.
If you have USE=&quot;ssl&quot; then you can expect things in lib to be linked to things in 
/usr/lib to be there.

Can we try this with USE=&quot;-*&quot; and work our way back from that please?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dragonheart@gentoo.org</who>
            <bug_when>2004-04-23 20:36:15 0000</bug_when>
            <thetext>I thinks my logic is very wrong. Will get some sleep and work this out properly. Good idea with the USE assignment solar.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>das@teegra.net</who>
            <bug_when>2004-04-23 22:09:07 0000</bug_when>
            <thetext>Ok, this is a different system, also Gentoo on amd64

/bin # cat /etc/gentoo-release 
Gentoo Base System version 1.4.9

/bin # cat /proc/version 
Linux version 2.6.5-gentoo-r1 (root@livecd) (gcc version 3.3.3 20040217 (Gentoo Linux 3.3.3, propolice-3.3-7)) #1 Mon Apr 19 21:48:26 CDT 2004

/bin # ldd * | grep /usr
        libcrack.so.2 =&gt; /usr/lib/libcrack.so.2 (0x0000002a9579d000)
        libcrack.so.2 =&gt; /usr/lib/libcrack.so.2 (0x0000002a9579d000)

/bin # qpkg -f /usr/lib/libcrack.so.2
sys-libs/cracklib

/sbin # ldd * | grep /usr
        libmng.so.1 =&gt; /usr/lib/libmng.so.1 (0x0000002a9566a000)
        libjpeg.so.62 =&gt; /usr/lib/libjpeg.so.62 (0x0000002a95c9f000)
        libfreetype.so.6 =&gt; /usr/lib/libfreetype.so.6 (0x0000002a9566a000)

/lib # ls -l | grep /usr
lrwxrwxrwx  1 root root      17 Apr 19 01:36 libacl.a -&gt; /usr/lib/libacl.a
lrwxrwxrwx  1 root root      18 Apr 19 01:36 libacl.la -&gt; /usr/lib/libacl.la

/lib # qpkg -f /usr/lib/libacl.a
sys-apps/acl *

USE=&quot;-3dfx 3dnow -aalib -accessibility acl acpi -afs -adns -aim -alsa
-altivec apache2 apm -arts -atlas -audiofile -avi berkdb -bidi -bonobo
-canna caps -cdr -cjk crypt -cscope -cups -curl -debug -dedicated -dga
-directfb -doc -dvb -dvd -dvdr -emacs -emacs-w3 -encode -esd ethereal
-evo -fam fastcgi fbcon -fdftk -fftw -firebird -flac -flash -foomaticdb
-freetds -freewnn -gb -gd -gd-external -gdbm -ggi -gif -ginac -gmp
-gnome -gphoto2 -gpm -gps -gstreamer -gtk -gtk2 -gtkhtml -guile
hardened -icc -icc-pgo -icq imap -imagemagick -imlib -innodb -informix
ipv6 -jabber -jack -java -jikes -joystick -jpeg -junit -kde -kerberos
-krb4 -ladcca -lcms -ldap -leim -libg++ -libgda -libwww -lirc -mad
maildir -matrox mbox -mcal -mikmod memlimit mmx -motif -lesstif
-mozilla -mpeg -mpi -msn -mule -mysql -nas ncurses -nhc98 -netcdf -nls
-nocardbus nocd -oci8 -odbc -offensive -oggvorbis -opengl -oscar -oss
pam -pcmcia -pda -ppds -pdflib perl -plotutils -png -pnp -postgres
-bindist prelude python -qt -quicktime readline ruby -samba sasl
-scanner -sdl slang -slp -snmp -socks5 -speex -spell sse ssl -sqlite
-svga -tcltk tcpd -tetex -theora -tiff -truetype -trusted -unicode usb
vhosts -videos -voodoo3 -wavelan -wmf -wxwindows -X -Xaw3d -xface
-xinerama -xosd xml xml2 -xmms -xv -yahoo -yaz -zeo zlib&quot;</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-04-23 22:13:37 0000</bug_when>
            <thetext>ok, that shows us that we got *something* in /{bin,lib} linking with /usr, but you didnt show us *what*</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>das@teegra.net</who>
            <bug_when>2004-04-23 22:31:49 0000</bug_when>
            <thetext>/bin

groups:
        libcrypt.so.1 =&gt; /lib/libcrypt.so.1 (0x0000002a9566a000)
        libcrack.so.2 =&gt; /usr/lib/libcrack.so.2 (0x0000002a9579d000)
        libc.so.6 =&gt; /lib/libc.so.6 (0x0000002a958aa000)
        /lib64/ld-linux-x86-64.so.2 =&gt; /lib64/ld-linux-x86-64.so.2 (0x0000002a95556000)

su:
        libcrypt.so.1 =&gt; /lib/libcrypt.so.1 (0x0000002a9566a000)
        libcrack.so.2 =&gt; /usr/lib/libcrack.so.2 (0x0000002a9579d000)
        libpam.so.0 =&gt; /lib/libpam.so.0 (0x0000002a958aa000)
        libpam_misc.so.0 =&gt; /lib/libpam_misc.so.0 (0x0000002a959b2000)
        libc.so.6 =&gt; /lib/libc.so.6 (0x0000002a95ab5000)
        libdl.so.2 =&gt; /lib/libdl.so.2 (0x0000002a95cee000)
        /lib64/ld-linux-x86-64.so.2 =&gt; /lib64/ld-linux-x86-64.so.2 (0x0000002a95556000)

/sbin

fbmngplay:
        libmng.so.1 =&gt; /usr/lib/libmng.so.1 (0x0000002a9566a000)
        libz.so.1 =&gt; /lib/libz.so.1 (0x0000002a957cf000)
        libm.so.6 =&gt; /lib/libm.so.6 (0x0000002a958e3000)
        libc.so.6 =&gt; /lib/libc.so.6 (0x0000002a95a67000)
        libjpeg.so.62 =&gt; /usr/lib/libjpeg.so.62 (0x0000002a95c9f000)
        /lib64/ld-linux-x86-64.so.2 =&gt; /lib64/ld-linux-x86-64.so.2 (0x0000002a95556000)

fbtruetype:
        libfreetype.so.6 =&gt; /usr/lib/libfreetype.so.6 (0x0000002a9566a000)
        libm.so.6 =&gt; /lib/libm.so.6 (0x0000002a957f4000)
        libc.so.6 =&gt; /lib/libc.so.6 (0x0000002a95979000)
        libz.so.1 =&gt; /lib/libz.so.1 (0x0000002a95bb1000)
        /lib64/ld-linux-x86-64.so.2 =&gt; /lib64/ld-linux-x86-64.so.2 (0x0000002a95556000)
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2004-04-23 23:24:55 0000</bug_when>
            <thetext>cracklib is fixed now. libcrack.so* is placed into /lib.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-04-23 23:25:31 0000</bug_when>
            <thetext>dunno about you guys but i think it&apos;d be safe to say we can move fbmngplay and fbtruetype into /usr/sbin/</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2004-04-23 23:28:10 0000</bug_when>
            <thetext>vapier: i don&apos;t use fb on any machine, so it&apos;s really no water off my back.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dragonheart@gentoo.org</who>
            <bug_when>2004-04-24 01:20:45 0000</bug_when>
            <thetext>/sbin/ksymoops: sys-kernel/ksymoops (plasmaroo@gentoo.org ,x86-kernel@gentoo.org)
        libbfd-2.14.90.0.7.so =&gt; /usr/lib/libbfd-2.14.90.0.7.so (0x4001e000)

/sbin/mkfs.cramfs: (base-system)
        libz.so.1 =&gt; /usr/lib/libz.so.1 (0x4001e000)

/sbin/fsck.cramfs: (base-system)
       libz.so.1 =&gt; /usr/lib/libz.so.1 (0x4001e000)

should check /lib too - mine turned up clean though.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dragonheart@gentoo.org</who>
            <bug_when>2004-04-24 01:25:37 0000</bug_when>
            <thetext>Apologies to parties erroneously added.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2004-04-24 01:35:21 0000</bug_when>
            <thetext>zlib is already in /lib

/sbin/ksymoops should probably move to /usr/sbin
i don&apos;t see much need for it on a minimal system 
libbfd is large and I don&apos;t think it should go on the root fs anyway.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>spider@gentoo.org</who>
            <bug_when>2004-04-24 02:46:06 0000</bug_when>
            <thetext>about fbmng:
its used for the animations shown in bootsplash, I think that putting libmng and its deps in /lib is too much and too far, so this should probably be handed off to the bootsplash related folks</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2004-08-14 16:11:58 0000</bug_when>
            <thetext>plasmaroo: could ksymoops be installed in /usr/sbin instead of /sbin ?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>plasmaroo@gentoo.org</who>
            <bug_when>2004-08-14 16:24:39 0000</bug_when>
            <thetext>Done, ksymoops moved to /usr/bin.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dragonheart@gentoo.org</who>
            <bug_when>2004-10-01 19:04:01 0000</bug_when>
            <thetext>is there anything left to fix here?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2004-12-13 22:48:30 0000</bug_when>
            <thetext>I do think we can leave some this stuff, as it&apos;s now unlikely that you won&apos;t have /usr available for some of these, and the overhead of moving the libraries into /lib is getting too large anyway.

The NUT stuff could move into /usr and likewise for arpd.

/sbin/fbmngplay: media-gfx/bootsplash
        libmng.so.1 =&gt; /usr/lib/libmng.so.1 (0xb7f7b000)
        libjpeg.so.62 =&gt; /usr/lib/libjpeg.so.62 (0xb7e02000)
/sbin/fbtruetype: media-gfx/bootsplash
        libfreetype.so.6 =&gt; /usr/lib/libfreetype.so.6 (0x415e1000)
/sbin/arpd: sys-apps/iproute2
        libdb-4.2.so =&gt; /usr/lib/libdb-4.2.so (0xb7f05000)
/lib/security/pam_smbpass.so: net-fs/samba
        libcrypt.so.1 =&gt; /usr/lib/libcrypt.so.1 (0xb7ef7000)
        libresolv.so.2 =&gt; /usr/lib/libresolv.so.2 (0xb7ee3000)
        libnsl.so.1 =&gt; /usr/lib/libnsl.so.1 (0xb7ecc000)
        libdl.so.2 =&gt; /usr/lib/libdl.so.2 (0xb7ec8000)
/lib/libnss_ldap-2.3.2.so: net-libs/nss_ldap
        libldap.so.2 =&gt; /usr/lib/libldap.so.2 (0xb1e23000)
        liblber.so.2 =&gt; /usr/lib/liblber.so.2 (0xb3f15000)
        libdb-4.1.so =&gt; /usr/lib/libdb-4.1.so (0xb7f15000)
/lib/nut/newhidups: www-apps/nut
        libusb-0.1.so.4 =&gt; /usr/lib/libusb-0.1.so.4 (0xb7fcf000)
/lib/nut/snmp-ups: www-apps/nut
        libnetsnmp.so.5 =&gt; /usr/lib/libnetsnmp.so.5 (0xb7f30000)
        libcrypto.so.0.9.7 =&gt; /usr/lib/libcrypto.so.0.9.7 (0xb7e36000)
        libelf.so.1 =&gt; /usr/lib/libelf.so.1 (0xb7e24000)
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vapier@gentoo.org</who>
            <bug_when>2004-12-14 05:44:05 0000</bug_when>
            <thetext>we&apos;ve already covered bootsplash ... it cant move :P

also, i&apos;m pretty sure the pam stuff has to stay in /lib/security/</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2005-02-13 23:59:16 0000</bug_when>
            <thetext>nut and iproute2&apos;s arpd are fixed.
I think we can close this now, as there is nothing else (on my systems at least) that can be moved out of the root filesystem.</thetext>
          </long_desc>
      
    </bug>

</bugzilla>