我的答案——老男孩培训初级第九期第七次课课前考试题

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://oldboy.blog.51cto.com/2561410/738071

老男孩培训初级第九期第七次课课前考试题2011-12-3

###################################################################

本文来自老男孩linux私塾培训课程教案 课前测试题

网站运维交流群:114580181 45039636 37081784  

老男孩 QQ:31333741  

mail:[email protected]

网站地址:http://oldboy.cc  http://www.etiantian.org

blog:http://oldboy.blog.51cto.com

###################################################################

[考试目的]

1.学生课后复习及预习情况。

2.未来实际工作中做人做事能力。

3.沟通及口头表达能力。

[考试范围]

上节留的作业内容及以前学习过的内容。

[口头表达技能考试题](4)

1)请描述下linux的启动过程。

2)请问如何优化linux系统。

3)nfs网络文件系统的工作原理

4)一台LAN内主机无法上网(打不开网站),请给出你的排查步骤?

[技术技能笔试考试题](10)

说明:

请针对问题给出相关命令答案,写到问题的下边即可(如果实在不会可以搜缩,写上答案,

自觉做标记是某搜索得到(该题分数减半))。以下均为centos linux root环境下结果

考试范围:

以往课程内容及留的作业(包括预习内容),

考试题一:已知oldboy.log文件内容为如下地址,请将域名取出并根据域名地址进行计数排序处理:(百度和sohu面试题)

 http://www.etiantian.org/index.html

 http://www.etiantian.org/oldboy.html

 http://post.etiantian.org/index.html

 http://mp3.etiantian.org/index.html

 http://www.etiantian.org/test.php

 http://post.etiantian.org/post.php

 http://www.etiantian.org/test.php

 http://oldboy.cc/ett.php

提示:

1)最后的结果形如:

      1 oldboy.cc

      1 mp3.etiantian.org

      2 post.etiantian.org

      3 www.etiantian.org

2)此题方法很多,多写多得分

解答: cat te1.txt | awk -F 'http://' '{print $2}' |awk -F/ '{print $1}' |sort |uniq -c |sort -rn -k 1

sort 按默认方法排序

uniq -c 统计不同行出现的次数

sort -rn -k 1

-r:逆序显示

-n:按数字大小比较

-k 1:从排序好的第一个关键字处开始显示

 -k, --key=POS1[,POS2]     start a key at POS1 (origin 1), end it at POS2

                            (default end of line)

 sed 's/\(http:\/\/\)\(.*\)\(\/.*\)$/\2/' te1.txt |sort |uniq -c|sort -rn -k1

或:

cut -d "/" -f3 te1.txt |awk '{++sa[$NF]} END {for(a in sa) print sa[a],a}' |sort -rn -k1

考试题二:请写出以下端口对应的服务(来自《风行在线》面试题 from Lonely party同学)

端口21:ftp (还有一个端口是20)

端口22:ssh

端口25:smtp

端口3306:mysql

端口123:ntp

端口161:snmp

端口80:http

端口443:https

端口3389:ms-wbt-server

端口110:pop3

提示:

1.请在端口后面对应解答即可。

2.以上端口是一个合格的SA应该记住的基本端口,更多端口功能,可cat /etc/services查看

解答:

考试题三:如何批量创建100个系统用户,要求:帐号和密码(8位以上含数字和字母)均不能相同。

解答:

#!/bin/bash

 for((i=1;i<101;i++))

 do 

printf -v num "%.4d" $i

userno=$num

##用户名username 是类似“user0001”“user0002”“user0003”这样的格式

username="user$userno"

##用户密码userpasswd  是类似“user-0001”“user-0002”“user-0003”这样的格式

userpasswd="user-$userno"

grep "^$username" /etc/passwd 

##grep 查找后没有此用户 则会返回非0

if [ $? -eq 0 ]; then

echo "$username exists!"

else

useradd -m "$tmpuser" -p "$userpasswd"  

[ $? -eq 0 ] && echo "User '$username' has been added to system!" || echo "Failed to add a user!"

fi

done

考试题四:查看rsync进程的命令(来自《掌上明珠》 from马里奥)

解答: ps -ef |grep rsync |grep -v grep 

或: ps -ef |grep [s]shd

考试题五:在Shell环境下,如何查看远程Linux系统运行了多长时间?( sohu面试题)

解答:uptime

w

top

ac(用户连接系统的所有时间,小时为单位)

