So this morning I had to make a house call to fix a proffessor’s server that works their thin client system. Its an older dell workstation running CentOS with Sun Ray Server that exports the desktop to the thin clients. Kinda nifty when it works and this morning it wasn’t working.
Problem 1 was the prof installed a newer version of Java, which happened to be 64bit and SRSS requires 32bit java. I switched the system back to the old version but it still didn’t like that. So reinstall SRSS! Luckily it isn’t that hard to do and poof we are back in bussiness.
Then problem 2 happens. Firefox doesn’t want to work. I’m stumped because as root and as my own user it works, so why not for the prof’s user? So I use strace, which prints out way too much info, so I use ‘strace -eopen firefox’ to see what its opening. Its finding the system libraries, but still it just stops as some point and nothing happens, like its waiting. I use lsof to compare firefox working under root and as the prof’s user. Ah ha! The problem was a library used on the clients that was blocking up firefox. libc_ut.so is set under LD_PRELOAD.
This library is used to route audio from the server to the client but looks like for firefox(and research says same for thunderbird), this causes problems as its not fully POSIX compliant and thus firefox fails to start. I edited the firefox script to have ‘unset LD_PRELOAD’ at the beginning and there we go. All better now.