權限:r w x 超詳細分析(一)

權限:r w x 超詳細分析(一)

導讀:由於最近作者和朋友討論權限時,存在一些分歧,故做出本次測試,供大家參考。

零、測試前的準備:

首先新建測試用戶 tester,新建測試目錄 powertest,並設 other 權限爲 r
在這裏插入圖片描述
在這裏插入圖片描述
/powertest/目錄結構如下
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

一、首先我們來測試 r 權限:

1.r權限對於目錄的意義:

擁有此權限表示可以讀取目錄結構列表,也就是說可以查看目錄下的文件名和子目錄名,注意:僅僅指的是名字。
在這裏插入圖片描述
我們可以看到tester對/powertest/dir_r/目錄只有r權限,
在這裏插入圖片描述
我們發現,當tester對/powertest/dir_r/目錄只有r權限時,tester只能ls(不能執行tree)讀取/powertest/dir_r/下目錄和文件的名字,並不能查看內容和執行增刪改操作(包括:cd、touch、mkdir、rm、mv、cp、tar等)。

通過測試我們發現:當用戶對目錄只有r權限時,用戶只能查看該目錄下文件和子目錄的名字,對應的操作爲:ls。

2.r權限對於文件的意義:

用於此權限表示可以讀取此文件的實際內容
在這裏插入圖片描述
可以看到tester對/powertest/file_r文件只有r權限
在這裏插入圖片描述
可以cat,more
在這裏插入圖片描述
使用vi/vim查看編輯 並wq保存退出
在這裏插入圖片描述
在這裏插入圖片描述
但是發現只擁有r權限的tester雖然不能編輯/powertest/file_r文件,但是卻可以刪除它
在這裏插入圖片描述
這是因爲,tester對/powertest/file_r的上層目錄,即/powertest有rwx權限,所以它可以對/powertest/下的file_r進行刪除。同樣tester可以對/powertest/下的任何文件目錄進行touch,rm,mv(改名字,移動即刪除,)等操作,這個我們稍後再說。
但是我發現mv不能向/powertest中拷貝東西,原因還不清楚;
在這裏插入圖片描述
即:當用戶對文件只有r權限時,用戶只能查看該文件內容。相應的操作爲:cat,more,vi/vim(只能查看,編輯後保存不了)。

問題一:

此處不得不提的還有一點:如果使用vi/vim時用 x!/wq! 保存竟然可以實現編輯!
具體情況如下:
在這裏插入圖片描述
首先,tester對/powertest/file_r文件是other且權限是r,時間是09:47.
當我們使用vi/vim編輯內容後,wq保存退出,此時彈出警告,提示爲只讀文件,我們q!退出。
在這裏插入圖片描述
再次vim進入查看,發現/powertest/file_r文件的內容並沒有改變,且左下角依然提示爲只讀文件
在這裏插入圖片描述
ll查看發現並沒有變化
在這裏插入圖片描述
接下來,我們vi/vim 編輯後使用 x! 保存退出
在這裏插入圖片描述
編輯時,一直提示爲只讀文件,
在這裏插入圖片描述
使用 x! 保存退出後,我們在vi/vim看一下
在這裏插入圖片描述
此時,文件已被修改; 並且,當我們再次查看/powertest/file_r文件權限時,發現:
在這裏插入圖片描述
/powertest/file_r文件的屬主和屬組已經被修改了,以前是root而現在是tester。
對於這個現象,我只想說surprise mother fucker????!!!!
查閱vi/vim官方文檔後,我有點明白了!

http://vimdoc.sourceforge.net/htmldoc/editing.html#:w!

:w[rite]! [++opt] Like “:write”, but forcefully write when ‘readonly’ is
set or there is another reason why writing was
refused.
Note: This may change the permission and ownership of
the file and break (symbolic) links.
Add the ‘W’ flag
to ‘cpoptions’ to avoid this.
:寫]! [++ opt]喜歡“:write”,但在’readonly’時強行寫入
設置或寫作的另一個原因是
拒絕了。
注意:這可能會更改權限和所有權
文件和中斷(符號)鏈接。

添加’W’標誌
'cpoptions’以避免這種情況。

所以在接下來的測試中,我們在vi/vim編輯時不使用wq!/x!強制保存退出!

