All coreutils binaries segfault, requiring complete reinstall of linux

Neal Rhodes neal at mnopltd.com
Wed Apr 27 14:28:29 UTC 2005


On Wed, Apr 27, 2005 at 11:31:42AM +1000, Steffen Kluge wrote:
> On Tue, 2005-04-26 at 20:00 -0400, Neal Rhodes wrote:
> > The behavior is that ALL binaries in the coreutils 
> > package (ls, ps, mv, rm... really handy)  will "Segmentation Fault".  Even 
> > Basename will segfault before it gets to the "Usage:...." display.
> 
> Just a stab in the dark, of course, but did your Progress installation
> come with its own libc by any chance? Did the installer add something
> like LD_LIBRARY_PATH to root's environment? Or change /etc/ld.so.conf?
> 
> Cheers
> Steffen.

Thanks for the ideas.  No, Progress does not have it's own libraries, and
LD_LIBRARY_PATH is not set in any user's environment, including root, and
/etc/ld.so.conf is the same as other servers... 
	/usr/X11R6/lib
	/usr/lib/mysql

Of interest: although root is running a bash now, it cannot invoke another
one. 

And perhaps another clue: running "strace basename" on both machine that
fails and another FC3 server that works fine...

Root on FAILING MACHINE...
[root at idiot ~]# strace basename
execve("/bin/basename", ["basename"], [/* 25 vars */]) = 0
uname({sys="Linux", node="idiot.mnopltd.com", ...}) = 0
brk(0)                                  = 0x8dcc000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=91859, ...}) = 0
old_mmap(NULL, 91859, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f56000
close(3)                                = 0
open("/lib/tls/i586/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\270\16"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1427604, ...}) = 0
old_mmap(0x11c000, 1125532, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x11c000
mprotect(0x228000, 27804, PROT_NONE)    = 0
old_mmap(0x229000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10c000) = 0x229000
old_mmap(0x22d000, 7324, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x22d000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f55000
mprotect(0x229000, 8192, PROT_READ)     = 0
mprotect(0x118000, 4096, PROT_READ)     = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f558e0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0xb7f56000, 91859)               = 0
brk(0)                                  = 0x8dcc000
brk(0x8dcc01a)                          = 0x8dcc01a
getpid()                                = 22051
open("/proc/22051///////////exe", O_RDONLY) = 3
lseek(3, 12, SEEK_SET)                  = 12
read(3, "TL\0\0", 4)                    = 4
lseek(3, 0, SEEK_END)                   = 22417
lseek(3, 19540, SEEK_SET)               = 19540
brk(0)                                  = 0x8dcc01a
brk(0x8dccb3d)                          = 0x8dccb3d
read(3, "\351o\10\0\0\215v\0U\211\345\353\3X\353s\350\370\377\377"..., 2877) = 2877
close(3)                                = 0
getppid()                               = 22050
fork(
[7]+  Stopped                 strace basename

Non-root user on FAILING MACHINE...
[neal at idiot tls]$ strace basename
execve("/bin/basename", ["basename"], [/* 25 vars */]) = 0
uname({sys="Linux", node="idiot.mnopltd.com", ...}) = 0
brk(0)                                  = 0x804d000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=91859, ...}) = 0
old_mmap(NULL, 91859, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fe9000
close(3)                                = 0
open("/lib/tls/i586/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\270\16"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1427604, ...}) = 0
old_mmap(0x11c000, 1125532, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x11c000
mprotect(0x228000, 27804, PROT_NONE)    = 0
old_mmap(0x229000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10c000) = 0x229000
old_mmap(0x22d000, 7324, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x22d000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fe8000
mprotect(0x229000, 8192, PROT_READ)     = 0
mprotect(0x118000, 4096, PROT_READ)     = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7fe88e0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0xb7fe9000, 91859)               = 0
brk(0)                                  = 0x804d000
brk(0x804d01a)                          = 0x804d01a
getpid()                                = 22077
open("/proc/22077///////////exe", O_RDONLY) = 3
lseek(3, 12, SEEK_SET)                  = 12
read(3, "TL\0\0", 4)                    = 4
lseek(3, 0, SEEK_END)                   = 22417
lseek(3, 19540, SEEK_SET)               = 19540
brk(0)                                  = 0x804d01a
brk(0x804db3d)                          = 0x804db3d
read(3, "\351o\10\0\0\215v\0U\211\345\353\3X\353s\350\370\377\377"..., 2877) = 2877
close(3)                                = 0
getppid()                               = 22076
fork(
[7]+  Stopped                 strace basename


WORKING MACHINE....

[root at tuxman ~]# strace basename
execve("/bin/basename", ["basename"], [/* 22 vars */]) = 0
uname({sys="Linux", node="tuxman.mnopltd.com", ...}) = 0
brk(0)                                  = 0x861d000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=89035, ...}) = 0
old_mmap(NULL, 89035, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f1b000
close(3)                                = 0
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20O!\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1521500, ...}) = 0
old_mmap(0x200000, 1219740, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x200000
mprotect(0x323000, 27804, PROT_NONE)    = 0
old_mmap(0x324000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x123000) = 0x324000
old_mmap(0x328000, 7324, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x328000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f1a000
mprotect(0x324000, 8192, PROT_READ)     = 0
mprotect(0x1fc000, 4096, PROT_READ)     = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f1a8e0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0xb7f1b000, 89035)               = 0
brk(0)                                  = 0x861d000
brk(0x863e000)                          = 0x863e000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=39561088, ...}) = 0
mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7d1a000
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0x226c) = 0xb7d19000
close(3)                                = 0
open("/usr/share/locale/locale.alias", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2528, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7d18000
read(3, "# Locale name alias data base.\n#"..., 4096) = 2528
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0xb7d18000, 4096)                = 0
open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
write(2, "basename: ", 10basename: )              = 10
write(2, "too few arguments", 17too few arguments)       = 17
write(2, "\n", 1
)                       = 1
write(2, "Try `basename --help\' for more i"..., 44Try `basename --help' for more information.
) = 44
exit_group(1)                           = ?


Perhaps someone that better understand the startup initialization process can read 
something into that. 

It looks like on the failed machine a normal user strace looks identical to the root
user.   It does seem odd that when normal user runs "strace basename" on the failed 
machine they do NOT get the usage output, but on the working machine they do. 

> -- 
> fedora-list mailing list
> fedora-list at redhat.com
> To unsubscribe: http://www.redhat.com/mailman/listinfo/fedora-list

-- 
============================================================================
Neal Rhodes                    MNOP Ltd                       (770) 972-5430
President                  4737 Habersham Ridge         fax:  (770) 978-4741
                          Lilburn (atlanta) GA 30047    




More information about the fedora-list mailing list