用户组和权限管理的相关命令

1,useradd  新建用户

useradd
-u uid username 创建用户时指定uid(如不指定则Centos:500-60000, Centos7: 1000-60000)
-o -u uid username  创建用户时指定uid(可以与已存在用户的uid相同)
-g groupname username 创建用户时指定主组为某个已存在的组。(将不会再创建与用户同名的组)
-c …  username 创建用户时指定描述信息。
-d path username 指定用户的家目录(确保指定的家目录所在的上级目录要存在,且家目录本身不能存在)
-s /sbin/nologin username 指定用户的默认shell
-G group1[,group2] username 指定用户的辅助组
-N username 设置用户的主要组为默认组(users,gid=100)
-r username 创建系统用户

2,usermod  

usermod -u newuid username  修改用户的UID

usermod
-aG groupname 可以追加辅助组而不用覆盖之前的组
-G “” username  或 usermod -G 清空用户所有的辅助组
-g groupname username 修改用户的主组
-s /sbin/nologin username 修改用户的默认shell 
-m -d /…/path username 修改用户的家目录信息,并将家目录移动到目的目录并改名。
-l newname oldname 修改用户名
-L 给用户/etc/shadow中的密码位加!使用户被锁定
-U 把!拿掉。
-e yyyy-mm-dd 设置一个帐户过期时间
-f days 指定密码过期之后多少天帐户过期
-c …  username 修改用户时指定描述信息。
-d /…/path username 修改用户的家目录(不会创建,只修改/etc/passwd当中的家目录信息)

3,userdel删除用户

userdel [-r] username    删除用户时,加上-r连同其家目录,mail一同删除

4,groupadd 添加组名

groupadd
-g gid groupname 创建指定gid的组
-r groupname 创建系统组

5,groupmod

groupmod
-n newgrpname oldgrpname 修改组名
-g newgid groupname 修改gid

6,groupdel groupname  删除组

7,groups  username 查看指定用户属于那些组

8,gpasswd

gpasswd groupname 设置组密码

newgrp groupname(普通用户):当用户不是该groupname的辅助组成员时,则需要输入密码,成功后临时以主要组的身份加入该组。

当用户是该groupname的辅助组成员时,无需输入密码,将临时以主要组的身份加入该组,而其原有的主要组,临时变为辅助组。

gpasswd
-A username groupname 任命组管理员
-A “” groupname 撤消所有管理员
-a username groupname 往组中增加用户
-d username  groupname  将用户从组中删除
-r groupname 删除组密码
-M username ,.. ,… 设置辅助组的成员列表。(可以批量添加,中间用逗号隔开)

9,groupmems(仅限root使用,其他无权限)

groupmems
-g groupname -a username  仅能一次加一个用户到组中
-g groupname -d username 将指定成员从组中删除
-g groupname -l  列出指定组的成员列表(辅助组)
-p groupname 消除指定组的所有成员

10,实际应用:

创建下面的用户、组和组成员关系
名字为admins 的组
用户natasha,使用admins 作为附属组
用户harry,也使用admins 作为附属组
用户sarah,不可交互登录系统,且不是admins 的成员,
natasha,harry,sarah密码都是centos
用户组和权限管理的相关命令


原创文章,作者:风之轨迹,如若转载,请注明出处:http://www.178linux.com/82667

(0)
风之轨迹风之轨迹
上一篇 2017-07-24
下一篇 2017-07-25

相关推荐

  • rpm 程序包管理器的基本使用

    目录 安装程序包 卸载 升级 查询 校验 来源合法性和完整性验证 数据库重建 1     安装程序包 rpm -ivh /path/to/package_file -v     显示执行过程的参数。 -h   &nbsp…

    Linux干货 2016-06-22
  • 搜索引擎-处理查询

     我们从用户的角度来看,用户不关心什么索引结构是倒排还是签名文件,也不需要知道相关排序算法。用户提交了查询,就需要获取满意的搜索结果。这个搜索结果就是搜索引擎是否提供有效的服务。 1.查询流程 查询流程图: 1)用户提交查询 2)分析查询      查询预处理:    …

    Linux干货 2015-12-10
  • 初学Linux练习题

    1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中 tr ‘a-z’ ‘A-Z’ < /etc/issue  > /tmp/issue.out 2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中 3、一个linux用户给root发邮件…

    2017-11-19
  • MySQL优化大全

     1. 优化SQL   1)通过show status了解各种sql的执行频率         show status like 'Com_%'        了解 Com_select,Com_in…

    Linux干货 2015-04-13
  • linux中进程及内存管理工具

    pstree 显示进程树 ({}是线程) 选项-p #显示进程编号 pstree username #查看指定用户的进程 centos7中可以使用选项-s来查看指定进程的父子进程   ps (默认显示当前终端运行的进程) 支持三种选项: 1、UNIX选项 -C cmdlist 指定命令(允许同时指定多个命令) -L 显示线程 -e: 显示所有进程,…

    Linux干货 2017-12-17
  • Linux发展史

    简述 Linux于1991年10月5日诞生,由Linus torvalds和后面陆续加入的众多爱好者共同开发完成的操作系统 Linux只表示Linux kernl,但由于习惯用Linux来形容整个基于Linux kernl,使用GNU计划的各种工具和数据库的操作系统 Linux的标志 一只名为Tux的企鹅 大家要Linus Torvalds想一只吉祥物,他想…

    2017-03-26