Linux中cd進入一個目錄的許可權
Linux許可權管理:
1,檔案和檔案目錄的所有者:u—User
2,檔案和檔案目錄的所有者所在的組的使用者:g—Group
3,其他使用者:o—Others
檔案訪問許可權的種類:
“r”—-讀許可權(4);
“w”—寫許可權(2);
“x”—可執行許可權(1);對於檔案來說具有執行檔案的權利:對於目錄來說有進入目錄的權利。
“-“—表示不具有該項許可權,例如”-r“表示沒有讀許可權。
目錄的可執行許可權是表示你可否在目錄下執行命令。如果目錄沒有-x許可權,則無法對目錄執行任何命令。甚至無法cd進入目錄。即使目錄有-r許可權(這個地方很容易犯錯,認為只要有讀許可權就可以進入目錄讀取目錄下的檔案)。而如果目錄具有-x許可權,但沒有-r許可權,則使用者可以執行命令,可以cd進入目錄。但是由於沒有目錄的讀許可權,所以在目錄下即使可以執行ls命令,但是仍然沒有全下讀出目錄下的文件。
一:新建一個test目錄
二:使用chmod修改許可權
我們將test的預設許可權775改為000;當我們再次cd進入test時,發現我們沒有許可權進入!
三:我們再將許可權改為400(可讀);當我們再次cd進入test時,發現我們沒有許可權進入!
四:我們再將許可權改為200(可寫);當我們再次cd進入test時,發現我們沒有許可權進入!
五:我們再將許可權改為600(可讀可寫);當我們再次cd進入test時,發現我們沒有許可權進入!
六:最後我們再把許可權改為100(可執行);我們發現可以cd進入test;但是不能ls.
這時候我們發現:
只有目錄有x(可執行)許可權時,我們才能cd進入該目錄!
我們再來試一試!
一:剛剛我們建立了一個目錄test,可是目錄下沒有任何檔案!我們現在先在test目錄下建立一個檔案file。但是請記住:此時的test目錄許可權是100(可執行)!
我們發現:光只有x()可執行許可權時!在test目錄下建立的檔案不能ls出來!
二:現在我們再把test許可權改為300(可寫可執行):發現我們還是不能ls出該目錄下的檔案!
三:我們再把test目錄許可權改為500(可讀可執行):我們發現這回可以ls 出該目錄下的檔案file!
小結:
若要cd進入一個目錄,該目錄的許可權必須要有-x(可執行)許可權。若還要ls出該目錄下的檔案,那麼該目錄同時還要必須有-r(可讀)許可權。