歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> (總結)Linux下su與su

(總結)Linux下su與su

日期:2017/3/3 11:51:30   编辑:Linux技術
本人以前一直習慣直接使用root,很少使用su,前幾天才發現su與su -命令是有著本質區別的!大部分Linux發行版的默認賬戶是普通用戶,而更改系統文件或者執行某些命令,需要root身份才能進行,這就需要從當前用戶切換到root用戶。Linux中切換用戶的命令是su或su -。前天我在使用useradd這個命令時,才體會到這兩者的本質區別。如圖:

我首先是用su命令切換到root身份的,但是運行useradd時,出現錯誤:bash: useradd: command not found。google了一下,原因是在這個用su命令切換過來的root用戶上。
su命令和su -命令最大的本質區別就是:前者只是切換了root身份,但Shell環境仍然是普通用戶的Shell;而後者連用戶和Shell環境一起切換成root身份了。只有切換了Shell環境才不會出現PATH環境變量錯誤。su切換成root用戶以後,pwd一下,發現工作目錄仍然是普通用戶的工作目錄;而用su -命令切換以後,工作目錄變成root的工作目錄了。用echo $PATH命令看一下su和su -以後的環境變量有何不同。以此類推,要從當前用戶切換到其它用戶也一樣,應該使用su -命令。如圖:

Linux就是這樣,有時候配置文件多了或者少了一個空格,服務就運行不了。細節問題一定要注意,這樣才能少走彎路!
Copyright © Linux教程網 All Rights Reserved