用户和组管理

1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。

[root@suywien ~]# who | cut -d ' ' -f1 | uniq  -c
  2 root
[root@suywien ~]#

2、取出最后登录到当前系统的用户的相关信息。

[root@suywien ~]# who |  tail -1 | cut -d ' ' -f1 | id
uid=0(root) gid=0(root) groups=0(root)

3、取出当前系统上被用户当作其默认shell的最多的那个shell。

[root@suywien ~]# cat /etc/passwd | cut -d :  -f7 | uniq -c | sort -n | tail -1
 35 /sbin/nologin

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。

[root@suywien ~]# cat /etc/passwd | sort -t ':' -k 3 -n | tail -10 | tr 'a-z' 'A-Z' >/tmp/maxusers.txt
[root@suywien ~]# cat /tmp/maxusers.txt
GEOCLUE:X:994:991:USER FOR GEOCLUE:/VAR/LIB/GEOCLUE:/SBIN/NOLOGIN
COLORD:X:995:993:USER FOR COLORD:/VAR/LIB/COLORD:/SBIN/NOLOGIN
UNBOUND:X:996:994:UNBOUND DNS RESOLVER:/ETC/UNBOUND:/SBIN/NOLOGIN
POLKITD:X:997:996:USER FOR POLKITD:/:/SBIN/NOLOGIN
SYSTEMD-NETWORK:X:998:997:SYSTEMD NETWORK MANAGEMENT:/:/SBIN/NOLOGIN
SYSTEMD-BUS-PROXY:X:999:998:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN
ROO:X:1000:1000:ROOT:/HOME/ROO:/BIN/BASH
GENTOO:X:4001:4001::/HOME/GENTOO:/BIN/BASH
FEDORA:X:4002:4002:FEDORA CORE:/HOME/FEDORA:/BIN/TCSH
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。

[root@suywien ~]# ifconfig | grep 'inet[[:space:]]'  | cut -d ' ' -f 10
192.168.239.11
127.0.0.1
192.168.122.1

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。

[root@suywien ~]# ls /etc/*.conf | tr 'a-z' 'A-Z' > /tmp/etc.conf
[root@suywien ~]# cat /tmp/etc.conf
/ETC/ASOUND.CONF
/ETC/AUTOFS.CONF
/ETC/AUTOFS_LDAP_AUTH.CONF
/ETC/BRLTTY.CONF
/ETC/CGCONFIG.CONF
......

7、显示/var目录下一级子目录或文件的总个数。

[root@suywien ~]# ls  /var/ | wc -l
23

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。

[root@suywien ~]# cat /etc/group | sort -t ':' -k3 -n  | head -10
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。

[root@suywien ~]# cat /etc/fstab /etc/issue > /tmp/etc.test
[root@suywien ~]# cat /tmp/etc.test


 /etc/fstab
 Created by anaconda on Sun Feb 11 14:03:33 2018

......

10常用的用户和组的管理命令

1、useradd:创建用户或者更新用户的信息

语法格式:useradd [OPTION] USERNAME

常用的option:
    -d,指定用户的家目录位置;
    -c,指定用户的描述信息;
    -g;指定用户的默认组;
    -G,指定用户的附加组;
    -r,创建系统用户;
    -p,指定用户的密码;
    -s,指定用户的默认shell;
    -u,指定用户的uid;
    -u,指定用户的uid;

2、userdel:删除一个用户

语法格式:serdel [OPTION] USERNAME
      常用的option:-f,强制删除;-r,删除用户的同时一并删除用户的家目录

3、groupadd:创建一个组

  语法格式:groupadd [OPTION] GROUPNAME
      常用option:-g,指定组ID

4、groupdel:删除一个组

  语法格式:groupdel GEOUPNAME

5、usermod:更改用户和用户组的信息

  语法格式:usermod [option] USERNAME
      常用option:-c,更改用户的备注信息;-d:更改用户的家目录;-m,移动用户的数据到新的家目录;-L,锁定用户;-u,更改用户的id;-s,更用户的默认shell;-l,更改用户的用户名;-aG,添加用户的附加组;-U,解锁用户

6、id:显示用户和用户组的id信息

  • 语法格式:id [option] USERNAME 常用的option:-g,仅显示默认组ID;-G,显示用户加入的所有组id,-u,显示用户的uid

