RHEL6系/CentOS6系のファイルパーミッションのdot「.」をなくす方法
RHEL6系/CentOS6系から、selinuxの管理下にあるファイルにはファイルパーミッションにdot「.」がつくようになってます。
[root@localhost ~]# ls -ld /etc drwxr-xr-x. 57 root root 4096 Jan 4 13:21 /etc
selinuxを無効化しても、元々あったファイルにはドットがついたままなので、
なんか気持ち悪い感じ…。
いろいろ調べたら、ファイルの拡張属性security.selinuxが残ってるのが原因っぽいです。
- Easy way to remove SELinux permissions?
- centos - Why does getfattr not display anything for a file that has the extended attribute bit set? - Server Fault
このdot「.」を消すためには、ファイルの拡張属性を設定するsetfattrコマンドを使います。
[root@localhost ~]# getfattr -m - /etc getfattr: Removing leading '/' from absolute path names # file: etc security.selinux [root@localhost ~]# setfattr -x security.selinux /etc [root@localhost ~]# getfattr -m - /etc [root@localhost ~]# ls -ld /etc drwxr-xr-x 57 root root 4096 Jan 4 13:21 /etc
全ファイルに対して設定する場合は下記を実行します。
(再帰的にコマンドを実行するオプションがないので、findでごりっとやってます。)
# find / -exec setfattr -x security.selinux {} \;