用户、组的创建和管理

用户的创建

useradd usermod userdel

useradd:创建用户 create a new user or update default new user information

    useradd [options]… LOGIN

         -u,–uid:指定新用户的UID

         -o,配合-u使用,不检测用户UID的唯一性(可创建2个相同UID的帐号)

         -g,–gid:指定新建用户的GID

         -G,–group:指定新建用户的附加组,若指定多个组可用,分割

         -d,–home:指定用户的家目录

             但是其指定目录的父目录必须存在,否则无法创建其家目录

             每个用户家目录都有其配置文件,所有新建用户的家目录中的文件均来自/etc/skel/文件中

             若其指定的家目录已经存在,则不会复制/etc/skel/文件中的内容

         -s,–shell;指定用户的默认shell

             当前系统所有可用shell保存在/etc/shells文件中

         -c,指定用户信息的注释信息

         -r,–system:指定其创建的用户为系统用户,系统用户不会为其创建家目录

         -N,不为用户创建同名的组作为用户基本组,而是使用users作为基本组


    [root@CentOS6 ~]# id gao

    uid=500(gao) gid=500(gao) groups=500(gao),0(root)

    [root@CentOS6 ~]# useradd -ou 500 gaomeng1

    [root@CentOS6 ~]# id gaomeng1

    uid=500(gao) gid=5004(gaomeng1) groups=500(gao)

    [root@CentOS6 ~]# useradd -g gao -G gaomeng1 gaomeng2

    [root@CentOS6 ~]# id gaomeng2

    uid=4015(gaomeng2) gid=500(gao) groups=500(gao),5004(gaomeng1)

    [root@CentOS6 ~]# useradd -d /testdir/gaomeng3 -s /bin/csh -c "This is haha" gaomeng3

    [root@CentOS6 ~]# getent passwd gaomeng3

    gaomeng3:x:4016:4016:This is haha:/testdir/gaomeng3:/bin/csh

    [root@CentOS6 ~]# useradd -r gaomeng4

    [root@CentOS6 ~]# getent passwd gaomeng4

    gaomeng4:x:496:492::/home/gaomeng4:/bin/bash

    [root@CentOS6 ~]# ls -d /home/gao*

    /home/gao  /home/gao1  /home/gao4  /home/gaomeng1  /home/gaomeng2

    [root@CentOS6 ~]# useradd -N gaomeng5

    [root@CentOS6 ~]# getent passwd gaomeng5

    gaomeng5:x:4017:100::/home/gaomeng5:/bin/bash

    [root@CentOS6 ~]# groups gaomeng5

    gaomeng5 : users

    useradd -D

        显示创建用户的默认信息

         useradd -D [options]

             修改创建用户的默认信息,其本质是修改的/etc/default/useradd文件的内容

    [root@CentOS6 testdir]# useradd -D

    GROUP=100

    HOME=/home

    INACTIVE=-1

    EXPIRE=

    SHELL=/bin/bash

    SKEL=/etc/skel

    CREATE_MAIL_SPOOL=yes

    [root@CentOS6 testdir]# useradd -D -s /bin/csh

    [root@CentOS6 testdir]# cat /etc/default/useradd

    # useradd defaults file

    GROUP=100

    HOME=/home

    INACTIVE=-1

    EXPIRE=

    SHELL=/bin/csh

    SKEL=/etc/skel

    CREATE_MAIL_SPOOL=yes


