LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 03-13-2010, 04:29 PM   #46
rmjohnso
Member
 
Registered: Mar 2006
Location: Wisconsin
Distribution: Slackware64-Current
Posts: 294

Rep: Reputation: 43

I just ran the script, and I *think* I found a few bugs.

First, I have sbopkg installed. When the script checks /var/lib, I have the following in my log under Round 2:

Code:
# Evaluating libraries in: /var/lib
2:> Orphan library: /var/lib/README.source
2:> Orphan library: /var/lib/wrapper_i686.songbird
2:> Orphan library: /var/lib/wrapper_x86_64.songbird
These files are actually in:
/var/lib/sbopkg/SBo/13.0/system/crikey/README.source
/var/lib/sbopkg/SBo/13.0/multimedia/Songbird/wrapper_i686.songbird
/var/lib/sbopkg/SBo/13.0/multimedia/Songbird/wrapper_x86_64.songbird

It seems like these are false positives. Can the script be set to ignore anything in /var/lib/sbopkg since these aren't necessarily installed libraries or binaries?

Second, under Round 3, the log reports the following as an orphan binary:
/boot/initrd-tree/bin/busybox

Since this is created by running mkinitrd, this is probably another false positive.
 
Old 03-13-2010, 04:33 PM   #47
rmjohnso
Member
 
Registered: Mar 2006
Location: Wisconsin
Distribution: Slackware64-Current
Posts: 294

Rep: Reputation: 43
Sorry to post back-to-back, but this is about feature requests.

Would it be possible to do the following:

1. When each search round is executed have some sort of percentage complete displayed on the console?
2. For missing dependencies, an attempt to cross reference against the official Slackware packages and offer a suggestion to the user?

I'm sure it's a lot harder than I think it is. If it's difficult or not possible, no worries. It's a very useful script, Sasha.
 
Old 03-13-2010, 04:48 PM   #48
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
Anything it possible when one sets the mind to it

I appreciate the input, and will consider post of your above posts, and see if I can figure out what's going on.

Off top of my head, I suspect that your first item above, about the SBO things, is something to do with symlinks, but not sure yet.

Item #2 -- busybox would qualify as a static binary, so technically it was detected correctly, however I should probably omit the /boot path from the scans, since there really shouldn't be any libs or binaries in there (normally). I have a few non-standard dir trees in my root directory too, so I get some false positives there too. I'll take care of that and remove the /boot path from the search.

As for the percentage of done-ness, I didn't implement it because if I did do it, I would want to do it *right*, and doing it *right* causes almost double the system resources to be consumed (stuff must be initially counted, and THEN counted again to actually do the work) calculating the done-ness in a real-time fashion; I could do it the "cheap" way, and simply tell the user that we are either 25%, 50% or 75% done, but each quarter is definitely not exactly 25% of the whole job, so I opted not to do that; This is why I chose to just make "some sort" of arbitrary visual output. I will however see if I can fine-tune it a bit so the output is maybe more meaningful.

Thank you! I'll look into these things.

Sasha
 
Old 03-13-2010, 06:16 PM   #49
ROXR
Member
 
Registered: Jan 2009
Location: Spain
Posts: 122
Blog Entries: 1

Rep: Reputation: 21
Tanks to orphans.sh I could locate error with libpixman, it was an error for duplicate library's.
The script is very well and I think add it to my next slackware installer.

Very thanks GrapefruiTgirl
 
Old 03-14-2010, 12:34 AM   #50
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
New version, with some enhancements inspired by feedback above from rmjohnso and others.

Version 1.05 -- Sun Mar 14 06:37:11 UTC 2010
Version 1.05.1 -- Sun Mar 14 10:08:43 UTC 2010 -- tiny cosmetic bug fix -- you won't even notice.


Last edited by GrapefruiTgirl; 03-14-2010 at 04:59 AM.
 
Old 03-14-2010, 11:11 AM   #51
rmjohnso
Member
 
Registered: Mar 2006
Location: Wisconsin
Distribution: Slackware64-Current
Posts: 294

Rep: Reputation: 43
Sasha, the progress indicators look good. Thanks for adding those.

A few other things:
1. The script is now finding orphans for .so files in /boot/initrd-tree/lib64.
2. BusyBox still shows as an orphan in /boot/initrd-tree/bin.
3. I have nvidia drivers installed via the nvidia script (no package). Previous versions of the script didn't report anything in /var/lib/nvidia, but this new version does now. I'm not sure if this is a bug or not. It's just different behavior.

Matt
 
Old 03-14-2010, 12:47 PM   #52
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
Indeed, Matt you have found a couple more bugs! Thanks for paying attention

1-- I have now removed the /boot/initrd-tree/ paths from all searches. This should fix #1 and #2. I have never used initrd so was not aware of the files/paths created by that.

2-- A couple paths were FOUND but not SEARCHED, including /var/lib -- I have fixed this. It was due to the way I fed the list of paths into the search function.

