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

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 21:08
下一篇 2017-07-25 16:32

相关推荐

  • sed命令、crontab任务、简单脚本练习(21期网络班第六周博客作业)

    vim使用: 直接使用sed模式空间演示,基本语法与vim命令模式类似(需注意vim默认定界为当前行,一般需要在前面加1,$定界为全文,而sed不需要) 1、 复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;      sed &#03…

    Linux干货 2016-08-22
  • 107-tomcat

    一.编程语言基础  1.1 编程语言: 硬件级:微码编程,汇编语言 系统级:C,C++,…

    2016-12-02
  • N28-第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
    3、请使用命令行展开功能来完成以下练习:
    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
    (2)、创建/tmp/mylinux目录下的:
    mylinux/
    ├── bin
    ├── boot
    │   └── grub
    ├── dev
    ├── etc
    │   ├── rc.d
    │   │   └── init.d
    │   └── sysconfig
    │   └── network-scripts
    ├── lib
    │   └── modules
    ├── lib64
    ├── proc
    ├── sbin
    ├── sys
    ├── tmp
    ├── usr
    │   └── local
    │   ├── bin
    │   └── sbin
    └── var
    ├── lock
    ├── log
    └── run
    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
    5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
    7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
    8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
    9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
    11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
    12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

    Linux干货 2017-12-11
  • 文件管理基础知识及命令详解

    文件系统     文件和目录被组织成一个单根倒置树结构     文件系统从根目录下开始,用“ /”表示     根文件系统(rootfs): root filesystem    …

    Linux干货 2016-08-05
  • 马哥教育21期网络班—第11周课程+练习—-成长进行时–不退步–下

    3、描述DNS查询过程以及DNS服务器类别。 DNS查询过程主机—>查找互联网上的主机 www.magedu.com—>联系到自己指向的DNS服务器—>DNS服务器—>找根 .—>根返回给DNS服务器—>DNS找.com—>com返回给DNS—->DNS找ma…

    Linux干货 2016-09-19
  • 深入解析:分布式系统的事务处理经典问题及模型(转载分享)

    摘要:分布式系统需要在数据完整、一致性和性能间做平衡。本文系统介绍了处理分布式数据一致性的技术模型,如:Master-Slave,Master-Master,2PC/3PC,经典的将军问题,Paxos,以及Dynamo的NRW和VectorClock的模型。 编者按:数据服务的高可用是所有企业都想拥有的,但是要想让数据有高可用性,就需要冗余数据写多份。写多份…

    Linux干货 2015-04-04