docker面试题目,Python后端面试题
web日志中IP访问计数的统计
必须找到apache访问日志超过10G,访问/stat.php页面超过1000次的前100个IP。
日志的示例如下:
212 . 11 . 129 . 182-[26/mar/201533600336000336003360010800]获取/统计。PHP?PID=016 http/1.1 30220-- mozilia/4.0(兼容;MSIE 6.0 windowsnt5.1
分析:10G的日志已经很大了。直接用grep或者awk进行分析会变慢,服务器的内存消耗也会增加。如果服务器配置较低,还可以将日志拆分成100个100M的文件,统计这100个文件中每个文件的前100个IP,并将结果合并到一个文件中进行分析。
回答:
#!芹菜/bash
sta().
Grep /stat。PHP $ 1 { print $ 1 } sort-n UNIC-n sort-n
}
logfile=/data/logs/access.log
mkdir /data/logs/tmp
光盘/数据/日志
把100M的文件分成100个文件。
split -b 100M access.log小文件
Mv small * tmp
进入推送目录
#计算拆分文件中的前100个ip
For in` ls小文件* `中
德奥
sta $f top100.txt
黎明
#创建一个计算每个IP出现次数的函数
计数总和
总和=0
For in` ls小文件* `中
德奥
n= grep $ 1 $ f WC-l
总和=$[$总和$n]
echo $sum $1
黎明
}
#移除获得的IP,将其作为导线测量对象,并统计所有IP次数。
对于ipin ` awk { print $ 2 } top 100 . txt sort-n
德奥
count_sum $ip ip.txt
黎明
#先筛选IP > 1000次,再按IP次数排序,得出前100名。
awk 11000美元 IP.txtsort-NRhead-100
查找命令
问题:编写一个脚本或命令在/var/log目录中查找,删除最后修改时间超过30天且后缀为*.log的文件。
回答:
find/var/log/- mtime 30-name *。log -exec RM-RF { };
问题:编写脚本或命令,将/data目录中大于100K的文件移动到/tmp目录中。
回答:
find/data-size 100k-exec mv { }/tmp \;
防火墙
问题:如何将192.168.10.2主机80端口请求转发到172.116.10.3上的8080端口?
回答:
iptables-tnat-a预路由-d 192 . 168 . 10 . 2-ptcp-mtcp-dport 80-jdn at-to-destination 172 . 116 . 10 . 333333
问:是否只允许远程主机访问本地端口80并编写iptables规则?
回答:
Iptables-a输入-ptcp-d端口80-j接受
Iptables-p输入压降
网络问题
1.划分局域网的作用是什么?
2.路由器是什么协议?路由器的作用是什么?
3.如何划分子网?
4.ping命令使用哪种协议?
5.OSPF是如何工作的?
6.简单解释一下TCP的3次握手和4次握手?
7.我的游戏里有页面。用户进入那个页面,网络被屏蔽,或者网络很慢。应该怎么查?
8.OSI七层模型有哪些?
9.Cisco路由器有配置命令吗?
10.关于https的3次握手会简单解释一下吗?
1.Dos攻击和DDos攻击有什么区别?
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。