1. 程式人生 > >[Linux] 權限與指令間的關系

[Linux] 權限與指令間的關系

答案 roo 修改文件 所在 不能 這一 home student nbsp

我們知道權限對於使用者帳號來說是非常重要的,因為他可以限制使用者能不能讀取/創建/刪除/修改文件或目錄! 在這一章我們介紹了很多文件系統的管理指令,第五章則介紹了很多文件權限的意義。在這個小節當中, 我們就將這兩者結合起來,說明一下什麽指令在什麽樣的權限下才能夠運行吧!^_^

一、讓使用者能進入某目錄成為“可工作目錄”的基本權限為何:

  • 可使用的指令:例如 cd 等變換工作目錄的指令;
  • 目錄所需權限:使用者對這個目錄至少需要具有 x 的權限
  • 額外需求:如果使用者想要在這個目錄內利用 ls 查閱文件名,則使用者對此目錄還需要 r 的權限。

二、使用者在某個目錄內讀取一個文件的基本權限為何?

  • 可使用的指令:例如本章談到的 cat, more, less等等
  • 目錄所需權限:使用者對這個目錄至少需要具有 x 權限;
  • 文件所需權限:使用者對文件至少需要具有 r 的權限才行!

三、讓使用者可以修改一個文件的基本權限為何?

  • 可使用的指令:例如 nano 或未來要介紹的 vi 編輯器等;
  • 目錄所需權限:使用者在該文件所在的目錄至少要有 x 權限;
  • 文件所需權限:使用者對該文件至少要有 r, w 權限

四、讓一個使用者可以創建一個文件的基本權限為何?

  • 目錄所需權限:使用者在該目錄要具有 w,x 的權限,重點在 w 啦!

五、讓使用者進入某目錄並執行該目錄下的某個指令之基本權限為何?

  • 目錄所需權限:使用者在該目錄至少要有 x 的權限;
  • 文件所需權限:使用者在該文件至少需要有 x 的權限

例題:讓一個使用者 dmtsai 能夠進行“cp /dir1/file1 /dir2”的指令時,請說明 dir1, file1, dir2 的最小所需權限為何?答:執行 cp 時, dmtsai 要“能夠讀取來源文件,並且寫入目標文件!”所以應參考上述第二點與第四點的說明! 因此各文件/目錄的最小權限應該是:

  • dir1 :至少需要有 x 權限;
  • file1:至少需要有 r 權限;
  • dir2 :至少需要有 w, x 權限。

例題:有一個文件全名為 /home/student/www/index.html ,各相關文件/目錄的權限如下:

drwxr-xr-x 23 root    root    4096 Sep 22 12:09 /
drwxr-xr-x  6 root    root    4096 Sep 29 02:21 /home
drwx------  6 student student 4096 Sep 29 02:23 /home/student
drwxr-xr-x  6 student student 4096 Sep 29 02:24 /home/student/www
-rwxr--r--  6 student student  369 Sep 29 02:27 /home/student/www/index.html

請問 vbird 這個帳號(不屬於student群組)能否讀取 index.html 這個文件呢?答:雖然 www 與 index.html 是可以讓 vbird 讀取的權限,但是因為目錄結構是由根目錄一層一層讀取的, 因此 vbird 可進入 /home 但是卻不可進入 /home/student/ ,既然連進入 /home/student 都不許了, 當然就讀不到 index.html 了!所以答案是“vbird不會讀取到 index.html 的內容”喔!

那要如何修改權限呢?其實只要將 /home/student 的權限修改為最小 711 ,或者直接給予 755 就可以啰! 這可是很重要的概念喔!

[Linux] 權限與指令間的關系