最近跟一個運維人員學了點新東西,感覺以前沒怎麼註意,但現在感覺很有用,特來記錄一下。 linux使用==ll==命令列出列表的時候,前面總是有一堆drwxr xr x ,這些代表什麼意思從來還沒有去在意過,只是找到自己的目錄然後一頓操作完事。但是這次在tomcat下部署項目的時候怎麼都不能啟動,後來 ...
最近跟一個運維人員學了點新東西,感覺以前沒怎麼註意,但現在感覺很有用,特來記錄一下。
linux使用==ll==命令列出列表的時候,前面總是有一堆drwxr-xr-x ,這些代表什麼意思從來還沒有去在意過,只是找到自己的目錄然後一頓操作完事。但是這次在tomcat下部署項目的時候怎麼都不能啟動,後來找來運維人員一看是因為沒有許可權,他就告訴我這些都是什麼意思,然後我也自己查了一下資料,這裡就整理一下,也方便自己記憶。
首先,這些字母表示的是許可權的意思
許可權的計算從第二位字母開始,三個符號為一組合,其中-表示沒有這個許可權,那麼先拿==drwxr-xr-x==簡單解釋一下:
- d:這一位表示文件類型。d是目錄文件,l是鏈接文件,-是普通文件,p是管道
- rwx:這三位(2-4位)表示這個文件的屬主擁有的許可權,r是讀,w是寫,x是執行。這裡表示這個屬主同時擁有讀、寫、執行許可權
- r-x:這三位(5-7位)表示和這個文件屬主所在同一個組的用戶所具有的許可權。這裡表示的是有讀和執行許可權,沒有寫許可權
- r-x:這三位(8-10位)表示其他用戶所具有的許可權。這裡表示的是有讀和執行許可權,沒有寫許可權
其次,使用ls -l(或者ll)命令列出後每一行代表的含義
- 第1段: 文件屬性欄位:文件屬性欄位總共有10個字母組成,第一個字母表示文件類型,如果這個字母是一個減號”-”,則說明該文件是一個普通文件。字母”d”表示該文件是一個目錄,字母”d”,是dirtectory(目錄)的縮寫。
註意,一個目錄或者說一個文件夾是一個特殊文件,這個特殊文件存放的是其他文件和文件夾的相關信息。 - 第2段:文件硬鏈接數或目錄子目錄數
- 第3段:文件擁有者
- 第4段:文件擁有者所在的組
- 第5段:文件文件大小(以位元組為單位)
- 第6段:文件創建月份
- 第7段:文件創建日期
- 第8段:文件創建時間
- 第9段:文件名 (如果是一個符號鏈接,那麼會有一個 “->”箭頭符號,後面根一個它指向的文件)
可以拿下麵這個比對一下:
drwxr-xr-x 1 62323 197609 0 4月 21 14:16 bin/
drwxr-xr-x 1 62323 197609 0 4月 21 14:16 cmd/
drwxr-xr-x 1 62323 197609 0 4月 21 14:16 dev/
drwxr-xr-x 1 62323 197609 0 4月 21 14:16 etc/
-rwxr-xr-x 1 62323 197609 149784 2月 26 19:48 git-bash.exe*
最後就是賦權時數字的含義
使用chmod賦權的時候,我們通常會這樣寫:
chmod 777 test.txt
那麼上面的777 代表的含義是這樣的:
- r:read 表示讀許可權 --數字4表示
- w:write 表示寫許可權 --數字2表示
- x:excute 表示執行許可權 --數字1表示
- 第一個7:表示==屬主==擁有==4+2+1==的許可權也就是同時有==讀,寫,執行==許可權
- 第二個7:表示==與屬主同一個組的所有用戶==擁有==4+2+1==的許可權
- 第三個7:表示==其他用戶==擁有==4+2+1==的許可權
所以這裡可以看出來這個777具有的威力(賦權一定要謹慎!)
再比如:rwxrwxr-- 774
表示此文件(文件夾)的擁有者和同組用戶有讀寫及執行許可權,其他用戶組只有讀許可權。也就是前面三個表示所有者許可權,中間三個表示同組用戶許可權,最後一組表示其他用戶許可權(不包括root)。
最後舉個詳解案例:
drwxr-xr-x 1 62323 197609 0 4月 21 14:16 bin/
其中:
- d:表示==bin==是目錄
- rwx:表示==62323==屬主擁有的許可權是==可讀(r),可寫(w)和可執行(x)==
- r-x(5-7位):表示與==62323==這個屬主在同一個組(==197609==)的用戶的許可權是==可讀(r)和可執行(x)==
- r-x(8-10位):表示其他用戶擁有的許可權是==可讀(r)和可執行(x)==
- 1:文件硬鏈接數或目錄子目錄數為 1
- 62323:表示我筆記本電腦的一個用戶(是我的qq號的前幾位)
- 197609:表示==62323==這個用戶所屬的組group
- 0:表示文件大小是==0位元組==
- 4月:表示創建月份是==4月==
- 21:創建日期是==21日==
- 14:16:表示創建時間是下午的==14:16==
- bin/:表示的文件名稱,這裡指的是目錄名稱