首页 > 代码库 > linux基础知识---权限

linux基础知识---权限

权限

一、文件的基本权限

    所谓的权限就是用户访问文件的能力,文件的基本权限包括 r(读),write(写),x(可执行)。

    用ls -ld file 查看文件的权限属性:

    drwxr-xr-x 4 root root 4096 Jul  3 21:29 file

        drwxr-xr-x:说明文件类型,常见的文件类型有:d 目录文件,l 链接文件,c 线性设备文件,b 块设备文件,s sorket文件,- 一般文件,p 管道文件

        drwxr-xr-x:此文件(目录)属主用户权限

        drwxr-xr-x:此文件(目录)属组用户权限

        drwxr-xr-x:此文件(目录)其他用户权限

    

1)权限对于目录和文件具体含义如下:

    目录:

        r:可以用ls命令查看目录中的文件列表(用ls -l参数也不能查看里面的内容)

        w:可以在目录中创建和删除文件

        x:可以cd到此目录中,并且可以使用ls -l显示此文件的元数据信息

    文件:

        r:可以查看文件内容

        w:可修改文件内容

        x:可以将此文件做为一个脚本执行

2)用户访问文件时的权限模型:

    if(运行程序的属主 = 此程序正在访问文件的属主)

        以属主的身份权限访问文件;

    else if(运行程序的属组 = 此程序正在访问文件的属组)

        以属组的身份权限访问文件;

    else

        以其他用户身份权限访问;


3)常见的文件权限管理命令

    chmod 改变文件权限

    Usage:chmod [选项]... 模式[,模式]... 文件...

    或:chmod [选项]... 八进制模式 文件...

    或:chmod [选项]... --reference=参考文件 文件...

操作对象权限设定权限值示例

u 文件属主权限

g 同组用户权限

o 其它用户权限

a 所有用户(包括以上三种)

+ 增加权限

- 取消权限

=  唯一设定权限

r-->4

w-->2

x-->1

1、修改/tmp/test文件属主的权限是rwx,属组的权限是r-x,其他用户权限r-x

chmod 755 /tmp/test

或者:chmod u=rwx,go=r-x /tmp/test

2、在1问题的基础上,属主,属组,其他用户都要去掉x权限

chmod a-x /tmp/test

或者:chmod u-x,g-x,o-x /tmp/test

或者:chmod 644 /tmp/tes

3、修改/tmp/test1目录文件的属主的权限是rwx,属组的权限是r-x,其他用户权限r-x,以及所在目录下所有文件都是此权限

chmod -R 755 /tmp/test1

或者:chmod -R u=rwx,go=r-x /tmp/test1

4、在问题1基础上,属组的权限变为rwx

chmod 775 /tmp/test

或者:chmod g+w /tmp/test

5、以/tmp/test的权限为基准,让/tmp/test2文件的权限和他一样

chmod --reference=/tmp/test /tmp/test2


    一般情况下,可根据个人喜好程度选择一种修改权限的模式。
   
   umask:设置系统默认掩码,在新文件或目录首次创建时的权限。
   对目录来说,新创建的目录权限是 777-umask_value;对于文件来说,新创建的文件权限是666-umask_value.

[root@server test]# umask 
0022
[centos@server test]$ umask 
0002
[centos@server test]$ id centos
uid=500(centos) gid=500(centos) groups=500(centos),600(magedu)
[mandriva@server ~]$ umask 
0022
[mandriva@server ~]$ id
uid=4400(mandriva) gid=3302(linux) groups=3302(linux),2201(gentoo),3300(distro),3301(peguin)

    管理员和普通用户的掩码一般都不相同。对于属组和属主用户名相同的,新创建的文件或目录的掩码值是0002;对于属组和属主用户名不相同的,新创建的文件或目录的掩码值与管理员用户的掩码值一样是0022。

未完待续......


本文出自 “黑夜过后” 博客,请务必保留此出处http://guoting.blog.51cto.com/8886857/1435019