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

第三周作业.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

相关推荐

  • DNS实验

    正向解析 编辑/etc/named.conf listen-on port 53 { 172.0.0.1; 192.168.209.134; }; //listen-on-v6 port 53 { ::1; }; allow-query { any; }; dnssec-enable no; dnssec-validation no; 编辑/etc/name…

    Linux干货 2017-05-31
  • 初识Linux

    本文对计算机组成及其功能、Linux的发行版、以及Linux的哲学思想进行了简单的介绍;同时对Linux系统中常用的基础命令以及如何获取帮助信息进行了详细的说明。

    2018-01-14
  • Python函数式编程指南(四):生成器

    转自 http://www.cnblogs.com/huxi/archive/2011/07/14/2106863.html 生成器是迭代器,同时也并不仅仅是迭代器,不过迭代器之外的用途实在是不多,所以我们可以大声地说:生成器提供了非常方便的自定义迭代器的途径。 这是函数式编程指南的最后一篇,似乎拖了一个星期才写好,嗯…… 转载请注明原作者和原文地…

    Linux干货 2015-03-09
  • 马哥教育网络班21期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@CentOS7 ~]# fdisk /dev/sdb Command (m for help): n Select…

    Linux干货 2016-08-22
  • 8.1_Linux管道的使用和用户管理

    什么是管道? 管道就是把命令1的标准输出发送给命令2的标准输入,把命令2发的标准输出发送给命令3的标准输入。。。 最后一个命令会在当前shell进程的子shell进程中执行用来 管道实现了使用目的单一的小程序,组合小程序完成复杂的任务 管道需要配合其他命令的使用 tr命令的使用,常常用于配合管道     -c或–co…

    Linux干货 2016-08-10
  • 计算机基础入门及Pyhton基础

    编程基础 计算机基础 程序(program识别并执行的指令 计算机是执行程序的机器 现代计算机 艾伦·麦席森·图灵奠定了现在计算机的逻辑工作方式的基础 冯·诺依曼提出计算机应该有五大部件组成:输入/输出设备、运算器、控制器、输出设备。这是现代计算机基本框架。 语言基础 计算机语言:与计算机之间交互的语言 机器语言:一定位数的二进制代码成为机器指令,指令集合则…

    2017-09-16

评论列表(1条)

  • luoweiro
    luoweiro 2016-11-30 23:56

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