摘 要:本文針對Linux中文件權限設置問題,介紹了如何在Linux系統中采用文字設定法和數字設定法對系統中的文件進行權限設置,通過控制文件權限提高了文件系統的安全性。
關鍵詞:Linux系統;權限管理
1 Linux文件權限簡介
Linux是一個多用戶和多多任務的操作系統,在Linux系統中信息都存放在文件中,系統里運行的程序都以文件的形式存儲。不同的用戶為了不同的目的使用操作系統是通過系統賦予用戶對某個文件的特定權限來實現的。
Linux系統中文件或目錄的訪問權限分為讀權限,寫權限和可執行權限三種,分別用r、w和x表示。用戶具有讀權限可以使用cat、more等文件查看程序讀取文件的內容,這種方式僅僅是讀取,不能對文件進行修改;用戶具有寫權限可以在目錄中創建新的文件或者修改已有的文件;用戶具有執行權限可以執行一些可執行程序。在linux系統中,有三種不同類型的用戶可對對文件或者目錄擁有不同的權限,這三類用戶是文件所有者,同組用戶、其他用戶。
用戶可以通過ls-l命令查看系統中目錄或者文件的權限信息,運行結果如下所示:
drwxr-xr-x 12 root root 13720 2007-07-20 23:55 dev
上述結果中第一列數據表示了文件或者目錄的類型和權限信息,其中第一位字符表示了該文件的類型;第二位到第十位字符表示了該文件所對應的系統中三類用戶所具有的權限信息,其中第二到四位表示該文件的所有者對該文件所具有的權限;第五到七位表示同組用戶對該文件所具有的權限;第八到十位表示了系統中除了前兩類用戶以外的其他用戶對該文件所具有的權限。這三組信息依次由r、w、x或者-組成,如果在某個位置上的字符是-,說明此類用戶沒有該位置上的某個權限。例如:rwx表示該用戶具有讀、寫、執行的權限;r-x表示該用戶具有讀、執行權限,而沒有寫權限。
2 Linux文件權限設置
確定了某個文件或者目錄的訪問權限以后,用戶可以使用linux系統提供的chmod命令來重新設置文件或者目錄的訪問權限,達到控制不同用戶對文件的不同的訪問權限。該命令有兩種用法。一是包含字母和操作符表達式的文字設定法;另一種是包含數字的數字設定法。
2.1 文字設定法
利用chmod設置文件權限的文字設定法的語法格式如下:
chmod [who] [+|-|=] [mode] 文件名列表
選項Who的取值以及含義:u表示“屬主(user)”,即文件或者目錄的所有者;g表示“所屬組(group)”里的用戶,即組名或者組ID與文件中的組名或者組ID相同的用戶;o表示既不屬于屬主(user),也不屬于group的其他用戶;a表示“所有(all)”用戶。它是系統默認值。選項中“+”表示添加某個權限;“-”表示取消某個權限;“=”表示賦予某個權限,并取消原有的權限。Mode選項取值和含義:r表示可讀權限;w表示可寫權限;x表示可執行權限。命令中可以給出多種權限方式中間用逗號隔開。
應用實例1:為同組用戶添加對文件a.txt的執行權限
Chmod g+x a.txt
應用實例2:取消其他用戶對文件a.txt的寫權限
Chmod o-w a.txt
應用實例3:重新賦予文件所有者對文件a.txt權限為讀權限和寫權限
Chmod u=rw a.txt
應用實例4:為同組用戶和其他用戶添加對文件a.txt的寫權限
Chmod g+w,o+w a.txt
應用實例5:取消同組用戶對文件a.txt的寫權限并添加其他用戶對文件a.txt的寫權限
Chmod g-w,o+w a.txt
2.2 數字設定法
數字設定法是與文字設定法功能等價的設定方法,只不過比文字設定法更加簡潔。數字設定法用3個二進制位來表示文件權限。第一位表示r權限(可讀),第二位表示w權限(可寫),也可以直接用十進制數計算。0表示沒有權限,1表示x權限,2表示w權限,4表示r權限,然后將其相加。所以數字屬性的格式應為3個從0到7的八進制數,其順序是(u)、(g)、(o)。其他的與文字設定法基本一致。
語法格式為:
chmod [mode] filename,
其中mode由XXX三位數字組成,第一位的數字表示所有者的權限,第二位數字表示同組用戶的權限,第三位數字表示其他用戶的權限,filename為設定權限的文件名稱。
應用實例6:設置a.txt的文件權限使所有者具有讀、寫、執行權限;同組用戶具有讀、寫權限;其他用戶具有讀、執行權限
分析:讀權限用4表示,寫權限用2表示,執行權限用1表示;所有者具有讀、寫、執行權限,因此權限所代表的數字相加為4+2+1=7;同理同組用戶權限為6,其他用戶權限為5,綜上所述,字符數字設定法中的mode的應設置為765。
Chmod 765 a.txt
[參考文獻]
[1]劉海濤,等.Linux中文件權限管理的探討[J].微型計算機信息,2006(3).
[2]何明,等.Linux培訓教程[M].清華大學出版社,2010.01.
[3]賀惠萍,等.應用程序用戶權限機制研究[J].微計算機信息,2005,9:19-21.
[4]羅琰,等.Linux環境下訪問控制列表機制的設計與實現.解放軍理工大學學報(自然科學版),2004.6.
[5]陳旭,等.Linux系統網絡安全問題分析及對策[J].合肥工業大學學報,2002,5(3).
[6]張喜英.在網絡系統中Linux的安全設置與管理[J].網絡通訊與安全,2007.