权限
一、文件的基本权限
所谓的权限就是用户访问文件的能力,文件的基本权限包括 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.
[[email protected] test]# umask 0022 [[email protected] test]$ umask 0002 [[email protected] test]$ id centos uid=500(centos) gid=500(centos) groups=500(centos),600(magedu) [[email protected] ~]$ umask 0022 [[email protected] ~]$ id uid=4400(mandriva) gid=3302(linux) groups=3302(linux),2201(gentoo),3300(distro),3301(peguin)
管理员和普通用户的掩码一般都不相同。对于属组和属主用户名相同的,新创建的文件或目录的掩码值是0002;对于属组和属主用户名不相同的,新创建的文件或目录的掩码值与管理员用户的掩码值一样是0022。
未完待续......
linux基础知识---权限