查看当前用户/登录用户

基本语法

whoami / who am I

用户组

介绍

类似于角色,系统可以对有共性的多个用户进行统一的管理。

新增组

语法

groupadd 组名

案例演示

添加test和dev组

[root@songzuozhen ~]# groupadd test

[root@songzuozhen ~]# groupadd dev


删除组

语法

groupdel 组名

案例演示

[root@songzuozhen ~]# groupdel test

[root@songzuozhen ~]# groupdel dev


增加用户时直接加上组

语法

useradd –g 用户组 用户名

案例

[root@songzuozhen ~]# useradd -g dev xiaohong

[root@songzuozhen ~]# id xiaohong

uid=1003(xiaohong) gid=1002(dev) 组=1002(dev)


修改用户的组

语法

usermod –g 用户组 用户名

案例演示

[root@songzuozhen ~]# groupadd test

[root@songzuozhen ~]# usermod -g test xiaohong

[root@songzuozhen ~]# id xiaohong

uid=1003(xiaohong) gid=1003(test) 组=1003(test)


用户和组的相关文件

/etc/passwd 文件

用户(user)的配置文件,记录用户的各种信息

每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

/etc/shadow 文件

口令的配置文件

每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警

告时间:不活动时间:失效时间:标志

/etc/group 文件

组(group)的配置文件,记录Linux包含的组的信息

每行含义:组名:口令:组标识号:组内用户列表

拓展:删除组

删除组时,必须在该组没有用户的情况下进行删除。所以,我们可以把用户移除出组或者直接删除用户。

man gpasswd

gpasswd命令是Linux下工作组文件/etc/group和/etc/gshadow管理工具。

语法

gpasswd(选项)(参数)gpasswd[-a user][-d user][-A user,...][-Muser,...][-r][-R]groupname

选项:

-a:添加用户到组;

-d:从组删除用户;

-A:指定管理员;

-M:指定组成员和-A的用途差不多;

-r:删除密码;

-R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。

参数组:指定要管理的工作组。实例如系统有个peter账户,该账户本身不是groupname群组的成员,使用newgrp需要输入密码即可。gpasswd groupname让使用者暂时加入成为该组成员,之后peter建立的文件group也会是groupname。所以该方式可以暂时让peter建立文件时使用其他的组,而不是peter本身所在的组。所以使用gpasswd groupname设定密码,就是让知道该群组密码的人可以暂时切换具备groupname群组功能的。

gpasswd -A peter users

这样peter就是users群组的管理员,就可以执行下面的操作:

gpasswd -a mary users

gpasswd -a allen users

注意:添加用户到某一个组 可以使用usermod -G group_name user_name这个命令可以添加一个用户到指定的组,但是以前添加的组就会清空掉。

所以想要添加一个用户到一个组,同时保留以前添加的组时,请使用gpasswd这个命令来添加操作用户:gpasswd -a user_name group_name。

*给组账号设置完密码以后,用户登陆系统,使用newgrp命令,输入给组账号设置的密码,就可以临时添加到指定组,可以管理组用户,具有组权限。格式:newgrp 【组名】​

man usermod

功能说明:修改用户帐号。

语  法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s ][-u ][用户帐号]

补充说明:usermod可用来修改用户帐号的各项设定。

参  数:

 -c<备注>  修改用户帐号的备注文字。

 -d登入目录>  修改用户登入时的目录。

 -e<有效期限>  修改帐号的有效期限。

 -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。

 -g<群组>  修改用户所属的群组。

 -G<群组>  修改用户所属的附加群组。

 -l<帐号名称>  修改用户帐号名称。

 -L  锁定用户密码,使密码无效。

 -s  修改用户登入后所使用的shell。

 -u  修改用户ID。

 -U  解除密码锁定。

usermod 不 允 许 你 改 变 正 在线 上 的 使 用 者 帐 号 名 称 。 当 usermod 用 来 改 变 user ID, 必 须 确 认 这 名 user 没 在 电 脑 上 执 行 任 何 程 序。 你 需 手 动 更 改 使 用 者 的 crontab 档 。 也 需 手 动 更 改 使 用 者 的 at 工 作 档 。 采 用 NIS server 须 在 server 上 更 动 相 关 的 NIS 设 定 。

应用举例:

1、将 newuser2 添加到组 staff 中

  > # usermod -G staff newuser2

2、修改 newuser 的用户名为 newuser1

  > # usermod -l newuser1 newuser

3、锁定账号 newuser1

  > # usermod -L newuser1

4、解除对 newuser1 的锁定

  > # usermod -U newuser1

注意(caution):

usermod不允许你改变正在线上的使用者帐号名称。当usermod用来改变userID,必须确认这名user没在电脑上执行任何程序

/etc/passwd

user_name❌uid:gid:commnet:home:shell

/etc/shadow

username:passwd:lastchg:min:max:warn:inactive:expire:flag

--用户名

--密码

--从1970年1月1日起到上次修改密码所经过的天数

--密码再过几天可以被变更(0表示随时可以改变)

--密码再过几天必须被变更(99999表示永不过期)

--密码过期前几天提醒用户(默认为一周)

--密码过期几天后帐号被禁用

--从1970年1月1日算起,多少天后账号失效

原文链接:​​http://blog.51cto.com/11886896/1833312f-empty​​ 只有当该用户组中无成员时才删除

deluser USER GROUP

将用户从一个组中删除

例: deluser mike students

常用选项:

--quiet | -q 不将进程信息发给 stdout

--help | -h 帮助信息

--version | -v 版本号和版权

--conf | -c 文件 以制定文件作为配置文件