ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux平台对链接文件属组、权限的修改细节

Linux平台对链接文件属组、权限的修改细节

原创 Linux操作系统 作者:尛样儿 时间:2013-11-24 00:23:57 0 删除 编辑

    在Linux平台修改属组的命令是chown,修改权限的命令是chmod,这大家都知道,但在昨天的工作中才发现对链接文件的修改与普通文件
确是如此的不同,特地记录下来:

1.创建链接文件。

在root用户的$HOME目录下创建test目录,并在该目录下创建了a普通文件和链接到a的b链接文件。
[root@rhel1 ~]# mkdir test
[root@rhel1 ~]# cd test
[root@rhel1 test]# ls
[root@rhel1 test]# touch a
[root@rhel1 test]# ls
a
[root@rhel1 test]# ln -s a b
[root@rhel1 test]# ls -ald *
-rw-r--r-- 1 root root 0 May 31 14:10 a
lrwxrwxrwx 1 root root 1 May 31 14:10 b -> a

2.修改链接文件的属组。

[root@rhel1 test]# chown oracle:oinstall b
[root@rhel1 test]# ls -ald *
-rw-r--r-- 1 oracle oinstall 0 May 31 14:10 a
lrwxrwxrwx 1 root   root     1 May 31 14:10 b -> a

    没有-R的chown命令实际修改的是链接文件链接的普通文件属组。

[root@rhel1 test]# chown -R oracle:oinstall b
[root@rhel1 test]# ls -ald *
-rw-r--r-- 1 oracle oinstall 0 May 31 14:10 a
lrwxrwxrwx 1 oracle oinstall 1 May 31 14:10 b -> a
[root@rhel1 test]# chown -R root:root b
[root@rhel1 test]# ls -ald *
-rw-r--r-- 1 oracle oinstall 0 May 31 14:10 a
lrwxrwxrwx 1 root   root     1 May 31 14:10 b -> a

   加上-R的chown命令修改了链接文件的属组,但这不会修改链接文件链接的普通文件的属组。

[root@rhel1 test]# cd ..
[root@rhel1 ~]# ls -ald test
drwxr-xr-x 2 root root 4096 May 31 14:10 test
[root@rhel1 ~]# chown -R grid:oinstall test
[root@rhel1 ~]# ls -al test
total 12
drwxr-xr-x  2 grid oinstall 4096 May 31 14:10 .
drwxr-x--- 11 root root     4096 May 31 14:09 ..
-rw-r--r--  1 grid oinstall    0 May 31 14:10 a
lrwxrwxrwx  1 grid oinstall    1 May 31 14:10 b -> a
[root@rhel1 ~]# ls -ald test
drwxr-xr-x 2 grid oinstall 4096 May 31 14:10 test

   对上层目录执行加上-R的chown命令,这会修改目录、目录下的链接文件,以及链接文件链接的普通文件的属组,通常这才是我们想要的效果。

3.修改链接文件的权限。

[root@rhel1 ~]# cd test
[root@rhel1 test]# ll
total 0
-rw-r--r-- 1 grid oinstall 0 May 31 14:10 a
lrwxrwxrwx 1 grid oinstall 1 May 31 14:10 b -> a
[root@rhel1 test]# chmod 775 b
[root@rhel1 test]# ll
total 0
-rwxrwxr-x 1 grid oinstall 0 May 31 14:10 a
lrwxrwxrwx 1 grid oinstall 1 May 31 14:10 b -> a

   不加-R的chmod和chown命令的效果相同,修改的是链接文件链接的普通文件的权限。

[root@rhel1 test]# chmod -R 660 b
[root@rhel1 test]# ll
total 0
-rw-rw---- 1 grid oinstall 0 May 31 14:10 a
lrwxrwxrwx 1 grid oinstall 1 May 31 14:10 b -> a

    加上-R的chmod也无法修改链接文件的权限。

[root@rhel1 test]# cd ..
[root@rhel1 ~]# chmod -R 600 test
[root@rhel1 ~]# ls -ald test
drw------- 2 grid oinstall 4096 May 31 14:10 test
[root@rhel1 ~]# ls -al test
total 12
drw-------  2 grid oinstall 4096 May 31 14:10 .
drwxr-x--- 11 root root     4096 May 31 14:09 ..
-rw-------  1 grid oinstall    0 May 31 14:10 a
lrwxrwxrwx  1 grid oinstall    1 May 31 14:10 b -> a

    对上层目录执行-R的chmod命令可以修改目录的权限,目录下链接文件链接的普通文件的权限,但依然无法修改链接文件的权限。
   由此可以得出结论,链接文件默认是777的权限,且无法修改。

--end--

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23135684/viewspace-777427/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle数据库管理员,Oracle数据库系统构架员;2012年7月出版《构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化》一书;Oracle 10g OCM。

注册时间:2010-01-05

  • 博文量
    483
  • 访问量
    5312549