在LINUX系统管理中,我们经常添加删除修改用户和组的信息,所以我们来学习下创建删除修改用户和组
下面我们就来简单的说下什么是组、什么是用户的概念?
用户:
其实简单的理解就是文件或者目录创建的一种标识。
组:
组简单的理解就是一种容器,是用来赋予用户对于目录或文件的一种容器,所以组是不能登录系统,而且还不能使用资源。
- 账号、组管理:
- /etc/login.defs
- Shadow password suite configuration.
- /etc/passwd
- User account information.
- root:x:0:0:root:/root:/bin/bash
- 第一字段:account: 登录名
- 第二字段:password-->/etc/shadow
- 第三段:UID:
- 第四段:GID:基本组ID
- 第五段:comment: 账号的注释信息
- 第六段:HOME DIR:用户账号家目录
- 第七段:SHELL:用户的默认shell
- /etc/shadow
- Secure user account information.
- root:$1$AKMibarg$G/nw/HgmH3geg66k8/keF1:15761:0:99999:7:::
- 第一字段:account: 登录名
- 第二字段:encrypted password (如果出现的是*/!,则表明此账号无法登陆系统)
- 第三字段:最近更改密码的日期
- 第四字段:密码不可更改的天数
- 第五字段:密码要重新更改的天数
- 第六字段:密码更改期限前的警告信息
- 第七字段:密码过期的宽限时间
- 第八字段:账号失效日期
- 第九字段:保留
- /etc/group
- Group account information.
- daemon:x:2:root,bin,daemon
- 第一字段:account
- 第二字段:password
- 第三字段:GID ->用户组ID
- 第四字段:加入这个组的所有账号
- 创建用户:
- useradd [options] LOGINNAME
- -u:UID(默认是大于等于500,且不能重复)
- -g:GID(基本组):前提是这个组事先存在
- -G:GID ....附加组
- -c:"comment":指定注释信息
- -d:/path/to/directory,指定用户家目录
- -s:指定shell ->/etc/shells(当前)
- -m:当指定家目录不存在,-m强制为用户家目录。
- -M:不创建家目录
- 综合利用:
- 创建一个系统用户tom,注释信息为"This is a text account",并将ID指为111,家目录为/home/tom3
- shell改为/sbin/nologin,并加入到mygroup里面。
- # adduser -r -c "This is a text account: -d /home/tom3 -m -s /sbin/nologin -G mygroup
- ID:
- 功能:查看用户详细信息
- 选项:
- -G:所有组ID信息
- -u:显示用户ID
- -g:显示gid
- -n:显示名称
- For example:
- 查看tom用户的ID账号信息:
- # id tom 即可显示
- userdel:
- 功能:删除用户
- 选项:
- -r:删除用户的同时、家目录一并删除
- For example
- 删除tom用户并将其家目录一并删除:
- # userdel -r tom
- usermod:
- 功能:修改用户账号的各项设定
- 选项:
- -u:UID
- -g:GID 接group name必须在/etc/group组中
- -G:默认覆盖之前的附加组
- -a:追加附加组 改变用户能够支持的用户组
- -c:指定注释信息
- -d:指定家目录
- -m:即指定家目录的位置,5并移动之前家目录的内容移植到当前指定家目录中。
- -s:修改shell
- -l:更改用户名名称-->对应的是/etc/passwd文件中第一栏。
- -e:修改密码过期时间,后接日期参数为MM/DD/YY或YYYY-MM-DD
- -L:(lock)锁定用户账号
- -U:(unlock)解锁用户账号
- For example 锁定jack用户账户信息,并修改注释信息为"download file" #usermod -c "beause download file" -L jack
- 用户的功能:
- chsh:更改用户默认shell
- -l:列出当前系统可用的shell
- -s:修改自己的shell
- chfn:更改用户注释信息(finger)信息
- 选项:
- -f:后面接完整的名字
- -o:办公室地址
- -p:办公室电话
- -h:家庭电话
- passwd:修改用户密码
- 管理员:可以指定用户名,并修改用户密码
- 普通用户:只能修改本身密码
- 选项:
- --stdin:从标准输入接收
- -l:锁定账号
- -u:解锁
- -d:删除账号密码(空密码)
- For example
- 创建用户redhat,密码为空密码
- # adduser redhat
- # passwd -d redhat
- 组管理:创建、修改、删除
- 创建组:grouopadd
- groupadd
- -g:指定GID(大于500)
- -r:添加一个系统组
- 修改组属性:
- groupmod
- -g:修改GID
- -n:修改组名
- For example
- 修改组hive改名为hadoop
- # groupmod -l hadoop hive
- 删除组:
- groupdel:
- 组加密码:
- gpasswd:
- gpasswd GROUPNAME:一个用户创建的文件属主是自身,属组为自身的基本组
- newgrp GROUPNAME
- 临时切换文件的基本组
- chage:
- -d:最近一次的修改时间
- -E:仅用时间/过期时间
- -I:非活动时间
- -M: 最短使用期限
- -m:最长使用期限
- -W:警告时间
- 权限管理:
- chown:改变文件属主(只有管理员才可以使用此命令)
- 文件和目录都都可以使用
- # chown USERNAME file,.....
- -R:(递归修改):修改目录及其内部文件或目录的属主
- --reference=/path/to/somefile file...引用、参考
- chgrp:改变文件属组
- # chgrp GRPNAME file,......
- --reference=/path/to/somefile file,...
- chown:同时改变属主和属组
- # chown USERNAME:GRPNAME file,....
- # chown USERNAME.GRPNAME file,....
- chmod:修改文件的权限
- 修改三类用户的权限
- chmod MODE file,...
- -R:修改目录及子文件
- --reference=/path/to/somefile file,..
- 修改某些类用户或某些类用户权限
- 修改某类用户的某位或某些位权限
- chmod 用户类别+-MODE file,...
- chmod u-x /tmp/file
- 将/tmp/file属主执行权限去掉
- chmod a+x /tmp/file
- -x /tmp/file
转载于:https://blog.51cto.com/guodayong/1144115