linux基礎:檔案安全與許可權(轉)

post0發表於2007-08-10
linux基礎:檔案安全與許可權(轉)[@more@]

我正在看的一本書,自己也整理了一下

這裡面可能用到使用者管理方面的知識。

當建立一個檔案的時候,系統儲存了有關該檔案的全部資訊,包括:

• 檔案的位置。

• 檔案型別。

• 檔案長度。

• 哪位使用者擁有該檔案,哪些使用者可以訪問該檔案。

• i節點。

• 檔案的修改時間。

• 檔案的許可權位。

讓我們用touch命令建立一個檔案:

程式碼:

$ touch temp

建立了一個空檔案,現在用ls -l命令檢視該目錄下檔案的屬性(我這裡用中文版):

如下:

程式碼:

[root@Linux_chenwy temp]# ls -l

總用量 36

-rw-r--r-- 1 root root 34890 10月 19 20:17 httpd.conf

-rw-r--r-- 1 root root 0 10月 19 20:16 temp

程式碼:

總用量 36:是ls所列出的入口占用空間的位元組數(以K為單位)。

1該檔案硬連結的數目。

root:檔案的屬主。

root:L所屬的組(一般是檔案屬主所在的預設組。

34890:位元組來表示的檔案長度,記住,不是K位元組!

10月 19 20:17:件的更新時間。

temp or httd.conf :件名。

sunsroad 寫到:

BTW:要檢查該目錄所有檔案佔用的空間應該用這個命令:du。

譬如說前面說的36是如何計算出來:

首先我們要先了解你所用的檔案系統的IO BLOCK(中文叫作簇)為多少,在你所使用的這個檔案系統的IO BLOCK大小是4096 Bytes。

他意義是檔案系統最小的讀寫及分配單位,每次讀寫操作你都不能小於這個尺寸。即使你的檔案是隻有一個位元組。而且檔案在硬碟上的儲存也是以這個為單位,就是說如果檔案尺寸小於這個值,那麼它在磁碟上佔用的空間就是4096位元組。

佔用空間的具體演算法是:(進一(檔案尺寸/4096))×4096。根據這個你就可以計算出你所列舉的例子中的檔案的空間使用狀況:34890除以 4096,大約等於8.5,進一法取得為9,就是說檔案在磁碟上佔用了9個BLOCk,每個BLOCK為4K,所以這兩個檔案佔用的空間就是36K。

這個規則也適合於目錄,不過不會出現為0的目錄,即使是空目錄

-rw-r--r-- :這是該檔案的許可權位。

第一個橫槓:指定檔案型別,表示該檔案是一個普通檔案。(所建立的檔案絕大多數都是普通檔案或符號連結檔案)。

除去最前面的橫槓,一共是9個字元,他們分別對應9個許可權位。透過這些許可權位,可以設定使用者對檔案的訪問許可權。對這兩個檔案的精確解釋是:

程式碼:

rw-:前三位,檔案屬主可讀、寫

r--:中間三位,同組使用者可讀

r--:最後三位,其他使用者只可讀

temp在建立的時候並未給屬主賦予執行許可權,在使用者建立檔案時,系統不會自動地設定執行許可權位。這是出於加強系統安全的考慮

BTW:檔案的屬主組並不一定就是所有者所在的預設組,而可以是任何一個跟該檔案所有者無關的使用者組。為了方便,還是統稱屬主,同組和其它

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-940386/,如需轉載,請註明出處,否則將追究法律責任。

相關文章