用户(user)和用户组(group)

一。相关配置文件

  1.  与用户(user)相关的配置文件

   1.1     /etc/passwd   用户(user)的配置文件

[root@VM_14_49_centos ~]# cat /etc/passwd 
root:x:0:0:root:/root:/bin/bash

         (1).   用户名(root)

         (2).  用户的密码原来直接存储在第二字段,但是为了安全,最后专门有了/etc/shadow文件,现在默认用x替代(x)

     (3).  用户的uid,一般情况下root为0,1-499默认为系统账号,有的更大些到1000,500-65535为用户的可登录账号,有的系统从1000开始。(0)

     (4).  用户的gid,linux的用户都会有两个ID,一个是用户uid,一个是用户组id,在我们登录的时候,输入用户名和密码,其实会先到/etc/passwd查看是否有你输

              入的账号或者用户名,有的话将该账号与对应的UID和GID(在/etc/group中)读出来。然后读出主文件夹与shell的设置,然后再去检验密码是否正确,正确的

              话正常登录。(0)

     (5).  用户的账号说明解释(root)

     (6).  用户的家目录文件夹(/root)

     (7).  用户使用的shell,如果换成/sbin/nologin/就是默认没有登录环境的。(/bin/bash)

 1.2.    /etc/shadow       用户(user)影子口令文件

[root@VM_14_49_centos ~]# cat /etc/shadow
root:$1$yncolwWR$AtIAQZLmWz66C0EwP14Ns/:17114:0:99999:7:3::

   (1).    用户名(root)

         (2).   用户的密码加密字段($1$yncolwWR$AtIAQZLmWz66C0EwP14Ns/)

         (3).   密码已经使用的日期(从1970-01-01开始,为什么?因为unix1969年发布雏形,基于当时对系统的考虑,就这样了)(17114)

         (4).   密码最少多少天之后可以修改(如果例子中是3天之后,也就是修改一次3天之后才能再次修改)(0)

         (5).   密码多少天之后必须修改(例子中99999就是表明可以一直不用修改密码)(99999)

         (6).   密码修改之前几天提醒我修改(例子中是7天之前)

         (7).   要是没有修改延长几天(例子中延长3天)(3)

         (8).   无论怎样到这个时间过期(例子中的时间从1970-01-01算)

         (9).   保留字段,目前无含义

    2.   与用户组(group)相关的配置文件

        1.1.    /etc/group      用户组(group)配置文件

[root@VM_14_49_centos ~]# cat /etc/group 
root:x:0:
bin:x:1:bin,daemon

    (1).    组名(bin)

    (2).   密码,一般不需要(x)

    (3).   组标识符gid(1)

            (4).   组里的用户列表(bin,daemon)

     1.2.   /etc/gshadow      用户组(group)的影子文件(很少用)

 3.   /etc/skel 目录

[root@VM_14_49_centos ~]# ls -la /etc/skel/
total 20
drwxr-xr-x.  2 root root 4096 Dec 12 10:14 .
drwxr-xr-x. 70 root root 4096 Dec 12 10:48 ..
-rw-r--r--   1 root root   18 Mar 23  2017 .bash_logout
-rw-r--r--   1 root root  176 Mar 23  2017 .bash_profile
-rw-r--r--   1 root root  124 Mar 23  2017 .bashrc
[root@VM_14_49_centos ~]# 

       /etc/skel目录一般是存放用户启动文件的目录,这个目录是由root权限控制,当我们添加用户时,这个目录下的文件自动复制到新添加的用户的家目录

  下;/etc/skel 目录下的文件都是隐藏文件,也就是类似.file格式的;我们可通过修改、添加、删除/etc/skel目录下的文件,来为用户提供一个统一、标准的、默

      认的用户环境;

 4.      /etc/login.defs 配置文件

        /etc/login.defs 文件是当创建用户时的一些规划,比如创建用户时,是否需要家目录,UID和GID的范围;用户的期限等等,这个文件是可以通过root来定义的;

   5.      /etc/default/useradd 文件

[root@VM_14_49_centos ~]# cat /etc/default/useradd    
# useradd defaults file
GROUP=100
HOME=/home                #把用户的家目录建在/home中
INACTIVE=-1               #是否启用帐号过期停权,-1表示不启用
EXPIRE=                   #帐号终止日期,不设置表示不启用
SHELL=/bin/bash           #所用SHELL的类型
SKEL=/etc/skel            #默认添加用户的目录默认文件存放位置;也就是说,当我们用adduser添加用户时,用户家目录下的文件,都是从这个目录中复制过去的
CREATE_MAIL_SPOOL=yes

二。相关命令

  1.  建新用户

          adduser phpq                             //新建phpq用户

      passwd phpq                               //给phpq用户设置密码

  2. 建工作组

          groupadd test                          //新建test工作组

      3. 新建用户同时增加工作组

          useradd -g test phpq                      //新建phpq用户并增加到test工作组

   -g 所属组 -d 家目录 -s 所用的SHELL

  4. 给已有的用户增加工作组

      usermod -G groupname username  (这个会把用户从其他组中去掉)

          usermod -a groupname username

  5.  永久性删除用户账号

      userdel peter

      groupdel peter

    usermod –G peter peter   (强制删除该用户的主目录和主目录下的所有文件和子目录)

  6. 从组中删除用户

      编辑/etc/group

三。文件权限

  1.   权限说明

[root@VM_14_49_centos ~]# ls -alh
total 80K
drwx------   2 root root 4.0K Dec  4 17:47 .ssh
-rw-r--r--.  1 root root  129 Dec  4  2004 .tcshrc

   (1)    d表示文件夹,-表示文件(从左往右第一个标识)

     (2)   r 可读(4)  w可写(2)  x可执行(1)       #后面的数字可直接用来改对应的权限

     (3).  从左往右每三个表示   所有者   组   其他用户  的权限

     (4).  左边的root 表示所有者,右边的root表示组

     2.   相关命令

          (1) 修改a.html的权限(文件夹也可以)

       chmod 777 a.html

     三个数字分别表示 所有者   组   其他用户  的权限,每个数字可用r(4)w(2)x(1)-(0)组合

   (2)递归修改a文件夹的所有(包括当前文件夹和里面文件夹和文件)

     chmod -R 777 a

   (3)修改文件所有者

     chown root:root a.html

四。参考

https://www.cnblogs.com/xd502djj/archive/2011/11/23/2260094.html

posted @ 2017-12-12 12:05  Python++  阅读(1964)  评论(0编辑  收藏  举报