标签:shell umask suid
之前总是在用到的时候才去Google一下相应的命令,感觉这样没有系统性,也没有和环境编程下面的东西发生联系,所以决定有时间好好整理下思路。
1.ls列出文件信息:
文件类型:
d 目录(directory)
l 符号链接(link)
s 套接字文件(socket)
b 块设备文件(block device file)
c 字符设备文件(character)
p 命名管道文件(named pipe ,FIFO)
- 普通文件
创建文件命令:touch filename
改变文件权限:chmod [who] perator [permission] filename
who的定义:u文件属主,g组用户,o其他用户,a所有用户
operator:+-=分别增加/取消/设定权限
permission:rwx读写执行,s(后面会讲),l给文件加锁
用例:chmod a+x myfile
改变文件权限(设置绝对值):chmod [mode] file
mode:把对应的位转换为8进制形式
用例:chmod 740 myfile
2.目录权限位的理解:目录的读意味着可以打开该目录(执行open操作),执行位意味着搜索和访问该目录,写控制着是否可以在其中创建文件,测试如下:
3.suid的理解:一个用户对属于自己的某个可执行文件设置了suid这种权限,那么其他用户在执行
该文件的时候也具有其属主的相应权限,执行完之后恢复自己的身份,对于guid也是类似的理解。
在Linux环境编程中也会遇到这样的情况,在某个代码段具有root权限。注意:在设置suid和guid的时候,
相应的执行权限位必须设置。
用例:chmod 4741 myfile
看看/bin目录下这样的命令有哪些:
4.改变文件属主和分组:chown , chgrp
5.umask的理解(重点):当一个用户登入一个系统时,umask决定了其创建文件的缺省权限值,以保证文件的安全。掩码顾名思义,就是说对应的用户不具备对应的权限。umask默认值是在/etc/login.def文件中定义的,系统管理员可以自定义。
文件操作命令
标签:shell umask suid
原文地址:http://blog.csdn.net/vonzhoufz/article/details/44423805