su的全稱并不是super user,而是switch user,是不是就突然明白了?是切換用戶的意思。su的一般使用方法是su或者su -,兩種方法雖然只差了1個字符,但也是有比較大的差異的。
創新互聯建站專注于彭州企業網站建設,成都響應式網站建設公司,成都商城網站開發。彭州網站建設公司,為彭州等地區提供建站服務。全流程按需定制,專業設計,全程項目跟蹤,創新互聯建站專業和態度為您提供的服務
加入了-參數,就是login-shell的方式,也就是說切換到另一個用戶之后,當前的shell會加載對應的環境變量和各種設置;
如果沒有加入-參數,就是non-login-shell的方式,也就是說當前的shell還是加載切換之前的那個用戶的環境變量以及各種設置。
如果不想因為切換到另一個用戶導致自己在當前用戶下的設置不可用,那么就可以用non-login-shell的方式;如果切換用戶后,需要用到該用戶的各種環境變量,那么使用login-shell方式即可。
su并不是真正地切換用戶,它只是改變身份的一個命令而已,你可以把它當做一種嵌套,當你以root身份執行su yph命令時,下面的命令便會以yph用戶的身份執行,但是值得注意的一點是當前的環境變量、工作目錄等全都沒有改變,也就是說仍在root使用的環境變量中,此時執行pwd查看當前工作目錄應該會輸出“/root”,當再以yph身份執行su - root命令后,你便又是以root身份執行命令了,可是此時的情況應該是:
root環境/yph身份/root身份
即當你輸入logout時便會返回到:“/root環境/ypt身份”下,在此環境再輸入logout則可能會顯示“bash: logout: not login shell: use `exit'”,即當前yph用戶所用的shell中沒有logout,因為logout命令需要以root身份執行,此時正確的做法是執行exit命令,便會到退出到root下,即為剛進入root用戶時的狀態
su表示切換用戶命令命令,如:
輸入:su命令后回車表示切換當前的用戶到root用戶,或者:
輸入:su
-
root(或者其他用戶名)這里加了"-"后表示也切換的當前的環境變量到新用戶的環境變量,su
root(或者其他用戶名)表示不切換環境變量到當前用戶下。
sudo
表示獲取臨時的root權限命令,如:
sudo
gedit
/etc/shadow,表示臨時使用root權限來編輯/etc/shadow密碼文件,因為/etc/shadow密碼文件需要使用root權限才能打開與編輯。所以這里使用了sudo命令臨時使用root權限來做一些普通賬戶無法完成的工作~
網站題目:linux基本命令su linux基本命令實驗心得
本文來源:http://vcdvsql.cn/article36/dosdssg.html
成都網站建設公司_創新互聯,為您提供網站收錄、品牌網站制作、虛擬主機、網站策劃、營銷型網站建設、手機網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