N26第三周

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

       who -i或-u 显示闲置时间, 若该用户在前一分钟之内有进行任何动作,将标示成"."号,如果该用户已超过24小时没有任何动作,则标示出"old"字符串

        cut -d 指定分隔符  -f 指定字段 f2,3 就是第二和第三字段

        uniq -u  仅显示出现一次的行列

~]# who -u |cut -d ' ' -f1|uniq -u

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

    last命令用于显示用户最近登录信息,最近登录的用户会显示在第一行

     w命令则是最新登录的用户会显示在最后一行    id查看用户信息

 ~]# id $(w | tail -n 1 | cut -d ' ' -f1)

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

uniq命令用于报告或忽略文件中的重复行,一般与sort命令结合使用。

-c或——count:在每列旁边显示该行重复出现的次数;

-d或–repeated:仅显示重复出现的行列;

-u或——unique:仅显示出一次的行列;

sort命令它将文件进行排序,并将排序结果标准输出

-b:忽略每行前面开始出的空格字符;

-c:检查文件是否已经按照顺序排序;

-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;

-f:排序时,将小写字母视为大写字母;

-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符;

-m:将几个排序号的文件进行合并;

-M:将前面3个字母依照月份的缩写进行排序;

-n:依照数值的大小排序; -o<输出文件>:将排序后的结果存入制定的文件;

-r:以相反的顺序来排序;

-t<分隔字符>:指定排序时所用的栏位分隔字符;

+<起始栏位>-<结束栏位>:以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。

-k# 指定需要受排序的栏位

~]# cut -d: -f7 /etc/passwd|uniq -c|sort -nr|head -n 1|cut -d' ' -f7  h hhhh

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

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

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

~]# ifconfig |grep inet|head -1|cut -d : -f2|cut -d " " -f1

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

~]# ls -l /etc/*.conf|tr 'a-z' 'A-Z'> /tmp/etc.conf

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

  ~]# ls /var/|wc -w

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

  ~]# sort -t: -k3 -n /etc/group|head -n 10|cut -d: -f1

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

 ~]# cat /etc/{fstab,issue} > /tmp/etc/test

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

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

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

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

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

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

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

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

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

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

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

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

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

               用户管理类命令: useradd usermod userdel

    useradd  添加用户,同时后面可以跟选项来指定UID,GID,SHEEL等,

    常用的格式:

                     useradd [选项] 、登录名

    -u   指定UID 

    -g   指定基本组ID

    -G  指定用户的附加组,多个附加组可用逗号隔开

    -s   指定用户的默认sheel

    -d  指定用户的家目录

    -c  指明注释信息

    -m 用于将原来的家目录移动到新的家目录

    -r   创建系统用户

    -D 显示创建用户的默认配置

    -D 选项: 修改默认选项的值

                选项:

  -b, –base-dir BASE_DIR       新账户的主目录的基目录

  -c, –comment COMMENT         新账户的 GECOS 字段

  -d, –home-dir HOME_DIR       新账户的主目录

  -D, –defaults                显示或更改默认的 useradd 配置

 -e, –expiredate EXPIRE_DATE  新账户的过期日期

  -f, –inactive INACTIVE       新账户的密码不活动期

  -g, –gid GROUP               新账户主组的名称或 ID

  -G, –groups GROUPS   新账户的附加组列表

  -h, –help                    显示此帮助信息并推出

  -k, –skel SKEL_DIR   使用此目录作为骨架目录

  -K, –key KEY=VALUE           不使用 /etc/login.defs 中的默认值

  -l, –no-log-init     不要将此用户添加到最近登录和登录失败数据库

  -m, –create-home     创建用户的主目录

  -M, –no-create-home          不创建用户的主目录

  -N, –no-user-group   不创建同名的组

  -o, –non-unique              允许使用重复的 UID 创建用户

  -p, –password PASSWORD               加密后的新账户密码

  -r, –system                  创建一个系统账户

  -R, –root CHROOT_DIR         chroot 到的目录

  -s, –shell SHELL             新账户的登录 shell

  -u, –uid UID                 新账户的用户 ID

  -U, –user-group              创建与用户同名的组

  -Z, –selinux-user SEUSER             为 SELinux 用户映射使用指定 SEUSER

     usermod 修改用户属性 

    -u 指定新的UID 

    -g 修改用户的属组

    -G 修改用户的附加组,多个附加组可用逗号隔开

    -s 修改用户的默认sheel

    -d 修改用户的家目录

    -l  修改用户名

    -c 修改注释信息

    -m 用于将原来的家目录移动到新的家目录

    -L  锁定用户密码

    -U  解锁用户密码

  

   userdel 删除用户

                    格式:userdel 选项 用户

              -r  删除用户时同时删除用户的家目录

组管理命令:groupadd   groupmod   groupdel

     groupadd  添加组

                 格式:groupadd 选项 组名

                              -g  指定GID

                              -r   创建系统组

     groupmod 修改组属性

              格式:groupmod 选项 组名

                         -g 修改GID

                         -n 修改组名

   groupdel   删除组

             格式:  groupdel 选项 组名

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

          ~]# groupadd -g 2016 distro

  

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

                 ~]# useradd -u 1005 -g distro mandrive

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

                  ~]# useradd -u 1100 -d /home/linux/ mageia

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

                 ~]# echo mageedu |passwd –stdin mageia

   (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 -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 -s /sbin/nologin mysql

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

              ~]# echo 123456 | passwd –stdin openstack

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

(0)
geshubogeshubo
上一篇 2017-01-16
下一篇 2017-01-16

相关推荐

  • Linux运维学习历程-第六天-Linux重定向和管道

    Linux运维学习历程-第六天-Linux重定向和管道 2 本章内容我们将学习linux中的重定向和管道两大用法   I/O输入与输出设备   重定向   管道   tee命令与tr命令 一、I/O设备   1、什么是I/O设备   管理和控制计算机的所有输入/输出(I/O)设备是操作系统…

    Linux干货 2016-08-03
  • phpMyAdmin安装部署

    phpMyAdmin安装部署 phpMyAdmin 是一个用PHP编写的软件工具,可以通过web方式控制和操作MySQL数据库。通过phpMyAdmin 可以完全对数据库进行操作,例如建立、复制和删除数据等等。如果使用合适的工具,MySQL数据库的管理就会变得相当简单。应用 MySQL 命令行方式需要对 MySQL 知识非常熟悉,对SQL语言也是同样的道理。…

    2017-06-13
  • Linux 基础入门(第一周)

    计算机组成,Linux发行版本,Linux基础命令

    Linux干货 2017-12-03
  • 八大排序算法

    概述 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 我们这里说说八大排序就是内部排序。     当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。    快速…

    Linux干货 2015-04-07
  • 第四周作业

    1. 复制/etc/skel目录为/home/tuser1,要求/home/tuser1以及内部文件的属组和其它用户均没有任何访问权限 cp -r /etc/skel  /home/tuser1 chmod go-rwx /home/tuser1 2. 编辑/etc/group文件,添加组hadoo…

    Linux干货 2016-12-27
  • ​ 基于Sentinel实现redis主从自动切换

    Sentinel(哨兵)是用于监控redis集群中Master状态的工具,它可以实现对redis的监控、通知、自动故障转移。 Sentinel作用: Master状态检测 当被监控的某个 Redis Master异常无法连接时 Sentinel 可以向系统管理员发送通知, 也可以通过 API 向其他程序发送通知,并且进行Master-Slave切换,将其中一…

    Linux干货 2016-02-14

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-02 19:57

    很不错,继续加油。