2012-06-15 49 views
0

如何在shell腳本中執行以下操作?在shell腳本中使用su

$ su my_user 
Password: my_password 

這是必需的,因爲我需要在Mac上安裝homebrew,它不會讓我sudo下進行安裝,但需要我有管理員權限。

$ sudo /usr/bin/ruby -e "$(/usr/bin/curl -fsSL https://raw.github.com/mxcl/homebrew/master/Library/Contributions/install_homebrew.rb)" 
Password: 
Don't run this as root! 

爲什麼我不能運行這個作爲當前用戶(誰是不是管理員) -

$ /usr/bin/ruby -e "$(/usr/bin/curl -fsSL https://raw.github.com/mxcl/homebrew/master/Library/Contributions/install_homebrew.rb)" 
This script requires the user to be an Administrator. If this 
sucks for you then you can install Homebrew in your home directory or however 
you please; please refer to our homepage. If you still want to use this script 
set your user to be an Administrator in System Preferences or `su' to a 
non-root user with Administrator privileges. 

它不是作爲管理員運行該腳本將被記錄在一個選項,我必須在腳本中使用su

+0

以root權限運行腳本是沒有選擇的? – xmoex

+0

sudo不只是做根。 'sudo -u username'讓你以不同的非root用戶身份運行某個東西 –

+1

真正的問題看起來像是* not *「我如何在shell腳本中運行su?」,但是「我怎麼做在Mac上安裝Homebrew,因爲它不會以自己的身份運行,或者以root身份運行? - 這是完全不同的問題。 –

回答

2

在一個mac,root和管理員之間有區別。管理員大致轉換爲標準Unix/Linux系統上的wheel組,這意味着「管理員」組中的那些人可以使用他們的密碼(àla sudo)獲得較高的權限。確保您嘗試運行的用戶是管理員:單擊左上角的蘋果菜單,系統首選項,用戶組&。它應該在你的名字下面寫上「Admin」;如果沒有,那就是你的問題。點擊窗口左下方的鎖,在機器上輸入管理員帳戶的用戶名和密碼,點擊你的用戶,然後選中「允許用戶管理這臺計算機」框。