2019/10/18 優化部份內容
Files in Linux
開學前2個禮拜,跟同學一起去了一家公司 intern ,在等待東西跑完之餘,又翻了幾篇鳥哥的文 [註1],發現之前講的 Linux 檔案資料還有很多不清楚的地方,所以來重新整理一下啦~
drwxr-xr-x 2 root root 4.0k 2月 22 09:23 bin
lrwxr-xr-x 1 root root 30 2月 22 12:46 vmlinuz -> ...
-rwxr--r-- 1 absnormal absnormal 3.5k 2月 22 17:04 Jcmp
< 1 > <2> < 3 > < 4 > < 5 > < 6 > < 7 >
- 檔案類型與讀寫權限
- 有多少連結 link 到這個檔案
- 檔案之所屬「使用者」
- 檔案之所屬「群組」
- 檔案大小 ( 預設為 bytes )
- 最後修改日期
- 檔名
就第一點的權限來說,上一篇沒有說到的是關於 d 開頭目錄類檔案的 rwx 權限,如果是普通的檔案,那麼能讀取、變更、執行是很正常的事 [註2],但是要如何「執行」一個目錄?開啟嗎?還是執行裡面的檔案?就讓小邊在底下說明囉~
目錄的 rwx 權限作用
- r ( read contents in directory ) : 最基本的權限,有了的使用者可以看見目錄裡到底藏了啥玩意,但是「看」跟「進」是兩回事,也代表著任何跟需要「進」目錄才能完成的指令 ( ex. cp ) 都無法使用呢,能夠把箱子 ( 目錄 ) 變透明的感覺 (?)
- w ( modify contents of directory ) : 最強大的權限,也是最沒用的權限,能新增 / 刪除 / 搬移 / 更名目錄內容 (檔案本身的權限並不影響你能不能刪掉TA ),但是沒有鑰匙 (x),這個權限就相當於不存在
- x ( access directory ) : 最奇怪的權限,相當於箱子的鑰匙,決定進的去進不去得關鍵權限,沒有 w 權限的話就不用擔心會被稿破壞了
最讓人產生疑問的應該是 : 只要擁有修改目錄(w)和執行(x)的權限 ,就能對目錄內的檔案隨心所欲 這件事了。
[註1] 鳥哥的 Linux 檔案介紹在這邊
[註2] 雖然在 Windows 中能被執行的只有 .exe / .bat / .cmd 之類的檔案,但是在 Linux 中任何檔案都能被執行喔,如果強制執行一個無法被執行的檔案
$./file
會得到一串「執行擋格式錯誤」的 error