[Linux] ls --color 的檔案特徵及顏色意義

URL Link //n.sfs.tw/11080

2017-05-16 00:47:17 By 張○○

Linux 系統下的檔案系統和Windows有頗多差異,對Linux來說,所有東西都是檔案,並有所謂的權限設定,系統會依據這些權限的設定來決定使用者是否能讀取、寫入或執行該檔案。請下ls –l指令以查看檔案權限的設定。

顏色定義

ls 加上參數 --color會顯示顏色,預設linux 都有設定別名,所以只要有執行 ls都會有顏色顯示

alias ls='ls --color=auto'

一般而言檔案的顏色代表意義如下:

白色:一般檔案
藍色:目錄
綠色:可執行的一般檔案
黃色:設備檔,一般而言在 /dev
淺藍色:連結檔
綠底黑字:public可讀寫的目錄,例如 /tmp
粉紅色:一個socket
金色:一個行程process

ls清單說明

當執行ls –l 時,會顯示權限,系統會依據這些權限的設定來決定使用者是否能讀取、寫入或執行該檔

其中各欄位代表的意義是:
(1) 第一個字母代表檔案類型,其英文代表意義如下:

b block (buffered) special
c character (unbuffered) special
d directory
p named pipe (FIFO)
f regular file
l symbolic link
s socket
D door (Solaris—a fast socket on Solaris 2.5 only)

(2) 接下來9碼 rwxrwxrwx 代表檔案權限,分為三組 rwx

第一組rwx User 代表的權限是檔案擁有者本身的的權限
第二組rwx Group代表同一群組的使用者所擁有的權限
第三組rwx Other 代表其他(非群組)的使用者所擁有的權限.

r w x 對檔案、目錄、設備所代表的意義 

 

r

w

x

檔案

可讀取cat

可修改、可刪除rm

可執行

目錄

可列表ls

可新建目錄mkdir

可更名mv

可建新檔touch

可刪除rm

可切換目錄cd

設備

可輸入read

可輸出write/output

無作用

對目錄而言,不論r或w都需要配合x,否則無效。

如果這個後面有一個點'.'或一個加'+',那代表SELINUX的ACL,如果SELINUX是關閉的狀態,這個'.'或'+'就不會出現。

(3) 這裡是連結的i-node數目,每個檔案都會將他的權限與屬性記錄到檔案系統的i-node,i-node就是記錄有關檔案類型、擁有和群組、大小和指到檔案位址的指標。我們使用的目錄樹卻是使用檔名來記錄,因此每個檔名就會連結到一個i-node。

(4) 這裡顯示此檔案的擁有者

(5) 這裡顯示此檔案所屬群組

(6) 這裡是檔案大小(bytes)、最後修改日期及檔名:檔名對Linux系統而言擁有最大的自由度,因為在Linux系統並不限制不能使用什麼字元,所以可有Big5中文、utf8的中文或是在Windows中限制使用的字元:\ /:*?”<>|。不過這些字元為了避免麻煩,盡量不用為宜。

查看檔案的指令

1. 檔案詊細資訊

$ stat /etc/passwd

File: `/etc/passwd'
Size: 1300 Blocks: 8 IO Block: 4096 regular file
Device: 801h/2049d Inode: 393727 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2009-08-09 23:50:01.000000000 +0800
Modify: 2009-08-09 23:49:19.000000000 +0800
Change: 2009-08-09 23:49:19.000000000 +0800

2. 取得權限,包含selinux的ACL

$ getfacl /etc/passwd
getfacl: Removing leading '/' from absolute path names
# file: etc/passwd
# owner: root
# group: root
user::rw-
group::r--
other::r--

3.取得檔案類型(有時會判錯)、編碼、圖檔解析度、META TYPE等

$ file In.php
In.php: C++ source, UTF-8 Unicode text

$ file small-icon-faq.png
small-icon-faq.png: PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced

$ file small-icon-faq.png -b
PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced

$ file -i icon-stati.png

icon-stati.png: image/png; charset=binary

4. 查看Selinux角色

$ ls -Z /etc/passwd
-rw-r--r--. root root system_u:object_r:passwd_file_t:s0 /etc/passwd

5. mc 類似PCTOOLS的管理工具
# yum install mc
# mc

執行後會有選單畫面和功能,方便懶惰打指令的人


編修原文 2010-02-04 21:16:26