Linux面试整理(二)
1、查看http的并发请求数及其TCP连接状态;
netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’
2、用tcpdump嗅探80端口的访问找出最高的5个;
tcpdump -i eth0 -tnn dst port80 -c 1000|awk -F”.” ‘{print $1″.”$2″.”$3″.”$4}’|sort|uniq -c|sort -nr|head -5
3、查看/var/log目录下的文件数;
ls -l /var/log|egrep “^-“|wc -l
4、查看当前系统每个IP的连接数;
a.统计80端口连接数
netstat -nat|grep -i “80”|wc -l
b.统计httpd协议连接数
ps -ef|grep httpd|wc -l
c.统计已连接上的,状态为“established
netstat -na|grep ESTABLISHED|wc -l
5、统计出nginx统计日志中访问量最高的5个ip;
awk ‘{print $1}’ access_blog.log |sort|uniq -c|sort -nr|head -5
6、PS aux中的VSZ和RSS分别代表的意思;
VSZ代表:该进程使用的虚拟内存量(KB)
RSS代表:该进程占用的固定内存量(KB)(驻留页面的数量)
注解:
a 显示所有与终端相关的进程,由终端发起的.
x 显示所有与终端无关的进程.
u 显示用户导向的用户列表.
VSZ 虚拟内存集,进程占用的虚拟内存空间
RSS 物理内存集,进程战用实际物理内存空间.
S 可中断的睡眠态
R 运行态
D 不可中断的睡眠态
T 停止态 Z 僵死态
7、服务器禁止某个IP地址访问;
方法1、修改/etc/hosts.allow文件;
方法2、IPtables -I INPUT -s 192.168.1.101 -j DROP
8、怎么把脚本添加到系统服务里,用service调用;
cp xxx /etc/init.d/
chmod 755 /etc/init.d/xxx
chkconfig –add xxx
9、写一个脚本,实现判断192.168.1.0/24网络里,当前在线的IP有哪些,能ping通则认为在线;
#!/bin/bash
for ip in seq 1 255
do
{
ping -c 1 192.168.1.$ip > /dev/null 2>&1
if [ $? -eq 0 ]; then
echo 192.168.1.$ip UP
else
echo 192.168.1.$ip DOWN
fi
}&
done
wait