linux运维实战练习案例-20151220-1231日(第一次)

一、实战案例(练习)内容

假如你学习完Linux,想找一份儿Linux相关的运维工作,某天你接到一家公司给出的邀请,你来到该公司面试,面试前,运维主管给你出了一些简单的笔试题,题目如下:

 

1、创建一个10G的文件系统,类型为ext4,要求开机可自动挂载至单独数据/data目录;

首先创建一个10G的分区,如下图所示。

                            wKiom1aCienzadi6AABeCVRgXaQ541.png

查看/proc/partitions目录下是否有创建的分区,没有就运行下图所示命令,直至出现刚才创建的分区位置,如下图所示。

wKiom1aCiiqgx8vNAAAkru99RP8953.png

格式化为ext4分区类型,如下图所示。

wKiom1aCirnQcOeJAACVk1GgdK4147.png

根目录下创建目录data,mkdir /data

创建完成之后在配置文件中将此分区挂载至/data,如下图所示。

wKiom1aCiz_wjERYAABewUh-5Iw212.png

2、显示`netstat -tan`命令结果中以‘LISTEN’后跟0个、1个或者多个空白字符结尾的行;

wKiom1aCi2Cjh3JOAABEadRSqTw138.png

3、添加用户nginx、zabbix、tomcat、nologin以及hadoop用户(nologin用户的shell为/sbin/nologin);而后找出/etc/passwd文件中用户名与其shell名相同的行;

首先创建用户:useradd nginx;useradd zabbix;useradd tomcat;useradd nologin -s /sbin/nologin ;useradd hadoop。

使用cat /etc/passwd查看创建的用户,如下图所示。

wKioL1aCi8zAkC6yAAAUIK-CxyY105.png

   找出/etc/passwd中开头单词与最后单词相同的行,如下图所示。

wKioL1aCi7vD4LvPAABDwM1-SnM581.png

4、找出/etc/rc.d/init.d/functions文件中某单词(单词中间可以存在下划线)后面跟着一组小括号的行;

wKioL1aCjGmRU88aAABM7GIqaBo067.png

5、使用echo输出一个路径,而后egrep找出其路径基名;进一步的使用egrep取出其目录名(注意是目录名,而非目录路径);

查找路径基名,如下图所示。

wKioL1aCjIKThK-3AAAUIHUtOvA195.png

进而查找目录名,如下图所示。

wKioL1aCjJajVUGnAAAphLkbEHY812.png

6、查找/usr目录下不属于root、bin或hadoop的所有文件;

find /usr -not -user root -a -user bin -a-user hadoop

或 find /user -not (-user root -o -user bin -o -user hadoop)

 

7、某天系统被***了,***在你系统下留下***文件:

现需要查找当前系统上没有属主或属组,且最近一周内曾被访问过的所有文件;

另外,需要查找/etc目录下大于20k且类型为普通文件的所有文件;

查找当前系统上没有属主或属组,且最近一周内曾被访问过的所有文件

wKiom1aCjNihRPhWAABhZ3292sw696.png

查找/etc目录下大于20k且类型为普通文件的所有文件;

wKiom1aCjO6wiJXHAAB-E62Excw767.png

 

8、创建目录/test/data,让某组内普通用户对其有写权限,且创建的所有文件的属组为目录所属的组;此外,每个用户仅能删除自己的文件。

创建目录/test/data ,先创建test目录:mkdir /test ,再创建data目录:mkdir /test/data。再创建组data ;现在创建data组:groupadd data。

由上图可知,该目录的属组为root,现在我们将该目录的属组改为data,chown :data /test/data。现在赋予该组写权限:chmod g+w /test/data,并使该属组拥有guid权限:chmod g+s /test/data;这样以后创建的文件的属组均为data了。设置每个用户只能删除自己创建的文件: chmod o+t /test/data。

最后查看/test/data目录的权限如下图所示。

wKioL1aCjgfR_y0vAAAPuXa4rt8357.png