三、(2)用户及组管理类命令简述

简述who、last、groupadd、useradd、usermod、userdel、passwd命令的使用方法

who命令

who – show who is logged on(显示已经登陆的用户)

  • 常见用法:
  1. -b
    —boot:time of last system boot(显示系统此次启动的日期和时间):

    [root@localhost ~]# who -b
          system boot  2018-04-03 03:46
    
  2. -r
    —runlevel:print current runlevel(显示当前的运行模式):

    [root@localhost ~]# who -r
          run-level 5  2018-04-03 03:47
    
  • 使用实例:列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可
    [root@localhost ~]# who
    root     pts/0        2018-04-03 03:47 (172.16.100.19)
    root     pts/1        2018-04-03 03:55 (172.16.100.19)
    gentoo   pts/2        2018-04-03 04:19 (172.16.100.19)
    root     pts/4        2018-04-03 04:28 (172.16.100.19)
    [root@localhost ~]# who | cut -d ' ' -f 1
    root
    root
    gentoo
    root
    [root@localhost ~]# who | cut -d ' ' -f 1 | sort -u
    gentoo
    root
    

last命令

last, lastb – show listing of last logged in users(显示最近登录的用户列表)

  • 常见用法:
    -[num]:This is a count telling last how many lines to show(显示指定数量的行)
  • 使用实例:取出最后登录到当前系统的用户的相关信息
    [gentoo@localhost ~]$ last -1
    gentoo   pts/2        172.16.100.19    Tue Apr  3 04:42   still logged in   
    wtmp begins Sat Dec  9 18:03:47 2017
    [gentoo@localhost ~]$ last -1 | head -1
    gentoo   pts/2        172.16.100.19    Tue Apr  3 04:42   still logged in   
    [gentoo@localhost ~]$ last -1 | head -1 | cut -d ' ' -f 1
    gentoo
    [gentoo@localhost ~]$ last -1 | head -1 | cut -d ' ' -f 1 | id
    uid=1000(gentoo) gid=1000(gentoo) groups=1000(gentoo) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
    

groupadd命令

groupadd – create a new group(创建一个新组)

  • 常见用法:
  • groupadd [options] group
    -g [GID]:指定GID(默认是上一个组的GID+1)
    -r:创建系统组
  • 使用实例:创建组distro,其GID为2016
    [root@localhost ~]# groupadd -g 2016 distro
    [root@localhost ~]# cat /etc/group | grep distro
    distro:x:2016:
    

useradd命令

useradd – create a new user or update default new user information(创建一个新用户或更新默认新用户信息)

  • 常见用法:
  • useradd [options] LOGIN
    -u [UID]:指定UID
    -g:指定基本组(此组需存在)
    -G:指明用户所属的附加组(多个组之间用逗号分隔)
    -c:指明注释信息
    -d:以指定的路径为用户的家目录(通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件)
    -r:创建系统用户
  • 使用实例:
  1. 创建用户mandriva,其ID号为1005;基本组为distro
    [root@localhost ~]# useradd -u 1005 -g distro mandriva
    [root@localhost ~]# cat /etc/passwd | grep mandriva
    mandriva:x:1005:2016::/home/mandriva:/bin/bash
    
  2. 创建用户mageia,其ID号为1100,家目录为/home/linux
    [root@localhost ~]# useradd -u 1100 -d /home/linux mageia
    [root@localhost ~]# cat /etc/passwd | grep mageia
    mageia:x:1100:1100::/home/linux:/bin/bash
    
  3. 创建用户slackware,其ID号为2002,基本组为distro,附加组为peguin
    [root@localhost ~]# useradd -u 2002 -g distro -G peguin slackware
    [root@localhost ~]# id slackware
    uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin)
    

usermod命令

