52AV手機A片王|52AV.one

 找回密碼
 立即註冊
查看: 1630|回復: 0

[linux指令] Linux 下 su v.s sudo 指令比較

[複製鏈接]
發表於 2014-12-21 14:08:00 | 顯示全部樓層 |閱讀模式
tid=186& 本帖最後由 media 於 2014-12-21 14:12 編輯 3 y' _7 F" R: a# i8 d: x2 b/ ~

0 p4 E& L& n1 z: o% `su=switch user ,轉換到root 帳號1 `/ H! i+ N/ N
sudo 是以root權限執行相關命令,例如: sudo service mysqld restart,兩者說明如下:$ f1 v; ?, l: I: N+ N. T" L
3 P$ u* C: o! a6 U, f- q
Linux安裝套件與系統設定都需要root的權限,就是super-user privileges (最高權限),也就是管理員權限。如何擁有root的權限?我們可以直接用ssh登入root的帳號,或用su(substitute user)指令來切換使用者,再不然就是使用sudo指令。
: l5 D6 t2 n! H2 z( [' W' k) o* z) z8 H+ \4 r# Y
1. 使用su指令
  1. #用su切換使用者
    ' V9 Y+ X( C+ W* s
  2. [aaron@phoenix ~]$ su#使用su切換為root
    & S1 S7 b2 \& L" @4 ?  B7 ~
  3. Password:[輸入root密碼]- q3 K. ~- E& J: T7 J

  4. 8 O+ a: O6 S. W: I' x
  5. [root@phoenix aaron]# service httpd restart#已切換為root; `' D0 E  \7 j3 e- n) T) i5 Y
  6. Stopping httpd:                                            [  OK  ]
    / b/ |6 t5 G1 u1 O8 l
  7. Starting httpd:                                            [  OK  ]
    6 T" Y" e' Z6 @) J
  8. & V5 f1 s" I, f
  9. [root@phoenix aaron]# exit#切換回aaron
    # g# f: w; l3 f* w

  10. 7 @; N7 C! [; v1 W7 \, {  z
  11. #執行單一指令,不需要切換為root! r( b# k$ _  |9 E
  12. [aaron@phoenix ~]$ su -c "service httpd restart"
    6 B8 l! L$ s5 H! k) `4 T" p
  13. Password:[輸入root密碼]
    , j$ I7 r' a; p/ v! ]
  14. Stopping httpd:                                            [  OK  ]
    # p- z: \' z7 ~/ j6 [
  15. Starting httpd:                                            [  OK  ]
    8 [" x( z; Z7 B: {- x: I8 m

  16. 4 Y/ g# F5 s5 G# e1 j
  17. #執行su與su -的差別(Shell環境是否跟著切換)
    ' y" {# A& D" a2 {
  18. [aaron@phoenix ~]$ su* L, Q. }5 M3 g  g! g( |& f8 s7 p
  19. Password:[輸入root密碼]% ]5 g5 B$ q  W  a' l6 e
  20. [root@phoenix aaron]# echo $PATH#列印PATH變數,發現還使用aaron的PATH變數
    ) B- _. O, R4 Y
  21. /usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/aaron/bin
    - K5 s7 Q, _, [0 s  o

  22. 4 G9 U- @4 ^5 o2 w
  23. [aaron@phoenix ~]$ su -$ U/ [0 h' V1 ?
  24. Password:[輸入root密碼]4 \( g# _1 Z2 r' ?$ [1 [' e7 W: j4 X
  25. [root@phoenix aaron]# echo $PATH#列印PATH變數,使用root的PATH變數! i) l. {1 i* V5 a0 [5 Q
  26. /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
複製代碼
! j! F* p& {, c2 Q9 J/ L. D
2. 設定sudoer

) X/ m# {. F$ O
  1. [aaron@phoenix ~]$ su
    1 A9 M) A. a. a1 }/ {
  2. Password:[輸入root密碼]
    6 ^: c3 [- M( G; i" f" u0 B3 M

  3. 7 p5 X0 q6 t2 M  c
  4. [root@phoenix aaron]# vim /etc/sudoers
    ) U8 i) B# H) Q/ V1 \

  5. " b9 e8 e/ [* n0 f6 L
  6. ## Allow root to run any commands anywhere$ v2 w- `$ |, p/ z. y' T/ E
  7. root    ALL=(ALL)       ALL9 w$ g' e' T$ ]# ^% a. d
  8. 5 X: f3 j* }3 h% i( F- |" j( B0 o
  9. ## Allow users to run any commands anywhere, n5 q. y& ~6 A% g! |1 ~; @
  10. aaron   ALL=(ALL)       ALL#新增這條允許aaron可以執行管理員權限
複製代碼

$ N; U7 d. _3 k7 R) g. Z7 A5 X/ m1 A3. 範例
  1. #沒有最高權限,所以就被擋了
    6 t6 s2 ?0 C5 E3 f
  2. [aaron@phoenix ~]$ service httpd restart
    , p' r" ~. _6 V* G; Z" m
  3. Stopping httpd:/ z6 ^0 J$ x; v- q$ x8 Y) B0 P4 k
  4. rm: cannot remove `/var/run/httpd/httpd.pid': Permission denied
    4 n! S7 e  v& W7 J/ h
  5. 8 F* c4 R, l$ Y
  6. Starting httpd:
    6 f5 M* i1 E1 P. A  X. i+ s7 F
  7. touch: cannot touch `/var/lock/subsys/httpd': Permission denied
    6 r3 k, s8 Z9 p; g9 ~

  8. 3 I! b6 ]4 Y+ W" k  a7 M
  9. #用sudo就可以, j( C1 @  y' _+ q3 s  Z
  10. [aaron@phoenix ~]$ sudo service httpd restart3 w% _* O7 O% [0 Z; Q+ D. w+ `# K2 b
  11. [sudo] password for aaron:[輸入密碼]
    * @6 p1 [! u" Q2 Z0 J
  12. Stopping httpd:                                            [  OK  ]
    ! [9 M9 X9 ]* \3 T* o" d7 d
  13. Starting httpd:                                            [  OK  ]
複製代碼
#su與sudo的差別在於是否要讓一般使用者知道root的密碼,如果用su就必須將root密碼分享出去,很有可能造成系統被侵入的危險。而sudo則是讓一般使用者有管理員權限,只要輸入自己的密碼即可,但同樣有風險,因為擁有管理員權限。# q7 O$ w) D3 E
可參考http://kezeodsnx.pixnet.net/blog/post/25810396
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則



中文酷站排行榜

本區塊內容依據『電腦網路內容分級處理辦法』為限制級網站,限定年滿18歲以上或達當地國家法定年齡人士方可進入,且願接受本站各項條款,未滿18歲 謝絕進入瀏覽。為防範未滿18歲之未成年網友瀏覽網路上限制級內容的圖文資訊,建議您可進行網路內容分級組織ICRA分級服務的安裝與設定。 (為還給愛護 本站的網友一個純淨的論壇環境,本站設有管理員)

QQ|小黑屋|手機板| 52AV手機A片王

GMT+8, 2025-12-6 18:28 , Processed in 0.054725 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回復 返回頂部 返回列表