用户和组管理类命令的使用

第三周作业.png

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

who | cut -d' ' -f1 | sort | uniq

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

who | head -1 或者last | head -1

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

cut -d: -f 7 /etc/passwd | uniq -c | sort -rn | head -1

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

sort -rn -t: -k3 /etc/passwd | head -10 | tr 'a-z' 'A-Z'|tee > /tmp/maxusers.txt

5.提取当前主机地址,提示:对ifconfig命令结果进行切分

CentOS7 : ifconfig  | grep -Po '(?<=inet)(.*)(?=net)' | head -1
CentOS6: ifconfig  | grep -Po '(?<=addr:)(.*)(?=Bcast)' | head -1

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

ls /etc/*.conf | tr 'a-z' 'A-Z' | tee > /tmp/conf.test

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

ll /var/ | wc -l

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

sort -rn -t: -k3 /etc/group | tail -10 | cut -d: -f1

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

cat /etc/fstab /etc/issue > /tmp/etc.test

 10.总结描述用户和组管理类命令的使用方法并完成以下练习

创建用户:

useradd

-u :用户的UID

-g :指定私有组

-c :对这个用户的描述

-d :指定家目录

-s :指定shell

-G :指定附加组

-r: 创建系统用户

修改用户:

usermod

-u :修改用户的UID

-g :修改指定的私有组

-c :修改对这个用户的描述

-d :修改指定的家目录

-s :修改指定的shell

-G :修改指定的附加组

-a:表示在原来所属组的基础上追加

删除用户:

userdel

-r: 删除用户家目录

创建组:

groupadd

-g : 指定组的GID

-r: 创建系统组

修改组属性:

groupmod

-n : 修改组的名字

-g :修改组的GID

删除组:

groupdel [组的名字]

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

groupadd distro -g 2016

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

useradd -u 1005 mandriva -g distro

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

useradd mageia -u 1100 -d /home/linux

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

passwd mageia

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

userdel mandriva

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

useradd slackware -u 2002 -g distro -G peguin

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

usermod -s /bin/tcsh slackware

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

usermod -G admins slackware

 (9)为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天。

passwd slackware -n 3 -x 180 -w 3

(10) 添加用户openstack,其ID号为3003,基本组为clouds,附加组为peguin和nova

useradd -u 3003 -g clouds -G peguin,nova openstack

(11) 添加系统用户mysql,要求其shell为/sbin/nologin

useradd  -r -s /sbin/nologin mysql

(12) 使用echo命令,非交互式为openstack添加密码

echo 'openstack' | passwd --stdin openstack

 

 

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

(0)
evergreen1989evergreen1989
上一篇 2016-11-21 21:51
下一篇 2016-11-22 00:32

相关推荐

  • 13-高级文件系统管理-Quota,RAID,LVM

    配置配额系统     综述         在内核中执行         以文件系统(磁盘分区)为单位启用         对不同组或者用户的策略不同         根据块或者节…

    2017-03-16
  • 集中练习5-磁盘分区、文件系统挂载、RAID管理

    集中练习5-磁盘分区、文件系统挂载、RAID管理

    Linux干货 2017-10-27
  • 第九周作业

    1. 写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; # awk -F: ‘{if($7!=”/sbin/nologin”) {printf “Logined user %s\n”…

    Linux干货 2017-03-01
  • suid, sgid, sticky简介

    SUID属性 passwd命令可以用于更改用户的密码,一般用户可以使用这个命令修改自己的密码。但是保存用户密码的/etc/shadow文件的权限是000,也就是说只有文件的所有者root用户可以写入,那为什么其他用户也可以修改自己的密码呢?这就是由于Linux的文件系统中的文件有SUID属性。 [root@centos6 ~]# ll /etc/shadow…

    Linux干货 2017-07-27
  • 基于keepalived实现高可用nginx服务

    基于keepalived实现高可用nginx服务 环境及配置前提说明 主机1,ip:192.168.25.140 运行web服务 主机2,ip:192.168.25.141 运行web服务 主机3,ip:192.168.25.138 运行nginx服务和keepalived服务 主机4,ip:192.168.25.139 运行nginx服务和keepaliv…

    Linux干货 2016-11-07
  • CetnOS6启动流程以及LVM下的fstab及boot恢复实验

    centos6启动流程 主动读取BIOS,通过CMOS加载硬件信息 ,并进行POST,指定第一个可启动的设备 ROM:BIOS,Basic Input and Output System,保存着计算机系统最重要的基本输入输出程序,系统信息设置,开机加电自检程序RAM:保存各项参数的设定 读取第一个可启动设备MBR的引导加载程序(grub)的启动信息 MBR:…

    Linux干货 2017-05-13

评论列表(1条)

  • luoweiro
    luoweiro 2016-11-30 23:56

    第八题添加附加组需要-a,要不然会把默认组改掉,你可以再试试,加油。