Linux学习——用户、组和权限管理

用户相关信息文件:

  1、/etc/password文件:该文件内存储的是用户的相关信息。每个用户占一行,各个信息用分号隔开,每个的意思分别为:
用户名;密码(用x代替);用户id;group组id;用户描述信息;用户家地址;可执行文件(bin/batch表示用户可以登录,sbin/nologin表示用户不允许登录)

  2、/etc/shadow文件:该文件存放用户的密码

  3、/etc/group文件:该文件存放组信息。格式为:组名:组密码:组id;用户组内的成员,默认有一个用户名为组名的用户,可随时添加

  4、/etc/gshadow文件:组密码文件,一般没有密码

  5、/var/spool/mail/目录:该目录下存放的每个普通用户的邮件信息

用户相关命令:

  1、id 用户名:该命令用于查看当前用户名的id,所属组id,属于哪些组

  2、创建用户命令:useradd [选项] 用户名
              1、-u :指定用户的id
              2、-g :通过给定组id或组名指定用户所属组
              3、-c :指定用户描述信息
              4、-s :指定用户可执行登录文件,即是否能登录(可选值为/bin/batch和/sbin/nologin)

  3、修改用户密码:passwd 用户名

  4、删除用户命令:userdel [选项(一般选-r可以删除本地用户信息文件)] 用户名

  5、修改用户信息命令:usermod [选项] 用户名
              1、usermod -G 组名 用户名:修改该用户的组名(这个是覆盖,而不是追加,想要追加就需要把选项变成 -aG)
              2、usermod -d 家地址 用户名:修改用户的家地址(只是修改配置文件,并不会帮你创建新的目录,需要自己创建)
              3、-c :描述信息

  6、创建、修改、删除组命令:分别为groupadd,groupdel,groupmod

文件权限管理:

    1、ls –l命令查看详细信息,其中第一个字段表示文件信息和权限,该字段共有十位,分别为
                第一位:表示文件类型,d表示目录,-表示普通文件,l表示软链接(相当于快捷方式),b表示设备文件。(还有一些可以百度了解下)
                第二位到第四位:表示属主权限(拥有者权限),文件权限共分为三种r(可读),w(可写)和x(可执行,相当于可以进入目录或者执行文件)。没有相应的权限就用-代替,占位。
                第五位到第七位:表示所属组权限。权限值和上面一样。
                第八位到第十位:表示其他用户权限(不是拥有者,也不属于组内成员)。权限值和上面一样。

    2、修改文件权限:chmod [用户类型]=三位权限值 文件名
                用户类型:u表示属主用户,g表示属组,o表示其他用户
                例如: chmod u=-wx aa.txt(表示对于属主只能写和执行,不能读取。当然这个=可以换成+或-,表示增加或减少)

                注:(1)其他人或组内成员都无法更改文件权限,只有属主才可以
                (2)当用户没有写权限,使用vim强行写入,可以成功写入但是只有自己能够查看到内容,其他人没有这个内容。
                (3)当用户没有可读权限只有可写,当用户写入内容时会将文件内原有的内容覆盖掉。
                (4)当一个文件只要有可执行权限,则root不受用户限制,可直接执行文件。只有当文件没有可执行权限时,root则无法执行

目录权限管理:

  1、ls -d -l 目录名:查看目录权限
                r:表示用户可以读取目录下的内容;
                w:表示用户可以对目录进行操作,比如删除,增加,重命名等操作;
                x:表示用户能不能进入该目录

  2、修改目录权限和文件一样
                注:(1)想要能够对目录进行操作,首先得有x进入权限才行。

  3、修改属主属组命令:chown 属主.属组 目录/文件
                1、只修改属组: chown 属主 目录/文件
                2、只修改属组: chown .属组 目录/文件
                3、递归修改属主属组:chown –R 属组.属组 目录/文件
                     该命令是可以同时修改目录下的所有文件或目录的属主属组
Linux学习——用户、组和权限管理

数字化权限

    r用4表示,w用2表示,x用1表示,-则为0
    因此如:rwx就是7,rw-就是6,等等。
    修改权限时可用:chmod 664 文件名/目录 (664表示三个身份用户的权限,必须需要三个)