1. 程式人生 > >Linux的檔案許可權和目錄配置(三)

Linux的檔案許可權和目錄配置(三)

一、檔案許可權的意義

r :可以讀這個檔案的具體內容;

w :可以編輯這個檔案的內容,包括增加刪除檔案的具體內容;

x :檔案就具有了可執行的許可權-------注意:這裡和window不一樣,在win中,檔案的可執行許可權是通過擴充套件名錶現出來的,如exe、bat等,但是在linux中檔案的可執行許可權是通過這個x決定的,與檔名沒有什麼關係。

*當你對一個檔案具有w許可權時,你可以對檔案的內容進行編輯,但是並不具備刪除該檔案的許可權

二、目錄許可權的意義

r :  可以檢視此目錄下的完整檔案列表資訊(當擁有r許可權,但是沒有x許可權時,可以看到名稱但是其他資訊會以?代  替,當沒有r許可權時,完成不會有顯示

)。

w :可以對此目錄下的所有的檔案及目錄進行相關的更改,也就是可以更改這個目錄下的結構列表(這個要重視) 具體權利如下:

     (1) 可以在此目錄下建立新的檔案或目錄;

     (2)可以在此目錄下刪除存在的檔案或目錄(不論該檔案的許可權是什麼,這點要格外注意!!!!)

     (3)可以重新命名及改變檔案或目錄的位置。

x :目錄沒有可執行的許可權,因此目錄中x的功能就是允許別的使用者進入這個目錄

三,example

[email protected]:~$ sudo su
[sudo] password for fanfan:
[email protected]

:/home/fanfan# cd /tmp
[email protected]:/tmp# mkdir testing
[email protected]:/tmp# chmod 744 testing
[email protected]:/tmp# touch testing/testing
[email protected]:/tmp# chmod 600 testing/testing
[email protected]:/tmp# ls -ald testing testing/testing
drwxr--r-- 2 root root 4096  1月 28 19:09 testing
-rw------- 1 root root    0  1月 28 19:09 testing/testing
[email protected]
:/tmp# su fanfan
[email protected]:/tmp$ ls -l testing
ls: 無法訪問testing/testing: 許可權不夠
總用量 0
-????????? ? ? ? ?             ? testing
[email protected]:/tmp$ cd testing
bash: cd: testing: 許可權不夠
[email protected]:/tmp$ sudo su
[email protected]:/tmp# chown fanfan testing
[email protected]:/tmp# su fanfan
[email protected]:/tmp$ cd /temp/testing
bash: cd: /temp/testing: 沒有那個檔案或目錄
[email protected]:/tmp$ cd testing
[email protected]:/tmp/testing$ ls -l
總用量 0
-rw------- 1 root root 0  1月 28 19:09 testing
[email protected]:/tmp/testing$ rm testing
rm:是否刪除有防寫的普通空檔案 "testing"? y
[email protected]:/tmp/testing$

四 注意事項

 <1> 這裡有一個問題就是,有時候我們想和別人(同組,或other)共享一個檔案的時候,你在改變了檔案的許可權後,對方還是不能看到的,因為別人進不了你的使用者主目錄,預設沒有x許可權。如果在這時你為了能讓他看到這個檔案而開放了x許可權,別人就會進入這個目錄裡檢視這個檔案或者修改這個檔案。如果這個人認為檔案很好,想cp一份,那麼他是沒有許可權的,以為目錄預設也是沒有w許可權的,這裡我們要特別注意:最好不要直接開放w許可權,因為這樣別人就可以隨意更改此目錄下的列表了(包括刪除,刪除是很危險的)。因此我們可以把這個檔案cp一份,放到具有w許可權的第三方目錄下,對方也從這裡cp,這樣我們的主目錄就不會受到任何影響了。

 <2>這裡有一個好笑的例子,一個系統管理員建了一個 重要.txt 的檔案,為了防止別人對這個檔案有所企圖,於是乎管理員設定許可權為-rex------,這個管理員認為萬無一失了,就把這個檔案隨便放了一個目錄下,心想就算別人看見這個檔案也什麼也幹不了,但是如果此時這個目錄具有w的許可權,那麼別人雖然不能對這個檔案進行任何操作,但是他卻對這個檔案具有刪除的許可權,這個可是致命的。

五 檔案種類和副檔名

(1)檔名

一般檔案             -                       純文字檔案 二進位制檔案 資料格式檔案

目錄                    d(directory)      目錄

連線檔案             l(link)                類似於windows快捷方式

塊裝置檔案         b(block)            儲存資料,以提供系統隨機訪問的介面裝置

字元裝置檔案     c(character)       串列埠的介面裝置

套接字                s(sockets)          socket

管道                   p(pipe)                 管道

(2)副檔名

一個linux檔案能不能被執行,與它第一列的10個屬性有關,與檔名根本一點關係也沒有,但是我們仍希望可以由副檔名來了解檔案是什麼東西

.sh   指令碼或批處理檔案

*Z  *.tar  *.tar.gz *.zip *.tgz   壓縮檔案

(3)在Linux下面,預設使用Ext2/Ext3檔案系統時,針對檔案的檔名長度限制為:

單一檔案或目錄的最大容許檔名為255個字元

包含完整路徑名稱及目錄的完整檔名為4096個字元

我們希望Linux的檔名可以一看就知道該檔案是做什麼的,所有檔名通常很長