• Linux系统之用户、群组和权限


    一、用户管理

    • 创建用户时,系统为用户分配一个唯一的编号UID,同时为用户创建一个同名的组,并为组分配一个编号GID,并把该用户加入该组中。

       系统规定: 

        uid: 0       特权用户
            uid: 1~499  系统用户
            uid: 500+   普通用户

    • 任何一个用户有且只有一个私有组,一个用户可以加入多个组
    • 家目录:系统还会为用户在/home/创建一个与用户名同名的主目录
    • 家目录的模板:系统还会把/etc/skel目录中的内容复制到用户的家目录,作为基本的配置文件
    • 同名的邮箱:/var/spool/mail/创建一个与用户同名的邮箱

      1、和用户相关的文件或目录:

        用户信息:/etc/passwd    #密码最后修改时间,从UNIX元年到现在多少天

             
                 用户名:密码点位符:uid:gid:描述:家目录:用户的shell
        用户密码:/etc/shadow    #密码前有!表示锁定

             
                           用户:密码:密码最后修改时间:多久不可修改秘密天数:多久内必须要更换密码:密码失效前的警告天数
        组信息:/etc/group      #此文件中记录组的信息,此文件可查看组内成员

            
                         组名:组密码:GID:组成员(缺省有与组名同名的用户)
        组密码:/etc/gshadow      #存放组的密码信息

            

         家目录:系统会为用户在/home/创建一个与用户名同名的主目录

            家目录的模板:系统还会把/etc/skel目录中的内容复制到用户的家目录,作为基本的配置文件

             

         同名的邮箱:/var/spool/mail/创建一个与用户同名的邮箱

            

      2、useradd命令及选项

        a) –u:指定用户的UID
          b) –g:指定用户所属的群组
          c) –d:指定用户的家目录
          d) –c:指定用户的备注信息
          e) –s:指定用户所用的shell

        例:在系统中创建一个名为fox的用户,UID为600,属于heilong组,描述信息为this is a fox

          

      3、usermod命令及选项

        usermod命令:修改用户信息

        选项:

            a) –u:修改用户的UID
          b) –g:修改用户的GID
          c) –G:将一个用户加入到指定的群组中
          d) –d:修改用户的家目录
          e) –c:修改用户的备注信息
          f) –s:修改用户所用的shell
          g) -L: 锁定用户
          h) -U: 解锁用户

        例:

          修改fox用户的家目录为/home/babies的命令:

           
          将fox用户添加到tom这个群组中的命令:

           
          将fox用户的的gid变更为tom群组的命令:

           

          将fox用户锁定,无法登录Linux系统

           

            

            

          将fox用户解锁

            

            

      4、userdel命令

        userdel:删除用户    注:删除用户信息,不包括用户的家目录和邮箱

          -r选项:在删除用户信息的同时,删除用户的家目录和邮箱

    二、用户组管理:

        # groupadd 组名

        # groupadd net01 -g 2000  添加组net01,并指定gid 2000

        # groupdel net01    删除组net01

        # grep 'net01' /etc/group  查看/etc/group中组net01信息

        # groupmod -n 新组名 旧组名           

                -g 从新指定GID

        gpasswd [参数] user 组名称

              -a 添加用户到组中

              -d将用户从组中删除

        gpasswd 组名   为组设置密码

        groups  查看当前用户的组信息

    三、权限管理

      1、文件权限

        

        第一列:文件的类型和权限信息

        第二列:硬连接数

        第三列:属主,文件的拥有着

        第四列:属组,文件所属群组

        第五列:文件的大小,默认单位是bytes

        第六列:文件的创建日期或是敢后的修改日期

        第七列:文件名

        

        第一列的第一个字符:

          d:目录

          -:普通文件

          l:链接文件,类似windows的快捷方式

          b:块设备文件

          c:字符设备文件,例如:键盘,鼠标

          p:管道文件,解决多个程序同时存取一个文件的问题

          s:套接字文件,通常用于网络上的数据承接,很多存在于/var/run

          文件权限:

            r->读权限,cat、less、more等

            w->写权限,可以编辑文件内容

            x->执行权限,可以被执行

      2、目录权限:

          r->可以查看该目录下的文件或目录,如ls命令

          w->可以在该目录下创建文件或目录,删除文件或目录,重命名文件或目录,移动该目录下的文件或目录

          x->用户可以进入该目录,使该目录成为工作目录

      

      3、更改文件的属主、属组

        chown 改变文件的拥有者和群组

        chown [参数] [用户] [:或者.组] 文件名

            -R-递归更改

        [root@tianyun ~]# chown alice.hr file1  //改属主、属组

        [root@tianyun ~]# chown alice      file1   //只改属主

        [root@tianyun ~]# chown        .hr  file1  //只改属组 =chgrp:

        [root@tianyun ~]# chgrp group file1     //改文件属组

        [root@tianyun ~]# chgrp -R group dir1    //改文件属组

      4、更改权限

        a. 使用字符      对象  赋值符  权限类型      

                u    +    r      + 在原基础上加权限

                g     -    w                 -R 递归更改      

                 o    =    x          - 在原基础上减权限

          [root@tianyun ~]# chmod u+x file1   //属主增加执行

          [root@tianyun ~]# chmod a=rwx file1  //所有人等于读写执行

          [root@tianyun ~]# chmod a=- file1   //所有人没有权限

          [root@tianyun ~]# chmod ug=rw,o=r file1//属主属组等于读写,其他人只读

          [root@tianyun ~]# ll file1         //以长模式方式查看文件权限

          -rw-rw-r-- 1 alice it 17 10-25 16:45 file1   //显示的结果

        b. 数字   r=4,w=2,x=1

          [root@tianyun ~]# chmod 644 file1

          [root@tianyun ~]# ll file1

          -rw-r--r-- 1 alice it 17 10-25 16:45 file1

        

  • 相关阅读:
    【移动自动化】【三】控件定位
    【移动自动化】【二】Appium
    【自动化测试:笔记一】adb命令
    mysql api
    计算经纬度的正方形边界
    转 高效的多维空间点索引算法 — Geohash 和 Google S2
    转 为什么geometry+GIST 比 geohash+BTREE更适合空间搜索
    转 HBase GC日志
    转 HBase最佳实践-CMS GC调优
    转:HBase最佳实践-内存规划
  • 原文地址:https://www.cnblogs.com/heilongorz/p/6052050.html
Copyright © 2020-2023  润新知