二、接着我們來測試 w 權限

1.w權限對於目錄的意義:

擁有此權限表示具有更改該目錄結構列表的權限,總之,目錄的w權限與該目錄下的文件名或子目錄名的變動有關,注意:指的是名字。具體如下:
在這裏插入圖片描述
我們可以看到tester對/powertest/dir_w/目錄只有w權限。
我們看一下/powertest/dir_w/目錄下有什麼
在這裏插入圖片描述
測試
在這裏插入圖片描述
通過操作我們發現:如果用戶對目錄只有w權限,那麼,該用戶不能執行任何操作。
此時,對目錄而言我們對w權限的測試進行不下去了,所以我們先暫時放棄,而去測試w對文件的權限

2.w權限對於文件的意義:

擁有此權限表示可以編輯、添加或者是修改該文件的內容。但是不包含刪除該文件,因爲由上面權限對於目錄的意義得知刪除文件或目錄的條件是什麼。
在這裏插入圖片描述
首先,我們看到tester對/powertest/file_w文件只有w權限
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
通過操作發現,當tester對/powertest/file_w文件只有w權限時,cat,more,vi/vim都不可以。
在這裏插入圖片描述
但是我們發現,可以通過echo及重定向對文件進行編輯;我們來用root來查看一下
在這裏插入圖片描述
即:當用戶對文件只有w權限時,用戶只能通過 echo+重定向 對文件進行編輯;
但不能查看文件內容,如:cat,more,vi/vim(查看),通過上面r權限的測試,我們知道對文件內容進行讀取是r權限所對應的操作。

此時還要提到的是:vi/vim編輯後,用x!或wq!保存後,屬主,屬組仍會改變

三、現在測試一下 rw 權限

1.rw權限對於目錄的意義:

通過操作我們發現:當用戶對目錄只有r權限時,用戶只能查看該目錄下文件和子目錄的名字。
通過操作我們發現:如果tester對/powertest/dir_w/目錄只有w權限,那麼,tester不能執行任何操作。
在這裏插入圖片描述
首先tester對/powertest/dir_rw/目錄只具有rw權限
在這裏插入圖片描述
我們發現可以ls查看dir_rw目錄結構
在這裏插入圖片描述
但是其它的操作都不行
即:當用戶對目錄只擁有rw權限時,用戶只能ls查看目錄結構。

2.rw權限對於文件的意義:

即:當用戶對文件只有r權限時,用戶只能查看該文件,即:cat,more,vi/vim(只能查看,編輯後保存不了)。
即:當用戶對文件只有w權限時,用戶只能通過 echo+重定向 對文件進行編輯;
在這裏插入圖片描述
tester對/powertest/file_rw文件只有rw權限
在這裏插入圖片描述
tester可以查看文件內容
在這裏插入圖片描述
vi/vim/編輯後,使用wq保存退出
在這裏插入圖片描述
Cat查看後發現/powertest/file_rw文件內容發生變化
在這裏插入圖片描述
即:用戶擁有rw權限可以對文件內容進行查看,修改,對應的操作爲:cat,more,vi/vim。

四、現在我們來測試 x 權限

1.x權限權限對於目錄的意義:

擁有目錄的x權限表示用戶可以進入該目錄成爲工作目錄,能不能進入一個目錄,只與該目錄的x權限有關,如果用戶對於某個目錄不具有x權限,則無法切換到該目錄下,也就無法執行該目錄下的任何命令,即使具有該目錄的r權限。
在這裏插入圖片描述
在這裏插入圖片描述
測試:
在這裏插入圖片描述
通過測試我們發現:當用戶對一個目錄只有x權限時,該用戶只能可以進入該目錄,對應的操作爲cd。
且如果用戶對於某目錄不具有x權限,則該用戶不能查詢該目錄下的文件的內容,注意:指的是內容,如果有r 權限是可以查看該目錄下的文件名列表或子目錄列表的。所以要開放目錄給任何人瀏覽時,應該至少要給與r及x權限。

2.x權限對於文件的意義:

表示該文件具有可以被系統執行的權限。文件是否能被執行就是由該權限來決定的,跟文件名沒有絕對的關係。
在這裏插入圖片描述
首先,我們看到,tester對/powertest/file_x文件只具有x權限
在這裏插入圖片描述
即:當用戶對文件只具有x權限時,不能進行任何操作