usermod:修改用户属性 modify a user account

    usermod [options]… LOGIN

         -u,修改用户的ID,为用户指定行的UID

         -g,修改用户的基本组

         -G,修改用户的附加组,若指定多个组可用,分割

         -a,与-G结合使用,追加用户的附加组,可以在修改附加组的时候,不覆盖当前用户附加组

         -d,修改用户的家目录,但不会负责当前目录文件在指定目录中

         -m,与-d结合使用,在修改用户家目录时候,会转移家目录下的文件,-md其实完成的工作是移动和重命名

         -c,修改用户的注释信息

         -s,修改用户的默认shell

         -l,修改当前用户的用户名

        

         -L:–lock:锁定用户密码,被锁定用户,cat /etc/shadow查看密码时,其密码前面有一个!

         -U:–unlock:解锁用户密码

         -c:YYYY-mm-dd:指定用户帐号过期时间

         -f day:指定用户非活动时间

    [root@CentOS6 testdir]# usermod -g gentoo -aG gaomeng3,gaomeng4 gaomeng1

    [root@CentOS6 testdir]# id gaomeng1

    uid=500(gao) gid=4006(gentoo) groups=500(gao),4016(gaomeng3),492(gaomeng4)

    [root@CentOS6 testdir]# usermod -u 3000 -md /testdir/gaomeng2 -s /bin/csh gaomeng2

    [root@CentOS6 testdir]# id gaomeng2

    uid=3000(gaomeng2) gid=500(gao) groups=500(gao),5004(gaomeng1)

    [root@CentOS6 testdir]# getent passwd gaomeng2

    gaomeng2:x:3000:500::/testdir/gaomeng2:/bin/csh

    [root@CentOS6 testdir]# ls -a /testdir/gaomeng2

    .  ..  .bash_logout  .bash_profile  .bashrc  .gnome2  .mozilla

    [root@CentOS6 testdir]# usermod -c "big smile" -l gm3 gaomeng3

    [root@CentOS6 testdir]# getent passwd gm3

    gm3:x:4016:4016:big smile:/testdir/gaomeng3:/bin/csh

    [root@CentOS6 testdir]# usermod -L gao

    [root@CentOS6 testdir]# getent shadow gao

    gao:!$6$13tm7S5i$22vbEKEMLPu6zr.Egl8yH/eA78lCk.tnxAw5AQZ2dEVZAXRiukgLXGw62euhDQM5zVDLgZWXw8nYiOkWixVAT1:17011:0:99999:7:3::

    [root@CentOS6 testdir]# usermod -U gao

    [root@CentOS6 testdir]# getent shadow gao

    gao:$6$13tm7S5i$22vbEKEMLPu6zr.Egl8yH/eA78lCk.tnxAw5AQZ2dEVZAXRiukgLXGw62euhDQM5zVDLgZWXw8nYiOkWixVAT1:17011:0:99999:7:3::


userdel:delete a user account and related files 删除用户

    userdel [options] LOGIN

    -r:删除用户时一并删除其家目录

    [root@CentOS6 testdir]# userdel -r gaomeng2

    [root@CentOS6 testdir]# id gaomeng2

    id: gaomeng2: No such user

    [root@CentOS6 testdir]# ls -d /home/gaomeng*

    /home/gaomeng1  /home/gaomeng5

id:显示用户的真实有效的UID和GID

    id [OPTION]… [USERNAME]

         -u:仅显示用户的UID

         -g:仅显示用户的GID

         -G:仅显示用户的附加组ID

         -n:与-u  -g  -G结合使用,不显示用户的ID信息,而显示ID所对于的用户名或组名

    [root@CentOS6 ~]# id -u gao

    500

    [root@CentOS6 ~]# id -nu gao

    gao

    [root@CentOS6 ~]# id -g gao

    500

    [root@CentOS6 ~]# id -ng gao

    gao

    [root@CentOS6 ~]# id -G gao

    500 0

    [root@CentOS6 ~]# id -nG gao

    gao root


su:切换用户或以其他用户身份执行命令

    su [OPTION]… [-] [USER [ARG]…]

     非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录

            su username

     登录式切换,会读取目标用户的配置文件,模拟重新登录,切换至家目录,完全切换

         su – username

         su -l username

     -c 'COMMAND' :不切换用户的前提下,以su命令后面的用户的身份-c后面的命令

passwd:修改用户的密码,仅root用户有权限运行此命令

    id [OPTION]… [USERNAME]

         -l,-u:锁定和解锁用户,用passwd给用户家的锁,其密码前面有2个!!

         -d:清除用户密码串,并且强制用户下次登录时修改密码

         -e:强制用户下次登录修改密密码

         -n:指定最短使用期限

         -x:指定最多使用期限

         -w:指定警告期限

         -i:指定非活动期限(密码过期后必须修改密码才能登录的时间)

         -uf:可以强制新创建的无密码的用户中的锁强制消除,即该用户可以直接登录

         –stdin:从标准接收用户的密码

            #echo "centos" | passwd –stdin username

组的创建

groupadd groupmod groupdel

groupadd:添加组

    -g:指定新建组的GID

    -r:指定新建组为系统组

    [root@CentOS6 ~]# groupadd -g 3500 test

    [root@CentOS6 ~]# getent group test

    test:x:3500:

    [root@CentOS6 ~]# groupadd -r test1

    [root@CentOS6 ~]# getent group test1

    test1:x:491:

