linux的权限管理命令主要有chown,chgrp,chmod。
linux权限
linux的权限有:r,w,x。
对于文件而言:r表示可读,即可以用cat等命令查看;w表示可写,可以编辑或者删除此文件;x,表示可执行,可以再命令提示符下提交给内核执行(linux创建文件默认是不具有执行权限的)。
对于目录而言:r表示可对此目录执行ls列出 内部的所有文件;w表示可以在此目录创建文件;x,表示可以cd到此目录,并且使用ls -l列出详细信息(linux目录一般都有x)。
linux的特殊权限有:s,t
s表示当进程执行时,进程的属主属于程序文件的属主(属组)而不是进程发起者的属主(属组)。s与u(g)的x的位置相同,如果文件之前的u(g)有x权限,显示为s。如果没有显示为S。
t表示在一个公共的目录上,每个人可以创建自己的文件,编辑自己和别人的文件,但是不能删除别人的文件。(t与o的x位置相同),如果文件的o之前有x,显示t。如果没有
s可以解释为什么普通用户可以修改自己的密码(因为/etc/shadow文件具有s属性),t可以用于多人编辑工作。
chown
chown用于修改文件或目录的属主(属组),在修改目录属主时默认不修改其内部文件的属主(属组)。
例如:chown tom /tmp/test.sh.修改属主为tom
chown tom:tom /tmp/test.sh. 修改属主为tom,属组为tom
chown :tom /tmp/test.sh .修改属组为tom
选项:-R, 同时修改目录下的子文件
--reference=file:将文件的属主属组改为同file相同
chgrp
同chown,改变文件的属组
chmod
修改文件的权限。chmod command file .
每个文件的用户分为三类:u,g,o.分别表示文件的属主,g表示属组内的用户,o表示其他用户。另外a表示所有用户。
修改文件的权限可以为+,-,=.表示添加权限,减去权限,权限指定是什么。
例如:为/tmp/test.sh 的所有用户添加执行权限:chmod a+x /tmp/test.sh (a+x 可以简写为+x).
权限也可以用数字表示:777,751,755.......
对于751:转为二进制为(每位转)111,101,001对应权限为:rwxr-x--x。
例如:将/tmp/test.sh用户权限复制为rwxr-x--x: chomod 751 /tmp/test.sh
选项:-R, --reference.同chown。
特殊权限
利用s,t创建一个公共工作目录,每个用户可以再里面创建文件,编辑自己和他人的文件但是只可以删除自己的文件。
mkdir /tmp/team;
chmod g+w /tmp/team;
chmod