天天看點

RHEL6中,檔案權限後面一個點的含義

大家在使用RHEL6的時候,用ls -l指令檢視檔案的權限的時候,你可能會發現,這個權限的表示内容,已經與以前的版本不一樣了,後面多了一個點,這個點是幹嗎的呢?搜尋了很久也沒有找到答案,很是郁悶啊!于是乎就隻能自己慢慢研究。

首先來看看我是如何找到答案的,這個也是我的思路,和大家分享一下。

1、直接在網上搜尋,但都找不到答案。

2、懷疑會不會像域名一樣,來用個點來表示結尾呢?

3、懷疑這個可能是和權限有關,想到了ACL和SELinux。

4、懷疑和檔案系統有關,因為RHEL6已經用了EXT4。

這些都是我想到的,可能和這個點有關的,猜測是可以的,但絕對不能誤導别人,是以我就一一來排除和驗證,最終得到結果是:

這個點表示的是存在“SELinux的安全标簽”!

為什麼會這樣,我們來看如何得出來的結果。

我們用getenforce來檢視SELinux的運作模式

[root@tonyzhang ~]# getenforce

Enforcing

這說明SELinux是啟動的,OK,我們來建立個檔案

[root@tonyzhang ~]# touch testfile

[root@tonyzhang ~]# ls -l testfile

-rw-r--r--. 1 root root 0 Jan 16 23:06 testfile

我們看到這個檔案的權限後面是有點的。

下面我們關閉這個SELinux,然後重新啟動系統

[root@tonyzhang ~]# vim /etc/sysconfig/selinux

SELINUX=enforcing

改為

SELINUX=disabled

儲存退出,重新啟動系統。

重新進入系統後,我們再來看一下這個SELinux的運作模式

Disabled

再來建立個檔案

[root@tonyzhang ~]# touch testfile1

比較一下這兩個檔案

[root@tonyzhang ~]# ls -l testfile*

-rw-r--r--  1 root root 0 Jan 16 23:10 testfile1

發現testfile1這個權限的後面沒有了點

再來看看這兩個檔案的安全上下文是什麼樣的

[root@tonyzhang ~]# ls -Z testfile*

-rw-r--r--. root root unconfined_u:object_r:admin_home_t:s0 testfile

-rw-r--r--  root root ?                                testfile1

關掉了SELinux,建立的檔案就沒有了這個安全上下文了,也就沒有了這個點了。

我們再看看,把SELinux開啟,再重新啟動電腦,看看這個testfile1的安全上下文會變成什麼樣?

[root@tonyzhang ~]#  ls -Z testfile*

-rw-r--r--. root root system_u:object_r:admin_home_t:s0 testfile

-rw-r--r--. root root system_u:object_r:admin_home_t:s0 testfile1

重新啟動後,這個testfile1檔案就自動加上了這個安全标簽,而且權限的後面又多了一個點。

至于testfile這個檔案的安全上下文為什麼會變,我們後面學習SELinux的時候,慢慢來研究了。

可見,我們上面的分析是完全正确的,這也同時說明一個問題,RHEL6的安全性提高了。

      本文轉自glying 51CTO部落格,原文連結:http://blog.51cto.com/liying/968416,如需轉載請自行聯系原作者