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

相关推荐

  • 怎么删除邮件?

    linux邮件位置一般在/var/spool/mail/root下,如果想查看邮件,在屏幕上输入mail就可以查看了,输入之后会出现&符号,你想看哪一封邮件,直接在后面跟对应的数字就好了。 如果你感觉自己的邮件太多了,比较占内存,那就删了吧。 d 删除当前邮件,指针并下移。   d 3 删除编号为3 的邮件。   d1-100 删…

    2017-07-22
  • 程序员的相关笑话(二)

    从前,有一个牧羊人,他有很多的羊。一天他赶着他的那群羊到了一条公路边上。突然,有一辆保时洁急驶过来,上面坐着一个年轻人人,穿着Armani的衣服,和Cerutti的皮鞋,Ray-Ban的太阳眼镜,TAG-Heuer的手表,以前Versace的领带。 他走到牧羊人面前问牧羊人:“如果我能说出你有多少只羊,你能给我一只吗?” 牧羊人看了看他那一大群数都数不过来的…

    Linux干货 2016-07-10
  • Linux的SOCKET编程详解

    1. 网络中进程之间如何通信 进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进 程之间既互不干扰又协调一致工作,操作系统为进程通信提供了相应设施,如 UNIX BSD有:管道(pipe)、命名管道(named pipe)软中断信号(signal) UNIX system V有:消息(message)、共享存储区…

    Linux干货 2015-04-10
  • N25第一周作业

    1.描述计算机的组成及其功能   计算机整体上分为两大部分:     一、硬件部分:运算器,存储器,控制器,输入设备,输出设备     运算器是对数据进行加工处理,主要是指各种算术运算与逻辑运算     存储器是存储各种数据、信号、命令等信息并在他们需要时提供这些信息 &nbsp…

    Linux干货 2016-12-03
  • SQL Server 2012 故障转移群集最佳实践

    一、Windows server  2012 系统主域的安装配置 功能介绍:  SQL Server 故障转移群集在网络上显示为一台计算机上的单个 SQL Server 实例。在群集内部,一次只有一个节点拥有群集资源组,满足针对该故障转移群集实例的所有客户端请求。在出现故障(硬件故障、操作系统故障、应用程序或服务故障)或进行计划升级时,组…

    Linux干货 2015-10-27
  • Docker 之初次体验

    一、Docker 简介  lxc linux container,openvz  容器中各虚拟机只有一个内核,而是多个用户空间  在库中完成虚拟化,比如wine 或者在windows中运行bash  在应用程序的运行级别提供虚拟化,比如jvm   pstree , pid 为1 的进程  …

    Linux干货 2015-01-16