Try changing your xterm invocation to be: osso-xterm -e "ruby1.8 /home/user/msf3/msfconsole -L; sleep 10" & That should keep the xterm open long enough for you to read the error message. If that doesn't work, try this one: osso-xterm -e "ruby1.8 /home/user/msf3/msfconsole -L > /home/user/MyDocs/ruby.log 2>&1" & which ought to leave all error messages in ~/MyDocs/ruby.log.