通过apache 访问日志access.log 统计IP 和每个地址访问的次数,按访问量列出
前10 名。
日志格式样例如下
192.168.1.247 – - [02/Jul/2010:23:44:59 +0800] “GET / HTTP/1.1″ 200 19
写法:cat access.log_20150407.log | awk ‘{print $1}‘ |uniq -c|sort -rn|head -10
2.编写个shell 脚本将/home/scripts 目录下大于100K 的文件转移到/tmp 目录下
#!/bin/bash
for file in `ls /home/scripts`
do
if [ -f $file ]; then
if [ `ls -l $file|awk ‘{print $5}‘` -gt 100 ]; then
mv $file /tmp/
fi
fi
done
3.如何将本地80 端口的请求转发到8080 端口,当前主机IP 为192.168.20.x
Iptables -A PREROUTING -d 192.168.20.x -p tcp -m tcp –dport 80 -j DNAT -to-destination 192.168.20.x:8080
4.crontab
在11 月份内,每天的早上6 点到12 点中,每隔2 小时执行一次/usr/bin/httpd.sh 怎么
实现
0 6-12/2 * 11 * /usr/bin/httpd.sh
5.请写出apache2.X 版本的两种工作模式,以及各自工作原理。如何查看apache 当前所支持的模块,并且查看是工作在哪种模式下?
答案:
prefork(多进程,每个进程产生子进程)和worker(多进程,每个进程生成多个线程)
prefork 的工作原理是,控制进程在最初建立“StartServers”个子进程后,为了满足MinSpareServers 设置的需要创建一个进程,等待一秒钟,继续创建两个,再等待一秒钟,继续创建四个……如此按指数级增加创建的进程数,最多达到每秒32 个,直到满足MinSpareServers 设置的值为止。这就是预派生(prefork)的由来。这种模式可以不必在请求到来时再产生新的进程,从而减小了系统开销以增加性能。
worker 是2.0 版中全新的支持多线程和多进程混合模型的MPM。由于使用线程来处理,所以可以处理相对海量的请求,而系统资源的开销要小于基于进程的服务器。但是,worker 也使用了多进程,每个进程又生成多个线程,以获得基于进程服务器的稳定性。这种MPM 的工作方式将是Apache 2.0 的发展趋势。
可以通过命令httpd -l 可以查看apache 当前的模块,如果带有worker.c 就是工作在worker 模式下,如果有prefork.c 就是工作在prefork.c 的模式下。
6.如何修改Linux启动级别为字符模式并永久生效
vim /etc/inittab
id:5:initdefault:
原文地址:http://yzg784534398.blog.51cto.com/9719002/1630363