usermod – modify a user account(修改用户账户信息)

  • 常见用法:
  • usermod [options] LOGIN
    -u:修改用户的ID为此处指定的新UID
    -g:修改用户所属的基本组
    -G:修改用户所属的附加组(多个组之间用逗号分隔;原来的附加组会被覆盖)
    -a:与-G一同使用,用于为用户追加新的附加组
    -c:修改注释信息
    -d:修改用户的家目录(用户原有的文件不会被转移至新位置)
    -m:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录
    -l:修改用户名
    -s:修改用户的默认shell
    -L:锁定用户密码(即在用户原来的密码字符串之前添加一个”!”)
    -U:解锁用户的密码
  • 使用实例:
  1. 修改slackware的默认shell为/bin/tcsh
    [root@localhost ~]# cat /etc/passwd | grep slackware
    slackware:x:2002:2016::/home/slackware:/bin/bash
    [root@localhost ~]# usermod -s /bin/tcsh slackware
    [root@localhost ~]# cat /etc/passwd | grep slackware
    slackware:x:2002:2016::/home/slackware:/bin/tcsh
    
  2. 为用户slackware新增附加组admins
    [root@localhost ~]# id slackware
    uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin)
    [root@localhost ~]# usermod -a -G admins slackware
    [root@localhost ~]# id slackware
    uid=2002(slackware) gid=2016(distro) groups=2016(distro),2017(peguin),2018(admins)
    

userdel命令

userdel – delete a user account and related files(删除用户账户和相关文件)

  • 常见用法:
  • userdel [options] LOGIN
    -r:删除用户时一并删除其家目录
  • 使用实例:删除mandriva,但保留其家目录
    [root@localhost ~]# cat /etc/passwd | grep mandriva
    mandriva:x:1005:2016::/home/mandriva:/bin/bash
    [root@localhost ~]# userdel mandriva
    [root@localhost ~]# ls -d /home/mandriva
    /home/mandriva
    

passwd命令:

passwd – update user’s authentication tokens(修改密码)

  • 常见用法:
  • passwd:修改用户自己的密码
  • passwd USERNAME:修改指定用户的密码(仅root用户有此权限)
    -l:锁定用户
    -u:解锁用户
    -d:清除用户密码串
    -e [DATE]:设置密码过期日期
    -i [DAYS]:设置非活动期限
    -n [DAYS:密码的最短使用期限
    -x [DAYS]:密码的最长使用期限
    -w [DAYS]:警告期限
    —stdin:echo “PASSWORD” | passwd —stdin USERNAME
  • 使用实例:给用户mageia添加密码,密码为mageedu
    [root@localhost ~]# echo "mageedu"|passwd --stdin mageia
    Changing password for user mageia.
    passwd: all authentication tokens updated successfully.

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96936

(0)
ZSZS
上一篇 2018-04-23
下一篇 2018-04-23

相关推荐

  • 简述iproute家族命令

    iptoute2家族 ip命令:ip – show / manipulate routing, devices, policy routing and tunnelsip [ OPTIONS ] OBJECT { COMMAND | help }OBJECT := { link | address | addrlabel | route | ru…

    Linux笔记 2018-06-15
  • 文本处理工具sed

    一个强大的文本处理sed,行编辑器

    2018-04-19
  • 标准IO和管道

    一.三种I/O设备 标准输入(STDIN) -0   默认接受来自键盘的输入 标准输出(STDOUT) -1  默认输出到终端窗口 标准错误(STDERR) -2   默认输出到终端窗口 程序:指令加数据 每个文件打开都有一个文件描述符(fd) ll /proc/$$/fd      //可以查看文件的描述符 exec 8<>/data/host…

    Linux笔记 2018-04-02
  • 课堂实验

    实验:针对不同的用户设置不同的共享目录和权限 vim /etc/samba/smb.conf[global]workgroup = WANGGROUPsecurity = usernetbios name = smbsrv7passdb backend = tdbsamlog file = /var/log/samba/log.%Ilog level = 2…

    2018-07-01
  • 文本三剑客之AWK

    简要概括AWK

    2018-05-27
  • 磁盘及文件系统管理(一)

    简述磁盘及文件系统管理

    Linux笔记 2018-05-05