查看当前用户/登录用户

基本语法

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 【组名】

https://blog.csdn.net/hywerr/article/details/72584886

man usermod

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

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

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

参  数:

  •  -c<备注>  修改用户帐号的备注文字。
  •  -d登入目录>  修改用户登入时的目录。
  •  -e<有效期限>  修改帐号的有效期限。
  •  -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
  •  -g<群组>  修改用户所属的群组。
  •  -G<群组>  修改用户所属的附加群组。
  •  -l<帐号名称>  修改用户帐号名称。
  •  -L  锁定用户密码,使密码无效。
  •  -s<shell>  修改用户登入后所使用的shell。
  •  -u<uid>  修改用户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:x: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 文件 以制定文件作为配置文件

原文链接:https://blog.csdn.net/u014801157/article/details/50932747

linux下把一个用户从某个组中删除,而不删除用户的更多相关文章

  1. 在Linux中怎么把用户添加到组中

    (1)添加用户test,初始密码123456,该用户的主目录为/home/share,用户的基本组为root,用户的shell为/bin/tcsh,要求将该用户加到mail和new组中.请问该怎么做啊 ...

  2. Unix/Linux环境C编程入门教程(33) 命令和鼠标管理用户和组

    Linux是一个多用户.多任务的实时操作系统,允许多人同时访问计算机, 并同时运行多个任务.UNIX系统具有稳定.高效.安全.方便.功能强大等诸多优点,自20世纪70年代开始便运行在许多大型和小型计算 ...

  3. 自学Linux Shell7.1-linux用户账户和组

    点击返回 自学Linux命令行与Shell脚本之路 7.1-linux用户账户和组 linux安全系统的核心是用户账户.每个能进入linux系统的用户都会被分配唯一的用户账户,用户对系统中各对象的访问 ...

  4. Linux系统用户与属组管理(3)

    好了,终于要到了管理 Linux 账号的时刻了,对于 Linux 有一定的熟悉度之后,再来就是要管理连上 Linux 的账号问题了,这个账号的问题可大可小,大到可以限制他使用 Linux 主机的各项资 ...

  5. Linux将用户添加到组的指令

    原文:https://blog.csdn.net/youmatterhsp/article/details/80549683:           https://www.cnblogs.com/cl ...

  6. linux 中将用户添加到组的 4 个方法

    Linux 组是用于管理 Linux 中用户帐户的组织单位.对于 Linux 系统中的每一个用户和组,它都有惟一的数字标识号.它被称为 用户 ID(UID)和组 ID(GID).组的主要目的是为组的成 ...

  7. chmod a+w . 权限控制 su、sudo 修改文件所有者和文件所在组 添加用户到sudoer列表中 当前用户信息

    对当前目录对所有用户开放读写权限 chmod a+r . $ sudo chmod -R a+w /usr/lib/python2.7 所有用户添加文件的写权限 [linux]su.sudo.sudo ...

  8. Linux用户以及组的添加与删除

    查看centos中的用户和用户组 1.用户列表文件:/etc/passwd/ 2.用户组列表文件:/etc/group 3.查看系统中有哪些用户: cut -d : -f 1 /etc/passwd ...

  9. Linux基础(2)- 用户、群组和权限

    一.用户.群组和权限 1)  新建用户natasha,uid为1100,gid为555,备注信息为“master” 2)  修改natasha用户的家目录为/Natasha 3)  查看用户信息配置文 ...

随机推荐

  1. selenium的 元素定位、元素信息、交互

    selenium的元素定位? 元素定位:自动化要做的就是模拟鼠标和键盘来操作来操作这些元素,点击.输入等等.操作这些元素前首先 要找到它们,WebDriver提供很多定位元素的方法 方法: 1.fin ...

  2. [gym102538H]Horrible Cycles

    将右侧$n$个点逆序排列,并将左侧的第$i$个点插入到右侧的$a_{i}$之前(左侧的点顺序任意) 换言之,一个左侧的点恰与(排列中)其之后所有右侧的点有边 对于一个简单环,仅保留(排列中)前$i$个 ...

  3. [noi109]排队

    题目要求其实相当于要让大于和小于m的数的个数都不超过n/2,因此当要对一个数处理时,要么把它改成m,要么不作修改,根据这个贪心就可以完成了. 1 #include<bits/stdc++.h&g ...

  4. [luogu4331]数字序列

    令$a'_{i}=a_{i}+n-i$.$b'_{i}=b_{i}+n-i$,代价仍然是$\sum_{i=1}^{n}|a'_{i}-b'_{i}|$,但条件变为了$b'_{i}\le b'_{i+1 ...

  5. [loj3048]异或粽子

    先对其求出前缀异或和,然后$o(k)$次枚举,每次选择最大值,考虑如何维护可以全局开一个堆,维护出每一个点的最大值的最大值,那么相当于要在一个点中删去一个点再找到最大值将这些删去的点重新建成一颗tri ...

  6. Kubernetes Pod 全面知识

    Pod 是在 Kubernetes 中创建和管理的.最小的可部署的计算单元,是最重要的对象之一.一个 Pod 中包含一个或多个容器,这些容器在 Pod 中能够共享网络.存储等环境. 学习 Kubern ...

  7. 既生瑜何生亮 access_token VS refresh_token

    中国有句老话, 既生瑜何生亮, 既然有我周瑜在世, 为什么老天还要一个诸葛亮啊? 同样的, 众所周知, 在 OAuth 2.0 授权协议中, 也有两个令牌 token , 分别是 access_tok ...

  8. 多线程Reactor模式

    目录 1.1 主服务器 2.1 IO请求handler+线程池 3.1 客户端 多线程Reactor模式旨在分配多个reactor每一个reactor独立拥有一个selector,在网络通信中大体设计 ...

  9. P7708「Wdsr-2.7」八云蓝自动机 Ⅰ

    *X. P7708「Wdsr-2.7」八云蓝自动机 Ⅰ. 摘自 分治与根号数据结构学习笔记 第三部分 莫队 例题 X.. 一道莫队好题.私以为本题最有价值的地方在于对单点修改的转化以及对交换两个数的处 ...

  10. 一次forEach 中 await 的使用

    forEach 和 await/async 的问题 最近在刷面试提的时候看见这样一道题 const list = [1, 2, 3] const square = num => { return ...