歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Linux入門基礎(七) Linux權限機制

權限

權限是操作系統用來限制對資源訪問的機制,權限一般分為讀,寫,執行。系統中每個文件都擁有特定的權限,所屬用戶及所屬組,通過這樣的機制來限制哪些用戶,哪些組可以對特定文件進行什麼樣的操作。

每個進程都是以某個用戶的身份運行的,所以進程的權限與該用戶的權限一樣,用戶的權限越大,該進程擁有的權限就越大。

文件的權限

目錄必須有x權限,否則無法查看其內容。x也叫浏覽權限

UGO

Linux權限基於UGO模型進行控制:

U代表User,G代表Group,O代表Other

每一個文件的權限基於UGO進行設置

權限三個一組(rwx),對應UGO分別設置

每一個文件擁有一個所屬用戶和所屬組,對應UG,不屬於該文件所屬用戶或所屬組的使用O權限

命令ls -l可以查看當前目錄下的文件信息

drwxrwxr-x 2 shuangde shuangde 4096 8月 25 00:33 hdu

-rw-rw-r-- 1 shuangde shuangde 26 8月 24 22:50 input.txt

drwxrwxr-x

d: 文件類型, d表示是目錄,-表示是普通文件

rwx: U權限

rwx: G權限

r-x:  Other權限,  -代表沒有該權限

修改文件所屬用戶,組

命令chown(change own)用以改變文件所屬用戶

$ chown  shuangde   test.cpp   把test.cpp文件的用戶修改為shuangde

-R 參數遞歸地修改目錄下的所有文件的所屬用戶

命令chgrp(change group)用來改變文件的所屬組:

$ chgrp  lab104   test.cpp   把test.cpp文件的所屬組修改為lab104

-R 參數遞歸地修改目錄下的所有文件的所屬組

修改權限

命令chmod用以修改文件的權限

$ chmod  模式  文件

模式為如下格式:

u,g,o分別代表用戶,組和其他

a可以代指ugo

+, -代表加入或刪除對應的權限

r, w, x代表三種權限

示例:

$ chmod  u+rw   test.cpp   把test.cpp的用戶權限增加rw

$ chmod  g-x   test.cpp      把test.cpp的組權限刪除x

$ chmod  go+r  test.cpp     把test.cpp的組和其他權限增加r

$ chmod  a-x  test             把test.cpp的ugo權限刪除x

命令chmod也支持以數字(二進制)方式修改權限, 3個權限分別由三個數字表示:

-r  = 4  (2^2)

-w = 2  (2^1)

-x  = 1  (2^0)

實際上就是按照二進制:  111,  每位代表rwx相同順序的位置,如果該位為0,則表示沒有該權限。

沒有權限 = 0

使用數字表示權限時,每組分別為對應數字之和:

rw   =  4 + 2      = 4 | 2       = 6

rwx =  4 + 2 + 1 = 4 | 2 | 1  = 7

r-x  =  4 + 1       = 4 | 1       = 5  

所以,使用數字表示ugo權限使用如下方式表示:

chmod 660  test.cpp   等價於   rw-rw----

chmod 775  test.cpp   等價於   rwxrwxr-x

 

Copyright © Linux教程網 All Rights Reserved