至此我們測試了用戶分別擁有:r、w、rw、x權限的情況:
R:
通過測試我們發現:當用戶對目錄只有r權限時,該用戶只能查看該目錄下文件和子目錄的名	字,對應的操作爲:ls。

即:當用戶對文件只有r權限時,用戶只能查看該文件內容。相應的操作爲:cat,more,vi/vim(只能查看,編輯後保存不了)。

W:
通過操作我們發現:如果用戶對目錄只有w權限,該用戶不能執行任何操作。

即:當用戶對文件只有w權限時,用戶只能通過  echo+重定向   對文件進行編輯;

RW:
通過操作我們發現:當用戶對目錄只擁有rw權限時,用戶只能ls查看目錄結構。

即:用戶擁有rw權限可以對文件內容進行查看,修改,對應的操作爲:cat,more,vi/vim。

X:
通過測試我們發現:當用戶對一個目錄只有x權限時,該用戶只能可以進入該目錄,對應的操作爲cd。

即:當用戶對文件只具有x權限時,不能對該文件進行任何操作。

五、現在我們來分別測試:rx、wx

1.rx

rx權限對目錄的意義:

在這裏插入圖片描述
首先,tester對/powertest/dir_rx/目錄僅有rx權限
在這裏插入圖片描述
在這裏插入圖片描述
通過測試我們發現:當用戶對目錄僅具有rx權限時,該用戶可以進入該目錄並查看目錄結構(cd,ls,tree),但是並不能改變目錄結構(不能touch,mkdir,rm等)

rx權限對文件的意義:

在這裏插入圖片描述
首先,tester對/powertest/file_rx文件僅具有rx權限
在這裏插入圖片描述
可以查看文件內容
在這裏插入圖片描述
在這裏插入圖片描述
vi/vim只能查看,不能編輯後wq不能保存退出
在這裏插入圖片描述
echo+重定向不能編輯
在這裏插入圖片描述
可以執行文件

即:當用戶對文件僅具有rx權限時,該用戶只能查看(cat,more)該文件內容,若該文件爲可執行文件也可以執行。並不能編輯修改文件內容

2.wx

WX權限對目錄的意義:

在這裏插入圖片描述
首先,tester對/powertest/dir_wx/目錄僅有wx權限
在這裏插入圖片描述
通過測試我們發現:當用戶對目錄僅具有wx權限時,該用戶可以進入(cd)該目錄並改變目錄結構,包括1.在該目錄下新建(touch、mkdir)文件或子目錄;2.刪除(rm)該目錄下已經存在的文件或子目錄;3.將該目錄下已經存在的文件或子目錄進行重命名(mv);4.轉移(cp、mv)該目錄內的文件或子目錄的位置。但不能查看(tree、ls)該目錄結構。

WX權限對文件的意義:

在這裏插入圖片描述
首先,tester對/powertest/file_wx文件僅有wx權限
在這裏插入圖片描述
vi/vim顯示權限不夠
在這裏插入圖片描述
在這裏插入圖片描述
Sh不能執行
即:當用戶對文件僅具有wx權限時,該用戶只能通過echo+重定向編輯該文件內容,若該文件爲可執行文件也可以執行。

六、最後我們來測試:rwx

1.rwx權限對於目錄的意義:

在這裏插入圖片描述
首先tester對/powertester/dir_rwx/目錄有rwx權限
在這裏插入圖片描述
在這裏插入圖片描述
發現在使用mv命令移動目錄時操作不被允許,這裏的問題是對操作目錄沒有w權限
在這裏插入圖片描述

2.rwx權限對於文件的意義:

在這裏插入圖片描述
如果用戶擁有了文件的rwx權限,那麼當然可以查看,編輯,修改,保存文件內容,也可以執行文件。
這裏要補充的一點是:對一個文件或目錄能否用mv命令重命名或移動,取決於用戶對該文件或目錄的上層是否有w權限!

即:當用戶擁有rwx權限時,所有操作都可以

七、總結

R:
通過測試我們發現:當用戶對目錄只有r權限時,該用戶只能查看該目錄下文件和子目錄的名		字,對應的操作爲:ls。
即:當用戶對文件只有r權限時,用戶只能查看該文件內容。相應的操作爲:cat,more,vi/vim(只能查看,編輯後保存不了)。