考试题六:要求192.168.0.0网段通过192.168.0.253网关的连入172.16.1.0 ip,请问如何添加路由?(来自《360》面试 from jeacen

解答: route add gw 192.168.0.253

解答:

route 命令方法:

主机路由:

/sbin/route add -host 192.168.2.13 dev eth2

/sbin/route add -host 202.81.11.91 dev lo

缺省网关路由

/sbin/route add default gw 192.168.1.254

/sbin/route add default gw 202.11.11.1

网络路由 去往某一网络

/sbin/route add -net 192.168.100.0 netmask 255.255.255.0 dev eth0 //通过eth0设备去连接

/sbin/route add -net 10.8.0.0  netmask 255.255.255.0 gw 192.168.1.90

/sbin/route add -net 0.0.0.0  netmask 0.0.0.0 gw 203.84.12.1

查看:

route -n

删除:

route del

 

ip route 命令方法:

增加路由,主要是本机可以沟通的网段

ip route add 192.168.5.0 dev eth0

增加可以通往外部的路由,需通过router

ip route add 192.168.10.0/24 via 192.168.5.100 dev eth0

增加默认路由

ip route add default via 192.168.1.2 dev eth0

查看:

ip route show

删除:

ip route del 192.168.10.0/24


考试题七:请给一个做好raid53T容量的磁盘数据平均分3个主分区。给出过程。

解答:

 (1) 使用 fdisk 命令对磁盘废均分成三个分区,要将分区建立成fd 即 Linux raid autodetect 类型,进入fdisk命令行后,使用命令n创建分区,命令t改变分区类型,命令v表示确认,命令w保存分区表并退出,命令m为帮助。

    (2) partprobe 刷新分区。
    (3) 设步骤 建立的 3 个 RAID 分区为 /dev/sda5  /dev/sda6 和 /dev/sda7,则建立 RAID 如下:
    mdadm  --create  /dev/md0  --level=5  --raid-devices=3  /dev/sda5  /dev/sda6 /dev/sda7
    level=5 表示建立 RAID5。
/dev/md0 表示设备名

(3) 确认新建的 RAID 设备
          mdadm  --detail  /dev/md0
    (4) 在 RAID 设备上建立文件系统
          mke2fs  -j  /dev/md0
    (5) 挂接文件系统
          mount  -t  ext3  /dev/md0  /mnt/data
          若需要每次开机自动挂接,则修改 /etc/fstab 文件
          /dev/md0  /mnt/data  ext3  defaults  0  0

考试题八:已知eth0网卡已经绑定了一个IP 10.0.0.142,那么现在希望在eth0网卡上在增加一个可用的IP,提供VIP服务,

1)请给出配置命令或配置文件。

2)如果要卸载该VIP,又如何做?

解答:1) ifconfig eth0:1 192.168.0.219

2)ifconfg eth0:1 down

考试题九:已知一个进程名字为rsync,请给出你能想到的杀死该进程的命令。

解答:kill rsync

kill -9 rsync

kill -2 rsync

考试题十:已知某生产环境服务器查看到tcp连接状态信息内容为:

[oldboy@LVS-1-5 ~]$ netstat -n |awk '/^tcp/ {++oldboy[$NF]} END {for(a in oldboy) print a, oldboy[a]}'

TIME_WAIT 9137

CLOSE_WAIT 207

FIN_WAIT1 547

ESTABLISHED 97

FIN_WAIT2 74

SYN_RECV 70

CLOSING 55

LAST_ACK 8

请问:ESTABLISHED 97TIME_WAIT 9137的字母和后面的数字代表什么意思,有什么作用?

解答:处于该状态的进程个数

上机考试(做好请保留环境等待给老师演示)

1)要求用scp+expect实现从一台A机器,到另外两台机器AC的定时数据分发。

  即每10分钟执行一次从ABACetc/hosts文件数据分发,A上的数据为/etc/hosts文件。BC目标路径为/etc/hosts

[root@localhost ~]#crontab -e

*/10 * * * * /dir/bak_A_to_B.sh

*/10 * * * * /dir/bak_A_to_C.sh

[root@localhost ~]#cat bak_A_to_B.sh

scp -r /etc/hosts machineB_ip:/etc/hosts

monitor_auto_A_to_B

[root@localhost ~]#cat bak_A_to_C.sh

scp -r /etc/hosts machineC_ip:/etc/hosts

/dir/monitor_auto_A_to_C

[root@localhost ~]#cat monitor_auto_A_to_B:

#!/usr/bin/expect 

set loginpass {passwordonthishost}

set timeout 300

expect {

-re "Are you sure you want to continue connecting (yes/no)?" {

send "yes\r"

} -re "assword:" {

send "$loginpass\r"

} -re "Permission denied, please try again." {

exit

} -re "Connection refused" {

exit

} timeout {

exit

} eof {

exit

}

}

monitor_auto_A_to_C类似monitor_auto_A_to_B写法。

2)rsync守护进程方式数据备份:

  1.分别把BC机器目录下的etc/hosts文件数据备份到,A/databackup目录。

rsync -av -e ssh machineB_ip:/etc/hosts  /databackup

需要输入密码等操作……

rsync -av -e ssh machineC_ip:/etc/hosts  /databackup

需要输入密码等操作……

  2.如果每天00点定时备份一次,给出备份命令?

[root@localhost ~]# crontab -l

rsync_cmd1="rsync -av -e ssh machineB_ip:/etc/hosts  /databackup"

rsync_cmd2="rsync -av -e ssh machineB_ip:/etc/hosts  /databackup"

0 0 * * * rsync_cmd1="rsync -av -e ssh machineB_ip:/etc/hosts  /databackup"

0 0 * * * rsync_cmd2="rsync -av -e ssh machineB_ip:/etc/hosts  /databackup"

待完善,还需要考虑密码输入等问题。

  3.要求备份后的数据文件etc/hosts名称以当前日期(2011-12-4)和备份原机器的IP命名。如:10.0.0.142.2011-12-4.hosts.

将上述/databackup  文件名用一变量(设为VAR)替代,修改,VAR=machineB_ip.`date +%F`.hosts

[做人做事技巧考试]

思考题(本周要答):

你认为,在工作中怎么样能处理好普通员工和直接上级领导之间的关系?

把握住每个人的性格特点,分配好利益关系,看山取柴

###############################################

本卷满分100

考试时间:30分钟

及格:60

优秀:85

提示:不能及格的同学,请多加努力学习

命题人:老男孩linux培训--老男孩老师

###############################################

你可能感兴趣的:(linux,面试,数据备份,cmd,user,raid5)