Linxu常用命令(三)

                        Linxu用戶切換     遠程拷貝

su命令
語法:su(選項)(參數)
su命令用於切換當前用戶身份到其他用戶身份,變更時須輸入所要變更的用戶帳號與密碼

選項:
-c<指令>或–command=<指令>:執行完指定的指令後,即恢復原來的身份;
-l或——login:改變身份時,也同時變更工作目錄,以及HOME,SHELL,USER,logname。此外,也會變更PATH變量;
-m,-p或–preserve-environment:變更身份時,不要變更環境變量;

su -c ls root  變更帳號爲root並在執行ls指令後退出變回原使用者

su命令與su -的區別
su 是切換到其他用戶,但是不切換環境變量(比如說那些export命令查看一下,就知道兩個命令的區別了)

su - 是完整的切換到一個用戶環境
所以儘量使用第二種
這裏寫圖片描述

su和sudo的區別
由於su 對切換到超級權限用戶root後,權限的無限制性,所以su並不能擔任多個管理員所管理的系統。如果用su 來切換到超級用戶來管理系統,也不能明確哪些工作是由哪個管理員進行的操作。特別是對於服務器的管理有多人蔘與管理時,最好是針對每個管理員的技術特長和 管理範圍,並且有針對性的下放給權限,並且約定其使用哪些工具來完成與其相關的工作,這時我們就有必要用到 sudo。

通過sudo,我們能把某些超級權限有針對性的下放,並且不需要普通用戶知道root密碼,所以sudo 相對於權限無限制性的su來說,還是比較安全的,所以sudo 也能被稱爲受限制的su ;另外sudo 是需要授權許可的,所以也被稱爲授權許可的su;

sudo 執行命令的流程是當前用戶切換到root(或其它指定切換到的用戶),然後以root(或其它指定的切換到的用戶)身份執行命令,執行完成後,直接退回到當前用戶;而這些的前提是要通過sudo的配置文件/etc/sudoers來進行授權;

這裏寫圖片描述
第一列root不用多說,是用戶賬號,第二列的ALL意思是登陸者的來源主機名,第三列等號右邊小括號裏的ALL是代表能夠切換的身份。第四列ALL是可運行的命令。

scp命令
語法:su (選項) (參數)
scp命令用於在Linux下進行遠程拷貝文件的命令,和它類似的命令有cp,不過cp只是在本機進行拷貝不能跨服務器,而且scp傳輸是加密的。可能會稍微影響一下速度。當你服務器硬盤變爲只讀read only system時,用scp可以幫你把文件移出來。另外,scp還非常不佔資源,不會提高多少系統負荷,在這一點上,rsync就遠遠不及它了。雖然 rsync比scp會快一點,但當小文件衆多的情況下,rsync會導致硬盤I/O非常高,而scp基本不影響系統正常使用。

選項:
-r:以遞歸方式複製。
-P:指定遠程主機的端口號;

scp [email protected]:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/ 從遠處複製文件到本地目錄
從10.10.10.10機器上的/opt/soft/的目錄中下載nginx-0.5.38.tar.gz 文件到本地/opt/soft/目錄中。

scp -r [email protected]:/opt/soft/mongodb /opt/soft/   從10.10.10.10機器上的/opt/soft/中下載
mongodb目錄到本地的/opt/soft/目錄來。

scp /opt/soft/nginx-0.5.38.tar.gz [email protected]:/opt/soft/scptest  複製本地/opt/soft/目錄下
的文件nginx-0.5.38.tar.gz到遠程機器10.10.10.10的opt/soft/scptest目錄。

scp -r /opt/soft/mongodb [email protected]:/opt/soft/scptest   上傳本地目錄/opt/soft/mongodb到
遠程機器10.10.10.10上/opt/soft/scptest的目錄中去。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章