在LINUX系统管理中,我们经常添加删除修改用户和组的信息,所以我们来学习下创建删除修改用户和组
下面我们就来简单的说下什么是组、什么是用户的概念?

用户:
其实简单的理解就是文件或者目录创建的一种标识。

组:
组简单的理解就是一种容器,是用来赋予用户对于目录或文件的一种容器,所以组是不能登录系统,而且还不能使用资源。

   
   
   
   
  1.               
  2.               
  3. 账号、组管理:  
  4.  
  5. /etc/login.defs  
  6.           Shadow password suite configuration.  
  7.  
  8. /etc/passwd  
  9.           User account information.         
  10.     root:x:0:0:root:/root:/bin/bash  
  11.  
  12. 第一字段:account: 登录名  
  13. 第二字段:password-->/etc/shadow  
  14. 第三段:UID:  
  15. 第四段:GID:基本组ID  
  16. 第五段:comment: 账号的注释信息  
  17. 第六段:HOME DIR:用户账号家目录  
  18. 第七段:SHELL:用户的默认shell  
  19.  
  20.  
  21. /etc/shadow  
  22.           Secure user account information.  
  23. root:$1$AKMibarg$G/nw/HgmH3geg66k8/keF1:15761:0:99999:7:::  
  24.  
  25. 第一字段:account: 登录名  
  26. 第二字段:encrypted password (如果出现的是*/!,则表明此账号无法登陆系统)  
  27. 第三字段:最近更改密码的日期  
  28. 第四字段:密码不可更改的天数  
  29. 第五字段:密码要重新更改的天数  
  30. 第六字段:密码更改期限前的警告信息  
  31. 第七字段:密码过期的宽限时间  
  32. 第八字段:账号失效日期  
  33. 第九字段:保留  
  34.  
  35. /etc/group 
  36.           Group account information.  
  37. daemon:x:2:root,bin,daemon  
  38.  
  39. 第一字段:account  
  40. 第二字段:password 
  41. 第三字段:GID ->用户组ID  
  42. 第四字段:加入这个组的所有账号  
  43.  
  44.  
  45. 创建用户:  
  46. useradd [options] LOGINNAME  
  47.     -u:UID(默认是大于等于500,且不能重复)  
  48.     -g:GID(基本组):前提是这个组事先存在  
  49.     -G:GID ....附加组  
  50.     -c:"comment":指定注释信息  
  51.     -d:/path/to/directory,指定用户家目录  
  52.     -s:指定shell  ->/etc/shells(当前)  
  53.     -m:当指定家目录不存在,-m强制为用户家目录。  
  54.     -M:不创建家目录  
  55. 综合利用:
  56. 创建一个系统用户tom,注释信息为"This is a text account",并将ID指为111,家目录为/home/tom3
  57. shell改为/sbin/nologin,并加入到mygroup里面。
  58. # adduser -r -c "This is a text account: -d /home/tom3 -m -s /sbin/nologin -G mygroup
  59.  
  60. ID:  
  61.     功能:查看用户详细信息  
  62.     选项:  
  63.         -G:所有组ID信息  
  64.         -u:显示用户ID  
  65.         -g:显示gid  
  66.         -n:显示名称  
  67. For example:
  68. 查看tom用户的ID账号信息:
  69. # id tom 即可显示
  70.  
  71. userdel:          
  72.     功能:删除用户  
  73.     选项:  
  74.         -r:删除用户的同时、家目录一并删除  
  75. For example
  76. 删除tom用户并将其家目录一并删除:
  77. # userdel -r tom
  78. usermod:  
  79.     功能:修改用户账号的各项设定  
  80.     选项:  
  81.         -u:UID  
  82.         -g:GID    接group name必须在/etc/group组中  
  83.         -G:默认覆盖之前的附加组  
  84.             -a:追加附加组 改变用户能够支持的用户组  
  85.     -c:指定注释信息  
  86.     -d:指定家目录  
  87.         -m:即指定家目录的位置,5并移动之前家目录的内容移植到当前指定家目录中。  
  88.     -s:修改shell  
  89.     -l:更改用户名名称-->对应的是/etc/passwd文件中第一栏。  
  90.     -e:修改密码过期时间,后接日期参数为MM/DD/YY或YYYY-MM-DD  
  91.     -L:(lock)锁定用户账号  
  92.     -U:(unlock)解锁用户账号  
  93.  For example 锁定jack用户账户信息,并修改注释信息为"download file" #usermod -c "beause download file" -L jack
  1.       
  2. 用户的功能:  
  3. chsh:更改用户默认shell  
  4.         -l:列出当前系统可用的shell  
  5.         -s:修改自己的shell  
  6.  
  7. chfn:更改用户注释信息(finger)信息  
  8.     选项:  
  9.         -f:后面接完整的名字  
  10.         -o:办公室地址  
  11.         -p:办公室电话  
  12.         -h:家庭电话  
  13.  
  14. passwd:修改用户密码  
  15.     管理员:可以指定用户名,并修改用户密码  
  16.     普通用户:只能修改本身密码  
  17. 选项:  
  18.     --stdin:从标准输入接收   
  19.     -l:锁定账号  
  20.     -u:解锁  
  21.     -d:删除账号密码(空密码)  
  22. For example
  23. 创建用户redhat,密码为空密码
  24. # adduser redhat
  25. # passwd -d redhat
  26.       
  27. 组管理:创建、修改、删除  
  28. 创建组:grouopadd  
  29. groupadd      
  30.     -g:指定GID(大于500)  
  31.     -r:添加一个系统组
  32.  
  33.       
  34. 修改组属性:  
  35. groupmod  
  36.     -g:修改GID  
  37.     -n:修改组名  
  38. For example
  39. 修改组hive改名为hadoop
  40. # groupmod -l hadoop hive
  41.       
  42. 删除组:  
  43. groupdel:  
  44.       
  45. 组加密码:  
  46. gpasswd:  
  47.         gpasswd GROUPNAME:一个用户创建的文件属主是自身,属组为自身的基本组  
  48.  
  49. newgrp GROUPNAME     
  50.     临时切换文件的基本组  
  51.  
  52. chage:  
  53.     -d:最近一次的修改时间  
  54.     -E:仅用时间/过期时间  
  55.     -I:非活动时间  
  56.     -M: 最短使用期限  
  57.     -m:最长使用期限  
  58.     -W:警告时间  
  59.       
  60.       
  61. 权限管理:  
  62.  
  63. chown:改变文件属主(只有管理员才可以使用此命令)  
  64.        文件和目录都都可以使用  
  65.        # chown USERNAME file,.....  
  66.        -R:(递归修改):修改目录及其内部文件或目录的属主   
  67.        --reference=/path/to/somefile file...引用、参考  
  68. chgrp:改变文件属组  
  69.        # chgrp GRPNAME file,......  
  70.        --reference=/path/to/somefile file,...  
  71.          
  72. chown:同时改变属主和属组      
  73.        # chown USERNAME:GRPNAME file,....  
  74.        # chown USERNAME.GRPNAME file,....  
  75.          
  76. chmod:修改文件的权限  
  77. 修改三类用户的权限  
  78. chmod MODE file,...  
  79.     -R:修改目录及子文件  
  80.     --reference=/path/to/somefile file,..  
  81. 修改某些类用户或某些类用户权限  
  82.       
  83. 修改某类用户的某位或某些位权限  
  84. chmod 用户类别+-MODE file,...  
  85. chmod u-x /tmp/file  
  86.         将/tmp/file属主执行权限去掉  
  87. chmod a+x /tmp/file  
  88.        -x /tmp/file  
  89.