N25-第三周作业

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

  who | cut -d" " -f1 |uniq

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

   w | tail -1

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

   cat /etc/passwd|cut -d: -f7 | uniq -c | sort -n | tail -1

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

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

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

   ifconfig eno16777736 | grep -o "inet .*" | cut -d" " -f2

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

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

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

  ls /var | wc -l

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

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

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

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

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

  • groupadd命令:添加组

   groupadd 选项  group_name

  •    -g GID :指定GID;默认是上一个组的GIDS+1

  •    -r  创建系统组;

groupmod命令修改组属性

  • groupmod 选项 GROUP

  •     -g 修改GID

  •     -n 修改组名

    groupdel:删除组

  •   groupdel 组名  

useradd命令 选项 登录名

  •   -u,–uid:指定UID;

  •   -g,–gid GROUP:指定基本组ID,此组得事先存在;

  •   -G,–groups GROUP1 [,GROUP2,…]:指明用户所属的附加组,多个组之间有逗号分隔

  •   -c,–comment COMMENT:指明注释信息;

  •   -d,–home HOME_DIR:以指定的路径为用户的家目录:通过复制/etc/skel目录并重命名实现,如果指定的路径存在,则不会为用户复制环境配置文件;

  •   -s,–shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中

  •   -r,–system:创建系统用户;

         注意:创建用户时的诸多默认设定配置文件为/etc/login.defs

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

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

         修改的结果保存于/etc/default/useradd文件中;

usermod命令:修改用户属性

       usermod [选项] 登录名

  •    -u,–uid UID:修改用户的UID

  •    -g,–gid GROUP;修改用户的基本组

  •    -G, –groups GROUP  :修改用户所属的附加组:原来的附加组会被覆盖;

  •    -a, –append:与-G 一同使用,用于为用户追加新的附加组;

  •    -c,–comment :修改用户的注释信息;

  •    -d,–home HOME_DIR:修改用户的家目录;用户原有的文件不会转移至新目录;

  •    -m,–move-home:只能与-d 选项一同使用,用于将原来的家目录转为新的家目录;

  •    -l,–login NEW_LOGIN:修改用户名

  •    -s,–shell SHELL:修改用户的默认SHELL

  •    -L,–lock:锁定用户密码;即在用户原来的密码字符串前加 !

  •    -U,–unlock:解锁用户密码,即将原来的!删除

usedel命令:删除用户

     userdel [选项]  登录  

  • userdel -r :删除用户时一并删除其家目录;

gpasswd命令:

    gpasswd [选项] 组名  /etc/gshadow

  • -a USERNAME:向组中添加用户

  • -d  USERNAME:从组中移除用户

ewgrp命令:

    临时切换指定的组为基本组; newgrp – 组名

chage命令:

    更改用户的密码过期信息

  chage 选项 登录名

  • -d:密码过期时间点

  • -E:密码使用期限

  • -W:警告天数

  • -m:最小使用期限

  • -M:最大使用期限

id 命令:

    显示用户的有效id;

  • -u :仅显示有效的UID;

  • -g:仅显示用户的基本组ID;

  • -G:仅显示用户所属的组的ID;

  • -n:仅显示名字而非ID;

  • su 命令:  switch user

    登录式切换:会通过读取目标用户的配置文件来重新初始化

  • su – USERNAME

  • su -l USERNAME

   非登录式切换:不会读取目标用户的配置文件进行初始化

  • su USERNAMEHU

    注意:管理员可无密码切换至其它用户;

    -c ‘COMMAND' :仅以指定用户的身份运行此处指定的命令;

 (1)、创建组distro,GID2016;

            groupadd -g 2016 distro

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

            useradd -u 1005 -g distro mandriva

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

            useradd -d /home/linux -u 1100 mageia

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

            passwd mageia mageedu

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

            userdel mandriva

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

            useradd -u 2002 -g distro -G peguin slackware

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

            usermod -s /bin/tchs slackware

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

            usermod -G -a admins slackware

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

              echo slackware | passwd –stdin slackware

            passwd -n 3 -x 180 -w 3 slackware;

 (10)、添加用户openstack,ID号为3003,基本组为clouds,附加组为peguinnova

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

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

            useradd -r mysql -s /sbin/nologin

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

            echo "openstack" | passwd –stdin openstack

 

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

(0)
shuiroushanshuiroushan
上一篇 2016-12-19 13:58
下一篇 2016-12-19 14:38

相关推荐

  • 让自定义脚本成为服务脚本

    1.脚本注释格式:此格式能让chkconfig命令识别 #!/bin/bash#chkconfig:runlevel [S]##  [K]##    定义默认runlevel) (S开头,定义启动优先级) (K开头,定义关闭优先级) #description:脚本说明:太长的话需要\换行 2.case语句实现start,stop…

    Linux干货 2017-05-15
  • bash脚本之for循环和while循环及包管理

    一.概述 上一章剩余内容 压缩工具 cpio 复制从或到文件 cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结尾的文件。 cpio[选项] > 文件名或者设备名 cpio[选项] < 文件名或者设备名 选项 -o 将文件拷贝打包成文件或者将文件输出到设备上 -i解包,将打包文件解压或将…

    Linux干货 2016-08-24
  • 文本处理三剑客之grep

    文本处理三剑客之grep 正则表达式(regex) 文本处理工具 grep egrep 试验环境:CentOS 7.2 正则表达式 Linux的哲学之一“一切皆文件”,学习Linux应得掌握其基本的文本处理工具,这些工具主要包括: 文件内容:less和cat 文件截取:head和tail 文件抽取:cut 关键字搜索:grep 正则表达式是计算机科…

    Linux干货 2016-08-07
  • test1

    test 

    Linux干货 2016-09-15
  • 包管理工具rpm和yum的用法

    包管理工具rpm和yum的用法 一、rpm的用法 rpm原本是Rde Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐收到其他发行版的采用,RPM套件管理方式的出现,让Linux易于安装、升级,间接提升了Linux的适用性。 rpm用法:rpm [OPTION…] 1、rpm安装…

    Linux干货 2016-08-24
  • 文本处理工具之sed

    一.介绍 sed是一个流编辑工具,可以用来实现对文本的过滤与替换,而Linux的哲学思想之一就是一切皆文件,因此对文本的操作至关重要。sed的基本工作原理是通过每次读取一行文本来来对默写符合条件的文本进行处理。要注意的是sed默认并不直接修改源文件,而是将读取到的内容复制到缓冲区在中,这个缓冲区也叫做模式空间,然后在模式空间中对文本进行处理,处理完成后将结果…

    Linux干货 2017-01-05