天天看點

《The Linux Command Line》 讀書筆記04 Linux使用者以及權限相關指令

Linux使用者和權限相關指令及介紹。

Linux使用者以及權限相關指令

檢視身份

  id:Display user identity.

  這個指令的輸出會顯示uid,gid和使用者所屬的組。

  uid即user ID,這是賬戶建立時被賦予的。

  gid是primary group ID,是主要的組的id。當然這個使用者也可以屬于其他更多的組。

  使用者賬戶資訊被定義在 /etc/passwd檔案中,組資訊被定義在/etc/group檔案中。

chmod

  指令名稱:chmod

  指令英文原意:change the permissions mode of a file

  指令所在路徑:/bin/chmod

  文法:chmod [{ugo}{+-=}{rwx}][檔案或目錄][mode=421][檔案或目錄]

  功能描述:改變檔案或目錄權限。

  使用者類型:

  u:user,實際上指所有者

  g:group所屬組

  o:others其他人

  a:all所有人,即ugo的組合,如果不指定使用者類型,預設是all。

  +增權重限,-去掉權限,=直接賦予權限

  r可讀,w可寫,x可執行。

  具體對檔案和檔案夾有不同意義,參見:http://www.cnblogs.com/mengdd/p/3557441.html

  比如一個叫doc的檔案,給所有者加上wx權限:chmod u+wx doc

用數字表示權限

  r-4

  w-2

  x-1

  将每一組的權限數字加起來作為整組的權限,比如:

  rwx是7,r-x是5,r--是4

  那麼rwxr-xr--可以表示為754

  比較常用的數字:7 (rwx), 6 (rw-), 5 (r-x), 4 (r--), 0 (---)

umask指令

  umask指令功能:顯示、設定檔案的預設權限。

  umask指令文法:umask [-S]

  -S:以rwx形式顯示建立檔案或目錄的預設權限。

  執行umask:

  顯示0022

  第一個0:特殊權限位

  022使用者權限位,權限掩碼值。

  需要用777減去022,得到755,三個數字分别表示ugo(user,group,others)的權限。

  umask –S:

  u=rwx,g=rx,o=rx

  Linux權限規則:

  預設建立的檔案不能授予可執行x權限,這點是為了安全着想,檔案預設是不能執行的。

  可以用umask改變預設權限,用umask加上掩碼值的形式。

  比如想把權限改為750,要用777減去750,及umask 027指令。

改變身份Changing Identities

  在Linux中可以用三種方式改變自己目前的身份:

  1.登出,然後用另一個賬号登入(…orz…)。

  2.使用su指令。

  3.使用sudo指令。

su

  su:Run a Shell with Substitute User and Group IDs.

  su [-[l]] [user]

  如果使用了-l選項(經常被簡寫為-),結果就是一個login shell。

  意思是使用者user的環境會被載入,目前的工作路徑會被換為這個使用者的home路徑。如果沒有指定使用者,預設是superuser。

  當執行su –之後,需要輸入superuser的密碼,輸入成功之後,會開啟一個新的shell,指令提示符将會變為#(之前是$),并且目前的工作目錄變為superuser的home目錄(/root),結束後如果要退出,輸入exit,就會回到之前的shell。

  也可以直接執行一條指令:

  su –c ‘command’

  需要把指令放在引号裡,以作區分。

sudo

  sudo:Execute a Command as Another User.

  sudo和su類似,有一些附加的屬性,管理者可以配置sudo,在良好的控制下,讓普通使用者以不同的身份執行指令。

  一個使用者可能被限制在一些特定的指令中,不能執行其他。

  另一個不同就是sudo不要求知道superuser的密碼,隻需要知道目前使用者的密碼,輸入密碼後,完成認證,sudo不會新開一個shell,也不會載入另一個使用者的環境,指令也不需要被引号括起來。這種行為可以通過各種選項覆寫,可以檢視sudo的man page。

  sudo –l可以檢視sudo所賦予的權限。

改變所有者和所屬組

  改變所有者:chown

  指令英文原意:change file ownership

  文法:chown [使用者] [檔案或目錄]

  功能:改變檔案或目錄的所有者。

  改變所屬組:chgrp

  指令英文原意:change file group ownership

  文法:chown [使用者組] [檔案或目錄]

  功能:改變檔案或目錄的所屬組。

  chown指令也可以用于改變所屬組。

  chown [owner][:[group]] file...

更改密碼

  passwd [user]

  重置密碼時,需要輸入舊的密碼。

  如果你有superuser的權限,你還可以設定其他使用者的密碼。

  另一些選項可以設定賬戶鎖定,密碼過期等,詳細資訊可以檢視passwd的man page。

參考資料

  《The Linux Command Line》

  視訊教程:LAMP兄弟連李明老師講Linux

  相關博文:

  ls –l顯示檔案權限:

  http://www.cnblogs.com/mengdd/p/3557441.html

作者: 聖騎士Wind

出處: 部落格園: 聖騎士Wind

Github: https://github.com/mengdd

微信公衆号: 聖騎士Wind

《The Linux Command Line》 讀書筆記04 Linux使用者以及權限相關指令

繼續閱讀