7、su:切换登录用户

  语法格式:su [option] USERNAME
      常用的option:-,交互式登录,登录的时候会读取配置文件

8、passwd:修改用户的密码

  语法格式: passwd USERNAME

11、用户和组管理类命练习:

(1)、创建组distro,其GID为2016;

  • [root@suywien ~]# groupadd -g 2016 distro
  • [root@suywien ~]# tail -1 /etc/group
  • distro:x:2016:

    (2)、创建用户mandriva, 其ID号为1005;基本组为distro;

  • [root@suywien ~]# useradd -u 1005 -g distro mandriva
  • [root@suywien ~]# tail -1 /etc/passwd
  • mandriva:x:1005:2016::/home/mandriva:/bin/bash

    (3)、创建用户mageia,其ID号为1100,家目录为/home/linux;

  • mageia:x:1100:1100::/home/linux:/bin/bash

    (4)、给用户mageia添加密码,密码为mageedu;

  • [root@suywien ~]# echo mageedu | passwd mageia –stdin
  • Changing password for user mageia.
  • passwd: all authentication tokens updated successfully.

    (5)、删除mandriva,但保留其家目录;

  • [root@suywien ~]# userdel mandriva
  • [root@suywien ~]# ls /home/
  • fedora gentoo linux mandriva roo

(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;

  • [root@suywien ~]# useradd -u 2002 -g distro -G peguin slackware

    (7)、修改slackware的默认shell为/bin/tcsh;

  • [root@suywien ~]# usermod -s /bin/tcsh slackware [root@suywien ~]# tail -1 /etc/passwd slackware:x:2002:2016::/home/slackware:/bin/tcsh

    (8)、为用户slackware新增附加组admins;

  • [root@suywien ~]# groupadd admins [root@suywien ~]# usermod -aG admins slackware

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

(0)
落叶落叶
上一篇 2018-03-18
下一篇 2018-03-18

相关推荐

  • Linux文件类型以及颜色标识

    1、Linux文件类型介绍   Linux系统不同于window系统,两者文件类型也有很大的差异。Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念。我们通过一般应用程序而创建的比如file.txt、file.tar.gz,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普…

    Linux干货 2016-10-17
  • LVS(Linux Virtual Server)学习笔记

    LVS(Linux Virtual Server)学习笔记 此文主要对lvs负载均衡学习的总结,一为记录,二为巩固。主要介绍:1、lvs基础;2、lvs的配置;3、lvs的实现 前提:负载均衡(LB Cluster)     负载均衡实现方法有两种:硬件实现和软件实现;    &…

    Linux干货 2017-02-13
  • shell编程进阶

    2、编写脚本/root/bin/yesorno.sh,提示用户输入yes或no,并判断用户输入的是yes还是no,或是其它信息 read -p “Enter you choice yes|no:” Choice Choice1=`echo $Choice | tr ‘[a-z]’ ‘[A-Z]&#8…

    2017-09-16
  • 正则表达式与扩展正则表达式

    基本正则表达式 字符匹配:.:匹配任意单个字符[]:匹配指定范围内的任意单个字符[^]:匹配指定范围外的任意单个字符[-]:匹配[]中指定范围内的任意一个字符,要写成递增POSIX字符类:[:digit:]:匹配任意一个数字字符[:lower:]:匹配小写字母[:upper:]:匹配大写字母[:alpha:]:匹配任意一个字母字符(包括大小写字母)[:aln…

    2017-09-10
  • 逻辑卷

    一、作业 1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 2、写一个脚本,完成如下功能: (1) 列出当前系统识别到的所有磁盘设备 (2) 如磁盘数量为1,则显示其空间使用信息 否则,则显示最后一个磁盘上的空间使用信息 3、创建一个可用…

    Linux干货 2016-08-30
  • lvm逻辑卷管理

    #LVM 逻辑卷管理 一、创建pv        创建pv可以在物理硬盘(裸盘上创建),MBR类型的分区(要更改分区类型为linux lvm: 8e )。GPT分区也要更改分区类型为8e00 Linux LVM 。    还可以在RAID上创建。注意要在没有数据的分区上…

    Linux干货 2016-09-02

评论列表(1条)

  • 马哥教育
    马哥教育 2018-03-20 21:22

    写的不错,没问题。