groupmod:修改组属性

    -g:修改组的GID

    -n new_name:修改组的名字

    [root@CentOS6 ~]# groupmod -g 3600 -n txt test

    [root@CentOS6 ~]# getent group txt

    txt:x:3600:


groupdel:删除组

    [root@CentOS6 ~]# groups txt

    [root@CentOS6 ~]# groupmems -l -g txt

    groupmems: group 'txt' does not exist in /etc/group


gpasswd:修改组密码

    gpasswd [OPTION] GROUP

    gpasswd GROUP :给GROUP组设置密码,不能像passwd可以从标准输入捕捉数据,避免交互

    -A user1,user2,…:设置GROUP组的管理者

    -a user :把user添加进入GROUP组

    -d user:把user从组GROUP中移除

newgrp 命令:

临时切换基本组;

如果用户本不属于此组,则需要组密码

groupmems:更改和查看组成员

    groupmems [options] [action]

         -a, –add username 指定用户加入组

         -d, –delete username 从组中删除用户

         -p, –purge 从组中清除所有成员

         -l, –list 显示组成员列表

         -g, –group groupname 更改为指定组,与-p-l选择组合使用完成特定组的操作(只有root)

groupmems -l -g GROUPNAME   查看组所属的用户列表

groups  [OPTION].[USERNAME]…  查看用户所属组列表

原创文章,作者:megedugao,如若转载,请注明出处:http://www.178linux.com/27501

(0)
megedugaomegedugao
上一篇 2016-08-03 10:08
下一篇 2016-08-03 14:33

相关推荐

  • 马哥教育网络班22期+第2周课程练习

    1、Linux上文件/目录相关命令有哪些? 1)目录管理类命令:mkdir、rmdir (1)mkdir:make directorise 创建文件夹  使用格式:      mkdir [OPTION]… DIRECTORY…    &nb…

    Linux干货 2016-09-08
  • OpenSSH的应用和利用OpenSSL创建私有CA签证给httpd服务器开起https

    一、OpenSSH     OpenSSH与SSH协议是远程登录的首选连接工具。它加密所有流量,以消除窃听,连接劫持和其它攻击。OpenSSH常常被误认以为与OpenSSL有关系,但实际上这两个项目的有不同的目的,不同的发展团队,名称相近只是因为两者有同样的软件发展目标──提供开放源代码的加密通讯软件。  &…

    Linux干货 2016-04-24
  • 基础指令使用篇 Linux版

    回显,回声 echo echo hello > /dve/pts/1 打开图形界面 init 5   关闭图形界面 init 3 ctrl+alt+F1-6字符,F7图形界面 chvt 改变虚拟终端 chvt +数字 startx  图形的软件打开 poweroff centOS 6.8与7.2都正常关闭断电 hostname 显示…

    系统运维 2016-08-04
  • 虚拟化技术介绍、Xen的简单实现

    虚拟化是什么? 虚拟化是一种资源管理技术, 是将计算机的各实体资源, 如服务、网络、内存及存储等, 予以抽象、转换后呈现出来, 打破实体之间的不可切割的障碍, 使用户可以比原本的配置更好的方式来应用这些资源。这些资源的新虚拟部分是不受现有资源的架设方式, 地域或物理配置所限制。一般情况下, 虚拟化资源包括计算能力和数据存储 —<转自维基百科&…

    2016-05-31
  • N25-第十二周博客作业

    1、请描述一次完整的http请求处理过程; (1) 建立或处理连接:接收请求或拒绝请求;(2) 接收请求:接收来自于网络上的主机请求报文中对某特定资源的一次请求的过程;(3) 处理请求:对请求报文进行解析,获取客户端请求的资源及请求方法等相关信息;(4) 访问资源:获取请求报文中请求的资源;从磁盘中获取(5) 构建响应报文:(6) 发送响应报文:(7) 记录…

    Linux干货 2017-04-09
  • Linux系统分区管理

    管理分区     查看系统中的分区4种方式 [root@localhost ~]# ls /dev/sd* [来自内存] [root@localhost ~]# cat /proc/partitions [root@localhost ~]# lsblk /dev/sda  /dev/sda1  /dev/sda2  /dev/sda3 …

    Linux干货 2017-12-02