Linux权限管理总结(1)--基础权限
?? 玩Linux的人都知道,Linux的安全性要比Windows高很多,而這主要是因為Linux中的安全權限機制,Linux中的用戶和文件是組成系統的重點,而Linux的主要哲學思想是一切皆文件。Linux中的用戶有用戶的權限,分為普通用戶和超級用戶。文件有文件的權限,分別為讀寫執行權限。因為Linux中一切皆文件,對文件的操作就可以直接的操作系統,很多Linux高級服務器是沒有圖形界面的,都是對文件來直接操作來控制服務器,對文件的操作要通過用戶來執行,而普通用戶和超級用戶的執行權限是不同的。
1.普通用戶和超級用戶權限的不同
????超級用戶是系統的所有者,可以對系統做任何的操作,甚至是刪除系統的根目錄。而?普通用戶則有很大的限制,例如不能修改系統關鍵配置文件,想查看其他用戶的文件則需要相應的權限 不能安裝軟件,甚至關機關機指令(shutdown或poweroff)都需要以root身份執行(sudo)。
2.理解“ls -l”
????我們來看一看我們的 ls -l 輸出,檢查一下這個清單的第一欄:
????$ ls -l /bin/bash
?????? -rwxr-xr-x??? 1 root???? wheel????? 430540 Dec 23 18:27 /bin/bash
????第一個字段 -rwxr-xr-x 包含該特殊文件的權限的符號表示。
??? 該字段中的首字符(-)指定該文件的類型,本例中它是一個常規文件。其它可能的首字符還有:?
????“d”目錄
????“l”符號鏈接
????“c”字符專門設備文件
????“b”塊專門設備文件
????“p”先進先出
????“s”套接字
3.文件權限rwx
?????? r 表示允許讀(查看文件中的數據),w 表示允許寫(修改文件以及刪除),x 表示允許“執行”(運行程序)。
????通過rwx的不同組合實現文件的不同權限,?
???? 第一組rwx:文件所有者的權限是讀、寫和執行
? ?? 第二組rw-:與文件所有者同一組的用戶的權限是讀、寫但不能執行
? ?? 第三組r--:不與文件所有者同組的其他用戶的權限是讀不能寫和執行
???? 也可用數字表示為:r=4,w=2,x=1??因此rwx=4+2+1=7
4.umask值
?????? 當我們登錄系統之后創建一個文件總是有一個默認權限的,那么這個權限是怎么來的呢?這就是umask干的事情。umask設置了用戶創建文件的默認 權限,它與chmod的效果剛好相反,umask設置的是權限“補碼”, 而chmod設置的是文件權限碼。一般可在/etc/profile、/etc/bashrc、$ [HOME]/.bash_profile、 $[HOME]/.profile或$[HOME]/.bashrc中設置umask值。具體取決于 Linux發行版,比如Fedora19下要更改自己的umask值,在$[HOME]/.profile或$[HOME]/.bash_profile 下的增加umask的值覆蓋不了/etc/profile中的配置值的,必須在$[HOME]/.bashrc下增加umask值才可以永久定義自己的umask值。
???
-
????如何計算umask值
?????? umask 命令允許你設定文件創建時的缺省模式,對應每一類用戶(文件屬主、同組用戶、其他用戶)存在一個相應的umask值中的數字。對于文件來說,這一數字的最 大值分別是6。系統不允許你在創建一個文本文件時就賦予它執行權限,必須在創建后用chmod命令增加這一權限。目錄則允許設置執行權限,這樣針對目錄來 說,umask中各個數字最大可以到7。
????例如,對于umask值0 0 2,相應的文件和目錄缺省創建權限是什么呢?
第一步,我們首先寫下目錄具有全部權限的模式,即777 (所有用戶都具有讀、寫和執行權限)。
第二步,在下面一行按照umask值寫下相應的位,在本例中是0 0 2。
第三步,在接下來的一行中記下上面兩行中沒有匹配的位。這就是目錄的缺省創建權限。
稍加練習就能夠記住這種方法。
第四步,對于文件來說,在創建時不能具有執行權限,只要拿掉相應的執行權限比特即可。
這就是上面的例子, 其中umask值為0 0 2:
1) 文件的最大權限 rwx rwx rwx (777)
2) umask值為0 0 2 --- --- -w-
3) 目錄權限 rwx rwx r-x (775) 這就是目錄創建缺省權限
4) 文件權限 rw- rw- r-- (664) 這就是文件創建缺省權限
下面是另外一個例子,假設這次u m a s k值為0 2 2:
1) 文件的最大權限 rwx rwx rwx (777)
2 ) u m a s k值為0 2 2 --- -w- -w-
3) 目錄權限 rwx r-x r-x (755) 這就是目錄創建缺省權限
4) 文件權限 rw- r-- r-- (644) 這就是文件創建缺省權限
5.改文件權限命令chmod
chmod [who] [+ | - | =] [mode] 文件名?
命令中各選項的含義為:
操作對象who可是下述字母中的任一個或他們的組合:
u 表示“用戶(user)”,即文件或目錄的所有者。
g 表示“同組(group)用戶”,即和文件屬主有相同組ID的所有用戶。
o 表示“其他(others)用戶”。
a 表示“所有(all)用戶”。他是系統默認值。
操作符號是:
+ 添加某個權限。
- 取消某個權限。
= 賦予給定權限并取消其他所有權限(如果有的話)。
設置mode所表示的權限可用下述字母的任意組合:
r 可讀。
w 可寫。
x 可執行。
X 只有目標文件對某些用戶是可執行的或該目標文件是目錄時才追加x 屬性。
s 在文件執行時把進程的屬主或組ID置為該文件的文件屬主。方式“u+s”設置文件的用戶ID位,“g+s”設置組ID位。
t 保存程式的文本到交換設備上。
u 和文件屬主擁有相同的權限。
g 和和文件屬主同組的用戶擁有相同的權限。
o 和其他用戶擁有相同的權限。
例子:
chmod?755?abc:賦予abc權限rwxr-xr-x
chmod?u=rwx,g=rx,o=rx?abc:同上u=用戶權限,g=組權限,o=不同組其他用戶權限
chmod?u-x,g+w?abc:給abc去除用戶執行的權限,增加組寫的權限
chmod?a+r?abc:給所有用戶添加讀的權限
本文轉自willis_sun 51CTO博客,原文鏈接:http://blog.51cto.com/willis/1845983,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的Linux权限管理总结(1)--基础权限的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: XML与CSS结合
- 下一篇: 余额宝的钱转出到银行卡要手续费吗