linux的权限管理

时间:2021-12-02 08:38:48

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