前面講解 ls 命令時,我們已經(jīng)知道長格式顯示的第一列就是文件的權限,例如:
[root@localhost ~]# ls -linstall.log
-rw-r--r--.1 root root 24772 1月 14 18:17 install.log第一列的權限位如果不計算最后的"."(這個點的含義我們在后面解釋),則共有 10 位,這 10位權限位的含義如圖4-4所示。
圖 1 權限位的含義
第 1 位代表文件類型。Linux 不像 Windows 使用擴展名表示文件類型,而是使用權限位的第 1 位表示文件類型。雖然 Linux 文件的種類不像 Windows 中那么多,但是分類也不少,詳細情況可以使用"info ls"命令查看。筆者在這里只講一些常見的文件類型。
-"-":普通文件。
-"b":塊設備文件。這是一種特殊設備文件,存儲設備都是這種文件,如分區(qū)文件 /dev/sda1 就是這種文件。
-"c":字符設備文件。這也是特殊設備文件,輸入設備一般都是這種文件,如鼠標、鍵盤等。
-"d":目錄文件。Linux 中一切皆文件,所以目錄也是文件的一種。
-"l":軟鏈接文件。
-"p":管道符文件。這是一種非常少見的特殊設備文件。
-"s":套接字文件。這也是一種特殊設備文件,一些服務支持 Socket 訪問,就會產(chǎn)生這樣的文件。
第 2~4 位代表文件所有者的權限。
-r:代表 read,是讀取權限。
-w:代表 write,是寫權限。
-x:代表 execute,是執(zhí)行權限。
如果有字母,則代表擁有對應的權限;如果是"-",則代表沒有對應的權限。
第 5~7 位代表文件所屬組的權限,同樣擁有"rwx"權限。
第 8~10 位代表其他人的權限,同樣擁有"rwx"權限。
這就是文件基本權限的含義,那我們看看下面這個文件的權限是什么。
[root@localhost ~]#ls -linstall.log
-rw-r--r--.1 root root 24772 1月 14 18:17 install.log這個文件的所有者,也就是 root 擁戶,擁有讀和寫權限;所屬組中的用戶,也就是 root 組中除 root 用戶以外的其他用戶,擁有只讀權限;而其他人擁有只讀權限。
最后,我們再看看權限位的這個"."的作用。這個點是在 CentOS 6 以上的系統(tǒng)中才出現(xiàn)的,在以前的系統(tǒng)中是沒有的。剛開始,筆者也飽受這個點的困擾,在各種資料中都查不到這個點的說明。直到無意中查詢了 "info ls" 命令,才明白這個點的含義:如果在文件的權限位中含有".",則表示這個文件受 SELinux 的安全規(guī)則管理。
這個示例說明,任何資料都不如 Linux 自帶的幫助文檔準確和詳細。所以,如果以后出現(xiàn)了不能解釋的內容,則記得先查看 Linux 自帶的幫助文檔。
》》》更多的關于linux培訓知識,歡迎隨時咨詢傳智播客網(wǎng)站右下側咨詢窗口《《《