N25-第三周作业

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

         [root@test ~]# who | cut -d' ' -f1 | sort -u

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

         [root@test ~]# who | tail -1 | cut -d' ' -f1 | id


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

        [root@test ~]# cut -d: -f7 /etc/passwd | sort | uniq -c | sort -n | tail -1

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

        [root@test ~]# cat /etc/passwd | sort -n -t: -k3 | tail | tr 'a-z' 'A-Z' > /tmp/maxusers.txt


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

        [root@test ~]# ifconfig | grep "inet addr:" | grep -v "127.0.0.1" | cut -d: -f2 | cut -d' ' -f1

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

       [root@test ~]# ls /etc | grep ".conf$" | tr 'a-z' 'A-Z' > /tmp/etc.conf

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

       [root@test ~]# ls -R /var | wc -l

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

       [root@test ~]# cat /etc/group | sort -n -t: -k3 | head | cut -d: -f1

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

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

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

       使用方法如下:
         创建用户
            useradd:创建新用户
                -u:指定uid
                -g:指定gid
                -s:指定登录的shell
                -G:指定附加组
                -d:指定home目录
                -c:用户注释说明
                -r:指定新建用户属于系统用户

       创建组
           groupadd:创建新组
                -g:指定gid
                -r:指定为系统组
       编辑用户
           usermod:编辑已有用户
               -a:添加进附加组
               -G:指定附加组
               -c:修改注释信息
               -u:修改uid
               -g:修改gid
               -d:修改变更为新的home目录
               -L:锁定用户
               -U:解锁用户
               -l login_name:指定新的用户登录名
       编辑组
          groupmod:编辑已有组
               -g:修改gid
               -n group_name:指定新的组名
        查询
             id:查询当前用户信息
             id username:查询指定用户名信息   

             cat /etc/passwd :显示系统下所有用户的信息列表

             cat /etc/group:显示系统下所有组以及组内用户列表信息
         删除用户
              userdel:删除用户
                   -f  –force:强制删除,即使用户当前属于登录状态
                   -r  –remove:删除用户时,其home目录一并删除
         删除组
              groupdel:删除组

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

           [root@test ~]# groupadd distro -g 2016

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

           [root@test ~]# groupadd distro -g 2016


   (3)、创建用户mageia,其ID号为1100,家目录为/home/linux;
        
  [root@test ~]# useradd mageia -u 1100 -d /home/linux


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

             [root@test ~]#echo "mageedu" | passwd –stdin mageia


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

             [root@test ~]# userdel mandriva

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

             [root@test ~]# groupadd  peguin

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

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

             [root@test ~]#usermod -s /bin/tcsh slackware


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

             [root@test ~]#groupadd  admins

             [root@test ~]#usermod -G admins slackware


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

              [root@test ~]passwd -n 3 -x 180 -w 3 slackware


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

              [root@test ~]#groupadd clouds  && groupadd nova

              [root@test ~]#useradd openstack -u 3003 -g clouds -G peguin,nova


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

               [root@test ~]#useradd mysql -s /sbin/nologin


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

               [root@test ~]#echo "password" | passwd –stdin openstack

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

(0)
lyj821202lyj821202
上一篇 2016-12-26 10:11
下一篇 2016-12-26 10:11

相关推荐

  • 第七周作业,分区格式化及一些脚本练习

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;       fidsk划分10G分区,partx命令强制内核重新读磁盘分区表,cat /proc/partitions是否内核识别到新分区 …

    Linux干货 2017-02-01
  • mogilefs部署

    mogilefs实验环境: 1.需要两台tracker主机 2.一台mariadb 3.nginx_mogilefs_module模块要编译安装 在tracker主机: 1.上下载rpm包 mkdir mogilefs/ cd mogilefs lftp 172.16.0.1 get MogileFS-Server-2.46-2.el7.centos.noa…

    Linux干货 2017-08-08
  • Linux基础与命令解释

    Linux基础与命令 Linux起源      1984 年:Richard Stallman 发起GNU 项目和自由软件基金会 创建开源的UNIX 实用工具版本 创建通用公共许可证(GPL) ) 开源软件许可实施原则  1991 年:Linus Torvalds 发布Linux 创建开放源码,类Unix 的内核,在GPL 下发布 下…

    Linux干货 2017-03-17
  • linux任务管理与计划

    linux系统作业控制的命令:     job(作业):一个作业通常包含多个命令(也有可能只包含一个),联合起来由单个小程序组合,完成复杂任务,对Linux而言作业有两种;前台作业和后台作业        前台作业(forgroud):通过终端启动,且启动后会…

    Linux干货 2016-09-13
  • 重返课堂

    1.学习目的: i. IT业发展日新月异,当前所掌握的知识已无法满足工作需要。 ii. IT行业更新飞快,这就要求从业人员不断的去学习,不断的完善自己,才不至于被淘汰。 iii. 在这个大数据、云计算为王的时代,掌握Linux是入行“敲门砖”。 iv. 年龄已大,把握住人生不多的专门学习的机会,再博一次。 2.浅识Linux i. linux为何? Linu…

    2018-03-26
  • LNAMP Shell 部署脚本

    LNAMP Shell 部署脚本 学习总结: 这个脚本,早期是出于对个人学习Shell的总结而写,应该有些年头了,目前也在一边学马哥视频的基础上陆续完善,10月初才完成LNAMP环境的分离式部署,并减少整个Shell脚本各部分的依赖关系。 我是网络班13期高级班的学员,因个人做了几年Linux运维,所以目前整个高级班的课程,我是跳着看了集群(LVS + Ke…

    Linux干货 2015-10-27