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

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

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


1472370027449107.jpg

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

    who | sort -t' ' -k4 | tail -1


1472370133283962.jpg

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

    cut -d: -f7 /etc/passwd | uniq -c | sort | head -1


1472370163947946.jpg

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

    sort -t: -k3 -n /etc/passwd | tail -10 | tr [a-z] [A-Z] 1> /tmp/maxusers.txt


1472370216825066.jpg

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

    ifconfig eno16777736 | cut -d' ' -f10 | egrep "[0-9]+[.]"


1472370276649173.jpg

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

    ls /etc/*.conf | tr [a-z] [A-Z] 1> /tmp/etc.conf


1472370314958122.jpg

7、显示/var目录下一级子目录或文件的总个数
    ll /var | grep "^[d]" | wc -l

    ll /var | grep "^[^d]" | wc -l


1472370391423273.jpg

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

    sort -t: -k3 -n /etc/group | head -10


1472370423521713.jpg

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

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


1472370463864148.jpg

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
    groupadd命令:添加组
        groupadd [OPTION] GROUP
        -g GID:手动指定GID;默认是上一个组的GID+1

    groupmod命令:修改组属性
        groupmod [OPTION] GROUP
        -g GID:修改GID
        -n newname:修改组名

    groupdel命令:删除组
        groupdel GROUP

    useradd命令:创建用户
        useradd [OPTION] LOGIN
        -u,–uid:指定UID
        -g,–gid:指定基本组ID,此组得事先存在
        -c,–comment:致命注释信息
        -G,–groups GROUP1[,GROUP2,…[,GROUPN]]:指明用户所属的附加组,多个组之间用逗号分隔
        -d,–home:创建以指定路径为用户家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件
        -M,–no-create-home:不创建家目录
        -s,–shelll:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中
        -r,–system:创建系统用户
        PS:创建用户时的诸多默认设定配置文件为/etc/login.defs
        useradd -D:显示创建用户的默认配置
        useradd -D 选项:修改默认选项的值
        修改的结果保存于/etc/default/useradd文件中

    usermod命令:修改用户属性
        usermod [OPTION] LOGIN
        -u,–uid:修改用户的ID为此处指定的新ID
        -g,–gid:修改用户所属的基本组
        -G,–groups GROUP1[,GROUP2,…[,GROUPN]]:修改用户所属的附加组;原来的附加组会被覆盖
        -a,–append:与-G一同使用,用于为用户追加新的附加组
        -c,–comment:修改注释信息
        -d,–home:修改用户的家目录,用户原有的文件不会被转移至新位置
        -m,–move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录
        -l,–login:修改用户名
        -s,–shell:修改用户的默认shell
        -L,–lock:锁定用户密码,即在用户原来的密码字符串之前添加一个"!"
        -U,–unlock:解锁用户的密码

    userdel命令:删除用户
        userdel [OPTION] LOGIN
        -r:删除用户时一并删除其家目录

    passwd命令:
        passwd  [-k]  [-l]  [-u  [-f]]  [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [–stdin] [username]
        (1)passwd:修改用户自己的密码
        (2)passwd USERNAME:修改指定用户密码,仅限root有权限
        -l -u:锁定和解锁用户
        -d:清除用户密码串
        -e DATE:过期期限,日期
        -i DAYS:非活动期限
        -n DAYS:密码最短使用期限
        -x DAYS:密码最长使用期限
        -w DAYS:警告期限
        –stdin:echo "PASSWORD"|passwd –stdin USERNAME

    gpasswd命令:
        gpasswd [OPTION] group
        -a USERNAME:向组中添加用户
        -d USERNAME:从组中移除用户
                        
(1)、创建组distro,其GID为2016

        groupadd -g 2016 distro

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

        useradd -u 1005 -g distro mandriva

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

        useradd -u 1100 -d /home/linux mageia

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

        mageedu

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

        userdel mandriva

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

        useradd -u 2002 -g distro -G peguin slackware

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

        usermod -s /bin/tcsh slackware

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

        usermod -aG admins slackware

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

        passwd -n 3 -x 180 -w 3 slackware

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

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

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

        useradd -r -s /sbin/nologin mysql

(12)、使用echo命令,非交互式为openstack添加密码。
        echo "PASSWORD"|passwd –stdin openstack

原创文章,作者:N22-上海-葡挞,如若转载,请注明出处:http://www.178linux.com/41291

(0)
N22-上海-葡挞N22-上海-葡挞
上一篇 2016-08-29 08:52
下一篇 2016-08-29 08:52

相关推荐

  • openvpn安装配置过程

    前言     之前为了方便远程办公时访问公司的内部系统,如:svn、OA、wiki、禅道等等;通通在防火墙上做了端口映射。然后有个内部系统被黑了,各种弱口令没办法。果断关闭端口映射,看来还是得搭建个VPN服务器,vpn设备感觉大材小用。马上就想到了开源的openvpn,下面就来介绍openvpn的安装配置过程。 ope…

    Linux干货 2015-05-11
  • find文件:就是这么简单

    概述 由于Linux一切皆文件,我们的日常运维工作其实就是与文件打交道的事,如何能够快速而有效地找到我们需要的文件呢?这是个令人头疼的问题。幸运是,Linux为用户提供了强大的查找工具——find。find通过遍历指定路径完成文件查找,它的的工作特点: 精确查找——多查询条件组合,精确匹配; 实时查找——遍历指定路径; 查找速度稍慢——由于需要遍历路径,速度…

    Linux干货 2016-08-18
  • rpm程序包管理器使用详解

    rpm程序包管理器的使用详解   说到程序包管理器,就会想到基于CentOS系统上的rpm命令与其对应的前端处理器yum。所谓程序包,是将源代码转换为二进制格式,再组织成一个或者多个包文件供用户安装使用。rpm程序包的命名格式如下:   name-VERSION-release.arch.rpm   软件名-版本号(分为主版本m…

    Linux干货 2016-08-21
  • 系统启动流程

    CentOS 5和6的启动流程服务管理Grub管理自制Linux启动排错编译安装内核 系统启动流程:  POST –> 读取BootSequence (BIOS),决定引导次序 –>读取引导设备的Bootloader(MBR grubstage1–>stage1.5/boot…

    Linux干货 2016-09-13
  • 初识MySQL(一)

        数据库(DATABASES)      数据库是一个单位或是一个应用领域的通用数据处理系统,存储有企业和事业部门、团体和个人的有关数据的集合,该集合中数据是从全局观点出发建立的,按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不…

    Linux干货 2015-08-24
  • lvs的四种调度类型和调度算法介绍

    lvs是linux内核级的负载均衡解决方案,作为netfilter的补充套件,其工作在INPUT hook上。 相比nginx等负载均衡解决方案的差异如下: lvs工作于内核空间,不受用户空间套接字和端口数量的限制,而且所有调度工作在内核空间完成,效率更高; nginx为七层负载均衡器,虽然通过stream模块也可以做到四层负载均衡,但是受到套接字数量限制,…

    Linux干货 2017-06-25

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-30 12:48

    希望同学在下次操作时,将输出结果一并附上,关键部分即可,不用全部,请加油