W:
通過操作我們發現:如果用戶對目錄只有w權限,該用戶不能執行任何操作。
即:當用戶對文件只有w權限時,用戶只能通過  echo+重定向   對文件進行編輯;

RW:
通過操作我們發現:當用戶對目錄只擁有rw權限時,用戶只能ls查看目錄結構。
即:用戶擁有rw權限可以對文件內容進行查看,修改,對應的操作爲:cat,more,vi/vim。

X:
通過測試我們發現:當用戶對一個目錄只有x權限時,該用戶只能可以進入該目錄,對應的操作爲cd。
即:當用戶對文件只具有x權限時,不能對該文件進行任何操作。

RX:
通過測試我們發現:當用戶對目錄僅具有rx權限時,該用戶可以進入該目錄並查看目錄結構(cd,ls,tree),但是並不能改變目錄結構(不能touch,mkdir,rm等)
即:當用戶對文件僅具有rx權限時,該用戶只能查看(cat,more)該文件內容,若該文件爲可執行文件也可以執行。並不能編輯修改文件內容

WX:
通過測試我們發現:當用戶對目錄僅具有wx權限時,該用戶可以進入(cd)該目錄並改變目錄結構,包括:
1.在該目錄下新建(touch、mkdir)文件或子目錄;
2.刪除(rm)該目錄下已經存在的文件或子目錄;
3.將該目錄下已經存在的文件或子目錄進行重命名(mv);
4.轉移(cp、mv)該目錄內的文件或子目錄的位置。但不能查看(tree、ls)該目錄結構。
即:當用戶對文件僅具有wx權限時,該用戶只能通過echo+重定向編輯該文件內容,
若該文件爲可執行文件也可以執行。

RWX:幾乎所有操作都可以

Linux中權限(r、w、x)對於目錄與文件的意義

一、權限對於目錄的意義

1、首先要明白的是目錄主要的內容是記錄文件名列表和子目錄列表,而不是實際存放數據的地方。
  2、r權限:擁有此權限表示可以讀取目錄結構列表,也就是說可以查看目錄下的文件名和子目錄名,注意:僅僅指的是名字。
  3、w權限:擁有此權限表示具有更改該目錄結構列表的權限,總之,目錄的w權限與該目錄下的文件名或子目錄名的變動有關,注意:指的是名字。具體如下:
  1)在該目錄下新建新的文件或子目錄。
  2)刪除該目錄下已經存在的文件或子目錄(不論該文件或子目錄的權限如何),注意:這點很重要,用戶能否刪除一個文件或目錄,看的是該用戶是否具有該文件或目錄所在的目錄的w權限。
  3)將該目錄下已經存在的文件或子目錄進行重命名。
  4)轉移該目錄內的文件或子目錄的位置。
  4、x權限:擁有目錄的x權限表示用戶可以進入該目錄成爲工作目錄,能不能進入一個目錄,只與該目錄的x權限有關,如果用戶對於某個目錄不具有x權限,則無法切換到該目錄下,也就無法執行該目錄下的任何命令,即使具有該目錄的r權限。且如果用戶對於某目錄不具有x權限,則該用戶不能查詢該目錄下的文件的內容,注意:指的是內容,如果有r 權限是可以查看該目錄下的文件名列表或子目錄列表的。所以要開放目錄給任何人瀏覽時,應該至少要給與r及x權限。

二、權限對於文件的意義

1、也應該明白的是文件是實際含有數據的地方,所以r、w、x權限對文件來說是與其內容有關的。
  2、r權限:用於此權限表示可以讀取此文件的實際內容。
  3、w權限:擁有此權限表示可以編輯、添加或者是修改該文件的內容。但是不包含刪除該文件,因爲由上面權限對於目錄的意義得知刪除文件或目錄的條件是什麼。
  4、x權限:表示該文件具有可以被系統執行的權限。文件是否能被執行就是由該權限來決定的,跟文件名沒有絕對的關係。

Operation not permitted		操作不許可
Permission denied				沒有權限

後記:由於作者水平有限,本次測試中可能存在一些問題,希望大家批評指正感激不盡!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章