首页 > 代码库 > 用户和组

用户和组

              用户和组

      之所周知我们想获取操作系统上的资源就必须要有账户获取相应的访问权限,好多企业规模较大一般会有很多部门,我们在搭建文件服务器的时候可以根据部门划分组在一个组的成员可以设置相同的权限便于公司内部某个部门间文件互访,既然用户和组这么重要那么下面跟大家分享下用户和组的基本操作。

 

      今天跟大家讨论下在linux系统下用户和组的使用说明:

首先给搭建介绍下模板文件,这是用户在使用useradd添加用户的时候参照的模板其配置文件为/etc/login.defs,下面分析下主要字段的相关含义。

      

MAIL_DIR        /var/spool/mail 用户邮件位置

 

PASS_MAX_DAYS   99999     密码过期的最大天数 表示密码永不过期

 

PASS_MIN_DAYS   0             密码过期的最小天数                    

      

PASS_MIN_LEN    5               密码的最小长度          

      

PASS_WARN_AGE   7           密码过期的警告时间

 

CREATE_HOME     yes          是否创建加目录

 

 

 

用户uid的范围(常规创建)

 

UID_MIN                   500

 

UID_MAX                 60000

    

 

 

用户gid的范围

 

GID_MIN                   500

 

GID_MAX                 60000

 

 

 

UID 系统用来标识用户的身份 就好比人的身份证

     

GID 系统用来标识组的身份

 

 

用户文件分析

 

cat /etc/passwd  | grep  user1

     

user1:x:66666:504::/home/user1:/bin/bash

 

1.用户名

 

2.密码位(如果把x位拿掉此用户就无密码)

 

3.用户的uid

   

4.用户的gid

     

5.描述信息

     

6.用户的家目录      

     

7.用户登录的shell环境   

  

     

说明:

/sbin/nologin 非登录shell 如果设置为此shell表示次用户不能登录到该系统

 

创建用户帮助:

useradd --help  man useradd

 

创建用户

useradd   zhangsanfeng             创建新用户

 

useradd  -d  /tmp/lisi    lisi        指定家目录

 

useradd  -u 66666  user1           指定UID创建用户

 

useradd  -g 505 user3               指定GID(该gid要存在)

 

useradd  -c IT mayun                指定用户的描述信息

 

useradd  -s /sbin/nologin user4        指定用户的登录shell

useradd     -e, --expiredate EXPIRE_DATE   指定指定账户的过期时间

          

useradd     -e 11/02/15 user5

 

useradd    -G IT1IT2        定义用户有多个附属组

         

useradd    -o, --non-unique    用户和组非唯一

         

useradd    -u 509  user7  -o   创建相同uid的用户

       

useradd    -r, --system

系统用户uid范围1-499  系统用户一般无法登录 有些服务依赖这些账户

 

 

设置密码

    passwd lisi

 

 

 

用户切换

   su - user   

 

注意:用户切换的时候需要带-  

 

普通用户跟普通用户间切换需要密码

普通切换到root需要密码  

root切换到普通用户无需密码  

如果退出当前用户exit   

-表示还原为自己的环境变量   

不带-表示继承上个用户的环境变量

 

 

 查看用户

    1cat /etc/passwd

 

    2id user1  

 

说明:

uid=66666(user1) gid=504(user1) =504(user1) 其中user1为主组如果后面还有其他组叫做附属组。

    

    

 

whoami 显示当前的用户是谁

groups 查看组

 

修改用户

    查看帮助

    usermod --help  

    man  usermod

 

用法:

    usermod  -c  "武当" zhangsan    修改用户的描述信息

         

             -d  /home/lisi   lisi        修改用户的家目录

         

             -e  11/02/15    user2    修改用户账户具体过期时间  

         

             -g  IT user1                 修改用户的主组

         

             -G  zhangsanfeng,IT  lisi lisi添加两个附属组

         

             -l  yewen lisi                把用户lisi改为yewen

          

             -L  user1                     锁定账户user1

         

             -U  user1                     解锁账户

         

             -o                            非唯一

         

             -s  /sbin/nologin  user2  更改用户的登录shell

         

             -u  888  zhangsan         修改用户的uid

 

 

      设置密码

      passwd [username]

 

 

      账户切换

      su - <username>

 

 

      退出账户

      exit

 

 

      

删除账户

      userdel -r username (-r彻底删除)

 

 

锁定用户

      usermod -L username  

 

 

锁定密码

      passwd  -l user1

    

      

 

解锁密码

 

      passwd  -u user1

 

  

      

查看用户的状态

 

      passwd  -S user1

    

++++++++++++++++++关于组(主、附属)+++++++++++++++++++++++++++++++

 

      

创建组

      groupadd  store          直接创建组

                -g   515  IT1  创建一个指定gid的组

                -o            非唯一 可以跟别的组gid一样

                -r    IT2      创建系统组

    

 

 

查看组信息:

    cat /etc/group

    组名:密码位:gid:组员

 

查看某用户组信息

    id username

 

 

 

 

添加、删除用户到/出组

    gpasswd  --help

        

             -a  user1  IT     把用户user1 添加到IT

             -d  user1  IT     把用户user1 移出IT

        

             -M user1,user2  IT 把多个用户追加到统一个组

        

             -A redhat,user3 IT  设置IT组的管理员为redhat and user3

   

注意:组的管理员并不属于该组             

      

gshadow文件详解       

cat /etc/gshadow | grep IT

IT:!:redhat,user3:user1,user2

     

组名:密码:组的管理员:组的成员列表

         

 

删除组

     groupdel   IT  

 

shadow文件详解

cat /etc/shadow

     1.用户名

 

     2.密码

 

     3.用户最后一次修改密码的日期 (16738/365+1970=2015

 

     4.可以修改密码的最小间隔

 

     5.密码过期时间

 

     6.密码过期前警告期限

 

     7.密码过期时间到期后可以宽限的时间

 

     8.账户具体过期时间

 

     9.保留位

 

 

 

如何手动创建用户?

     1.vim  /etc/passwd

      jim:x:505:505::/home/jim:/bin/bash

 

     2.vim  /etc/shadow

      jim:!!:16742:0:99999:7:::

  

     3.vim /etc/group

       jim:x:505:

     

     4.vim /etc/gshadow

        jim:!::

 

     5.mkdir  /home/jim

   

     6.cp -r /etc/skel/.   /home/jim/

 

     7.chmod 700 /home/jim/ -R

 

     8.chown  jim.jim /home/jim/ -R

 

     9.cd /var/spool/mail/

      touch jim

 

     10.chmod 660 jim

 

     11.chgrp mail jim

 

 

关于用户和组的分享今天就说到这里,不足住处请大家指正谢谢!

 

 

 

 

 


用户和组