centos su命令

來源:互聯網
上載者:User

標籤:全路徑   目錄   通用   錯誤   conf   bsp   bash   名稱   https   

  有很多指令都只可以用 root 身份去執行,因此我們需要成為 root 使用者。要這樣做,我們可以使用 su 指令(更替使用者)。su 指令有下列格式:

su - <user>

su <user>
  但我們最經常是用 su 指令來成為 root 使用者:
su - root

su root
如果不指定使用者名稱稱,預設的使用者是 root,因此以上的指令可以縮短為:
su -

su
  然而這兩個指令有不同的特性。‘su <user>‘ 將 <user> 這個身份賦予現時的使用者;而 ‘su- <user>‘ 除了將 <user> 的身份賦予現時的使用者之外,更會將環境設定成 <user> 登入時的環境。很多時候,使用者會單單採用 ‘su‘ 來成為 root,嘗試執行一個指令(例如:ifconfig),然後收到一個 ‘command not found‘ 的錯誤。舉個例子:
su
Password:
ifconfig
bash: ifconfig: command not found
  原因是系統上的普通使用者與 root 使用者有不同的 PATH 環境變數。當你輸入一個 Linux 指令,指令殼會嘗試在使用者的 PATH 內尋找及執行那個指令。它會尋找 PATH 變數內的每個目錄直至找到配對。
  很多時候當使用者在 IRC 或其它地方彙報問題時,他們會被導向此頁。當你要檢測為何找不到某個執行檔時,查看現有的 PATH 很有協助:echo $PATH

  為普通使用者而設的指令多數位於 /usr/bin 及 /bin,偶爾也會在 /usr/local/bin —— 上遊在封裝時預設不會採用 /usr/local/* 路徑。然而,root 的指令多數位於 /usr/sbin 及 /sbin,偶爾也會在 /usr/local/sbin。這亦反映在 root 的 PATH 內。

   當你用 su - 來變成 root 時,你亦會採納 root 的 PATH;反觀只用 su 就會保留使用者的 PATH 值。正因如此,單單用 su 來成為 root 時,執行/usr/local/sbin/、/usr/sbin、或 /sbin 內的指令便會導致 command not found 這個錯誤。要獲得更詳細的解釋,請參閱 bash 的使用手冊(man bash),特別是有關 INVOCATION 及登入指令殼這個部份。

  因此你假若只使用 su,便須要提供指令的全路徑(例如:/sbin/ifconfig),否則請使用su - 來成為 root。
---------------------
蹣跚走路的程式猿
來源:CSDN
原文:16973481
著作權聲明:本文為博主原創文章,轉載請附上博文連結!

centos su命令

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.