3-- the /var/lib/nvidia files are correctly found now, but are found using --full and are identified as "Orphaned Binaries" rather than as shared libraries which they actually are. They are reported as binaries simply because of their filenames (at least, on my machine they are named like 001, 002, 010, and things like this, making them not detected as libs in Round #2 which are initially vetted based on filename.)

With this update, version 1.06, which will be uploaded shortly, I am going to include a copy of the output produced on my machine using the --full mode, so we can compare notes and see where that puts us.

Sasha
 
Old 03-14-2010, 01:28 PM   #53
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
Version 1.06 is now posted -- Sun Mar 14 18:28:36 UTC 2010

Sasha
 
Old 03-14-2010, 02:46 PM   #54
rmjohnso
Member
 
Registered: Mar 2006
Location: Wisconsin
Distribution: Slackware64-Current
Posts: 294

Rep: Reputation: 43
Attached are my results from version 1.06. Everything seems correct now, for me at least. I'm not too worried about the missing dependencies since they are for additional features for programs that I don't ever plan on using.

The following lines are a little weird because the missing dependency is installed:
4: Missing dependencies for: /usr/lib64/java/lib/amd64/libjawt.so
4:> Missing: libmawt.so
Attached Files
File Type: log orphans.log (8.7 KB, 8 views)
 
Old 03-14-2010, 02:50 PM   #55
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
Yes, me too -- many of the deps I am missing involve KDE, which won't be around here much longer anyhow -- I just installed enough of it the other day to use KWrite, but I think I'm just going to round up /bin/kwrite and its dependencies, and make a stand-alone package of it. AFAIK that's the only KDE item I really want.

Anyhow, I'm glad it seems to be working as expected for you now and I thank you for the continued feedback you gave.

I'll take a look at your log-file out of curiosity.

I'm not sure what to make of that missing java dep which you say is actually not missing but if you can figure out why it's pseudo-missing, do tell

Sasha
 
Old 03-14-2010, 02:57 PM   #56
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
PS -- Here's what I see about that java lib:

Code:
root@reactor: ldd /usr/lib64/java/lib/amd64/libjawt.so
        linux-vdso.so.1 =>  (0x00007fff9bfff000)
        libawt.so => /usr/lib64/java/lib/amd64/libawt.so (0x00007fcf54aef000)
        libmawt.so => not found
        libjava.so => /usr/lib64/java/lib/amd64/libjava.so (0x00007fcf549a2000)
        libjvm.so => /usr/lib64/libjvm.so (0x00007fcf53f2b000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fcf53bb9000)
        libm.so.6 => /lib64/libm.so.6 (0x00007fcf53936000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007fcf53732000)
        libverify.so => /usr/lib64/java/lib/amd64/libverify.so (0x00007fcf53622000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00007fcf53408000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fcf531eb000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fcf54dc0000)
root@reactor: locate libmawt.so
/usr/lib64/java/lib/amd64/xawt/libmawt.so
/usr/lib64/java/lib/amd64/headless/libmawt.so
/usr/lib64/java/lib/amd64/motif21/libmawt.so
root@reactor:
Which tells me that /usr/lib64/java/lib/amd64/libjawt.so expects that dependency libmawt.so to be in the same directory, but it is actually in one of those 3 directories seen from my `locate` command. So, it's not "missing", but it's not where the libjawt.so expects it to be.

I don't really know what to make of it though
 
Old 03-18-2010, 12:52 AM   #57
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
Version 1.07 now posted (Thu Mar 18 05:56:30 UTC 2010)

I added a --verify option/function, which checks that all items contained within all apparently installed packages, are actually installed where they are supposed to be (i.e. is every piece of every package really installed)

Incidentally, I see a bunch of packages on my system now, from which there are a lot of pieces NOT on my system. Maybe when I fix those packages, my Xorg will work, who knows.. (cross your fingers for me!)

Sasha
 
Old 03-18-2010, 12:56 AM   #58
Didier Spaier
LQ Addict
 
Registered: Nov 2008
Location: Paris, France
Distribution: Slint64-14.2.1.2 on Lenovo Thinkpad W520
Posts: 9,818

Rep: Reputation: Disabled
Quote:
Originally Posted by GrapefruiTgirl View Post
Maybe when I fix those packages, my Xorg will work, who knows.. (cross your fingers for me!)
LOL Sasha, now you are hijacking your own threads

Last edited by Didier Spaier; 03-18-2010 at 12:58 AM.
 
Old 03-18-2010, 12:59 AM   #59
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
LOL, well, this script was created mainly BECAUSE of that other rabid thread's subject, so it's a semi-hijack at best.
 
Old 03-18-2010, 01:31 AM   #60
GrapefruiTgirl
LQ Guru
 
Registered: Dec 2006
Location: underground
Distribution: Slackware64
Posts: 7,594

Original Poster
Rep: Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553Reputation: 553
P.S. -- this is another nvidia-related thing, for which I neglected to put any sort of warning in to the --verify output:

If you see this when using --verify
Code:
v: mesa-7.7-x86_64-3 -- missing /usr/lib64/libGL.so.1.2
Do not reinstall MESA because of that, or you'll hafta reinstall your nvidia driver again (repeat forever -- this could go on until you fall asleep)

Also, there's a weird file (filename full of backslashes, or maybe escaped spaces) in the kbd package, which gets detected as not there, but it actually IS there. I'll look into that.

Finally, the RPM package pops up (for me) because it is missing some directories (I deleted them from my system on purpose) so not *really* worth worrying about!

Sasha
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Moved ALL libraries from /lib to /local/ teaser Linux - Newbie 10 07-25-2008 08:19 AM
Broken symlinks aren't red anymore LocoMojo Slackware 21 11-19-2007 09:24 AM
Removing .a libraries in /usr/lib/ kunkie Linux - General 1 08-27-2005 11:44 PM
Broken symlinks in '/' dir after compile and checkinstall Haiyadragon Slackware 3 02-08-2005 10:55 AM
Broken symlinks technopasta Linux - Software 1 05-29-2004 07:13 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 03:08 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration