由于要學習hadoop,就在ubuntu下創建了一個hadoop用戶,但是 eclipse是在naomi用戶下裝的,在root和naomi用戶下都能正常啟動,但是一旦切換到hadoop用戶,試著啟動eclipse,就會 cannot open display, no PRotocol specify
打開日志文件后的信息為
org.eclipse.swt.SWTError: No more handles[gtk_init_check() failed]
原因:當使用su 到另外一個用戶運行某個程序,而這個程序又要有圖形顯示的時候,就有可能有下面提示:No protocol specified(gedit:14333): Gtk-WARNING **: cannot opendisplay: :0.0這是因為Xserver默認情況下不允許別的用戶的圖形程序的圖形顯示在當前屏幕上. 如果需要別的用戶的圖形顯示在當前屏幕上, 則應以當前登陸的用戶, 也就是切換身份前的用戶(不是hadoop用戶,是root用戶)執行如下命令。xhost +(別忘了空格)
通過執行這條命令,就授予了其它用戶訪問當前屏幕的權限,于是就可以以另外的用戶運行需要運行的程序了
本文參考:http://java-doom.CUOxin.com/blog/1738370
http://blog.csdn.net/unflynaomi/article/details/38340383
新聞熱點
疑難解答
圖片精選