2013-04-03 113 views
1

我正在嘗試安裝Xeon Phi協處理器。具體行爲可能與涉及的工具有關 - 我的問題具有更一般的性質。以root用戶身份運行sudo時的環境不同?

當我以root用戶身份執行命令時,出現分段錯誤。當我執行它的根,但(在我看來不必要的)使用sudo,它的工作原理:

i72:~ # whoami 
root 
i72:~ # micctrl -s 
Segmentation fault 
i72:~ # sudo micctrl -s 
[no segfault] 

會有什麼差異micctrl正在被運行環境?

(編輯:)我想我們排除了下面的一個選項的環境變量。

該系統是一個SLES 11.2。

謝謝!

回答

2

sudo從環境中刪除LD_LIBRARY_PATH,LD_PRELOAD(我懷疑它對於root用戶以及普通用戶都是如此)。 這可能會導致程序加載不同的庫。

須藤可以將其重置/哪些變量配置清零 - 見http://brandonhutchinson.com/wiki/Sudo_and_environment_variables

+0

謝謝。環境變量是一個好主意。 'env -i bash'應該重新創建'sudo'使用的相同環境,對吧?但是,在這種情況下,'micctrl -s'會再次發生段錯誤。 – mrks

+2

@mdsl我會去'sudo bash',然後運行'micctrl -s'並檢查。 –

+0

沒有。相同的段錯誤。 :/ – mrks

1

原來,須藤只是隱藏了「段錯誤」的消息。它仍然發生,但不會顯示在終端上。我們發現,因爲micctrl從來沒有給我們任何輸出,即使它應該有。

編輯:另外,如果有人應該運行與micctrl問題:在我們的例子中,披不正確被系統識別。 lspci發現它,但它並未在/sys/class/mic中列出。

相關問題