Linux第三周作业

Linux

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

[root@ada-dog ~]# who | cut -d ” ” -f1 |uniq -c

2 root

1 ada

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

[root@ada-dog ~]# id $(last | head -1 | cut -d ” ” -f1)

uid=1000(ada) gid=1000(ada) groups=1000(ada)

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

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

32 /sbin/nologin

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

[root@ada-dog ~]# sort -t: -k3 -n /etc/passwd |tail -10 | tr ‘a-z’ ‘A-Z’

DOCKER:X:1001:1002::/HOME/DOCKER:/BIN/BASH

OPENSTACK:X:1005:1005::/HOME/OPENSTACK:/BIN/BASH

MOGILEFS:X:1006:1006:MOGILFS DFS:/HOME/MOGILEFS:/BIN/BASH

MOOSEFS:X:1007:1007::/TMP/MOOSEFS:/BIN/BASH

MARIADB:X:1009:5002::/HOME/MARIADB:/SBIN/NOLOGIN

GENTOO:X:1010:1010::/USERS/GENTOO:/BIN/BASH

USER3:X:3000:3000::/HOME/USER3:/BIN/BASH

USER1:X:3001:3001::/HOME/USER1:/BIN/BASH

CENTOS:X:3002:3002::/HOME/CENTOS:/BIN/BASH

NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN

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

[root@ada-dog ~]# ifconfig | cut -d” ” -f10 | head -2

 

192.168.64.128

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

[root@ada-dog tmp]# ls /etc/*.conf | tr ‘a-z’ ‘A-Z’ > /tmp/etc.conf

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

[root@ada-dog tmp]# ls -l /var/ | wc -l

23

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

[root@ada-dog tmp]# sort -t: -k3 -n /etc/group | head -10 | cut -d: -f1

root

bin

daemon

sys

adm

tty

disk

lp

mem

kmem

 

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

[root@ada-dog tmp]# cat /etc/fstab /etc/issue > /tmp/etc.test

 

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

useradd

useradd [options] username

options:

-c:描述信息,comment;

-d:指定家目录路径;

-e:账户过期日期;

-g:指定组id;

-G:指定特定或附加组;

-m:创建新建用户家目录;

-M:不创建新建用户家目录;

-p:创建用户密码;

-s:指定用户使用的shell类型;

-u:指定用户属主ID;

 

usermod

usermod [options] username

options:

-a:追加属主用户附加组常和-G一起用;

-c:用户描述信息,comment;

-d:修改用户家目录路径;

-g:修改组id;

-G:修改特定或附加组;

-L:锁定用户;

-m:移动用户家目录;

-p:修改用户密码;

-s:修改用户使用的shell类型;

-u:修改用户属主ID;

 

userdel

userdel [options] username 删除用户

-f:强制删除用户,即使用户当前已登录;

-r:删除用户的同时,删除与用户相关的所有文件。

 

passwd

普通用户仅能修改自己的密码;超级用户可以修改任意账户的密码;也可以改变相关账户密码的有效期;

passwd [options] [LOGIN]

选项:

-a,–all

与-S搭配使用,显示所有用户状态

-d,–delete

删除用户密码

-e,–expire

使用户密码立即失效,强制用户下次登录时修改密码

-h,–help

显示帮助信息并退出

-i,–inactive INACTIVE

当账户失效INACTIVE天后,用户无法再使用该账户登录

-n,–mindays MIN_DAYS

密码两次修改的时间至少间隔MIN_DAYS天,若MIN_DAYS为0,则表示可在任意时刻进行修改

-S,–status

显示账户状态信息,共有7个字段,分别是登录名、L(P or NP)、上次修改时间、最小期限、最大期限、警告期、inactive period。这些ages的单位都是天。

-w,–warndays WARN_DAYS

密码失效前WARN_DAYS天发出警告

-x,–maxdays MAX_DAYS

设置密码最长的有效期

groupadd 用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。

groupadd [options] group-name

选项

-g:指定新建工作组的id;-r:创建系统工作组,系统工作组的组ID小于500;-K:覆盖配置文件“/ect/login.defs”;-o:允许添加组ID号不唯一的工作组。

 

groupmod 更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。

groupmod  [options] group-name

选项

-g<群组识别码>:设置欲使用的群组识别码;

-o:重复使用群组识别码;

-n<新群组名称>:设置欲使用的群组名称。

 

groupdel 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。

groupdel  group-name

 

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

[root@ada-dog tmp]# groupadd -g 2016 distro

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

[root@ada-dog ~]# useradd -u 1005 -G distro mandriva

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

[root@ada-dog ~]# useradd -u 1100 -d /home/linux mageia

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

[root@ada-dog ~]# echo ‘mageedu’ | passwd –stdin mageia

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

[root@ada-dog tmp]# userdel mandriva

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

[root@ada-dog ~]# groupadd peguin

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

[root@ada-dog ~]# id slackware

uid=2002(slackware) gid=2016(distro) groups=2016(distro),5001(peguin)

 

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

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

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

[root@ada-dog ~]# usermod -G admins slackware

[root@ada-dog ~]# id slackware

uid=2002(slackware) gid=2016(distro) groups=2016(distro),5003(admins)

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/102426

(0)
FelixFelix
上一篇 2018-07-07
下一篇 2018-07-08

相关推荐

  • 初识Nginx——晓以大意 明以细理

    什么是nginx?nginx is a free,open-source,high-performance http server and reverse proxy,as well as an IMAP/POP3 proxy.通俗的说Nginx提供web服务,反向代理,以及IMAP/POP3代理,那么什么是web服务?反向代理?IMAP/POP3代理? w…

    2017-09-10
  • Linux文本处理三剑客之awk

    本文主要介绍:awk的基本用法、变量、格式化输出、操作符、条件判断、循环、数组、函数、调用系统命令及awk脚本

    2018-05-28
  • Docker容器技术之Dokcer networking

    我们知道,docker容器中的资源用namespace进行了隔离,每一个容器中都有自己独立的一套网络资源,docker容器如何实现单机通讯与跨主机通讯呢?本节内容将为你解答这个问题。

    2018-08-08
  • 数组,字符串切片,高级变量

    数组 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合 数组名和索引 索引:编号从0开始,属于数值索引 注意:索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引 bash4.0版本之后开始支持 bash –version   查看bash版本 bash的数组支持稀疏格式(索引不连续) 声明数组: de…

    Linux笔记 2018-05-13
  • LVS负载调度器,

    集群概念 LVS介绍 LVS实现 ldirectord

    Linux笔记 2018-07-01
  • vim编辑器

    文本编辑器种类: 行编辑器:sed 全屏编辑器:nano,vi vim编辑器 vi文本编辑器 +#打开文件后让光标处于第#行 +/ PATTERN :打开文件后,直接让光标处于第一个被 PATTERN 匹配到的行的 行首 –b file 二进制方式打开文件 –d file1 file2… 比较多个文件 -m file 只读打开文件 三种模式: 命令h,j,k…

    2018-04-06