用户管理命令:

useradd,userdel,usermod,passwd,chsh.chfn,finger,id,chage


Useradd(建立用户)

useradd [options] USERNAME               例:useradd -g mygroup user2建立一个用户user2并且指定组为mygroup

     -u:手动指定UID                               -u例子:useradd -u 1000 user1
     -g:手动指定GID(基本组)                  
:     -G:手动指定GID,...(省略号表示可以有多个)(附加组或额外组)                  tail /etc/group可以查看附加组时添加给谁
     -c:"comment"(指定注释信息)
     -d:/path/to/somedirectory(指定某个目录)【指定其家目录】一般如果不指定家目录,默认就会在/home目录下创建一个跟用户名同名的目录作为其家目录。
     -s:指定SHELL的路径 /bin/bash       useradd -s /sbin/nologin user5
     -m -k 一起使用,{也可以只用-m[/etc/skel/  bsh的配置文件(框架)]:强制为用户创建家目录},用-k选项,SKEL DIR
所包含的文件会被复制到家目录。(SKEL下的文件都是bash用于你的个人的环境变量配置文件 )
     -M:不给用户创建家目录
     -r:添加系统用户           例子:useradd -r apach

/etc/login.defs(配置文件)


/etc/shells:指定了当前系统可用的安全shell

atil -1 /etc/passwd
 
环境变量:


PATH
HISTSIZE
SHELL:用于保存当前用户的默认SHELL(echo $SHELL可以查看自己当前的shell)


userdel:(删除用户)

在删除用户的时候没有指定任何选项,删除用户以后,用户的家目录是不会被删除的


userdel [option] USERNAME
       -r:用时删除用户的家目录



id:查看用户的账号属性信息


-u:只看uid
-g:只看gid
-G:查看所有组的组ID
-n:显示名称而非ID号,可以跟另外三项搭配,就会显示相关的名都可以与-n一块用。



finger:查看用户账号信息

finger USRNAME



修改用户账号属性:usermod



   -u UID:改用户信息     例:usermod -u 2002 user3,修改UID
   -g GID:                         修改gid
   -a -G:GID:不使用-a选项,会覆盖此前的附加组:
   -c:显示注释信息
   -d-m:为用户指定新的家目录(既指定新的家目录位置,又移动其此前的文件至新的家目录当中去)
   -s:改shell
   -l :改login in name   usermod -l xanxus(新用户名称) user3(原来用户名称)
   -e :定义用户的过期时间YYYY-YY-DD
   -L:锁定账号
   -U:解锁账号


  

chsh:修改用户的shell   

chfn:修改注释信息


密码管理(管理员还可以修改其他用户的密码):

passwd [USERNAME]

     --stdin:从标准输入键盘读取新的密码输入
     -l:锁定账号
     -u:解锁账号   
     -d:删除用户密码
     -n:密码最短使用期限
     -x:密码最长使用期限
     -w:警告时间
     -i:非活动时间

pwck:检查用户账号完整性




组管理:


创建组:groupadd
             -g:指定GID
             -r:添加系统组          

        


          groupmod(修改组的相关属性)
          -g:修改GID
          -n:修改组名(GRPNAME)
          -l:指定新的组名


groupdel:删除一个组

gpasswd:为组设定密码(切换没有任何关系的基本组时需要)


newgrp:切换基本组 exit:退出切换基本组
newgrp GRPNAME <---> exit


习题:

1.创建一个用户mandriva,其ID号为2002,基本组为distro(组ID为3003),附加组为linux:

#groupadd -g 3003 distro
#groupadd linux

#usradd -u 2002 -g distro -G linux mandriva


2.创建一个用户fedora,其全名为fedora community,默认shell为tcsh:

#useradd -c "fedora community" -s /sbin/tcsh fedora


3.修改mandriva的ID号为4004,基本组为linux,附加组为distro和fedora;

#usermod -u 4004 -g linux -G distro,fedora mandriva


4.给fedora加密码,并设定其密码最短使用期限为2天,最长为50天;

#passwd -n 2 -x 50  fedora


5.将mandriva的默认shell改为/bin/bash

#usermod -s /bin/bash mandriva


6.添加系统用户hbase,且不允许其登陆系统

#useradd -r -s /sbin/nologin hbase


chage 转换密码
  -d:最近一次的修改时间
  -E:过期时间
  -I:非活动时间
  -m:最短使用期限
  -M:最长使用期限
  -W:警告时间