Linux

CentOS 中的 su 和 su - 有什麼區別?

  • April 22, 2015

我試圖通過執行在 CentOS 中切換到“root” su。它確實更改為“root”,但它似乎不是真正的“root”使用者。

例如,預設情況下,對於普通使用者,在路徑中找不到ifconfigcommand in ,但對於“root”,可以找到該命令。/sbin當我執行時,當我嘗試執行時su仍然會得到輸出。bash: ifconfig: command not found``ifconfig

但是,當我執行時su -ifconfig它就可以工作。

suCentOS和CentOS有什麼區別su -

添加該-選項會影響您的環境行為。出於所有實際目的,環境已完全重置。通常,您可能希望使用su -而不是 plain su。從手冊頁:

-l      Simulate a full login.  The environment is discarded except for HOME, SHELL, PATH, TERM, and USER.  HOME and SHELL are modified as above.
        USER is set to the target login.  PATH is set to ``/bin:/usr/bin''.  TERM is imported from your current environment.  The invoked shell is
        the target login's, and su will change directory to the target login's home directory.

-       (no letter) The same as -l.

引用自:https://serverfault.com/questions/108000