.bashrc 文件修改
cd /root
ll -a
vim .bashrc
文件修改
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias netip="/home/soft/netip.sh"
alias vhost="cd /usr/local/nginx/conf/vhost"
alias www="cd /data/www"
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# 保存后刷新
source .bashrc
查看服务器IP连接数
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
一、查看哪些IP连接本机
netstat -an
二、查看TCP连接数
1)统计80端口连接数
netstat -nat|grep -i "80"|wc -l
2)统计httpd协议连接数
ps -ef|grep httpd|wc -l
3)、统计已连接上的,状态为“established
netstat -na|grep ESTABLISHED|wc -l
4)、查出哪个IP地址连接最多,将其封了.
netstat -na|grep ESTABLISHED|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n
netstat -na|grep SYN|awk {print $5}|awk -F: {print $1}|sort|uniq -c|sort -r +0n
---------------------------------------------------------------------------------------------
1、查看apache当前并发访问数:
netstat -an | grep ESTABLISHED | wc -l
对比httpd.conf中MaxClients的数字差距多少。
2、查看有多少个进程数:
ps aux|grep httpd|wc -l
3、可以使用如下参数查看数据
server-status?auto
#ps -ef|grep httpd|wc -l
1388
统计httpd进程数,连个请求会启动一个进程,使用于Apache服务器。
表示Apache能够处理1388个并发请求,这个值Apache可根据负载情况自动调整。
#netstat -nat|grep -i "80"|wc -l
4341
netstat -an会打印系统当前网络链接状态,而grep -i "80"是用来提取与80端口有关的连接的,wc -l进行连接数统计。
最终返回的数字就是当前所有80端口的请求总数。
#netstat -na|grep ESTABLISHED|wc -l
376
netstat -an会打印系统当前网络链接状态,而grep ESTABLISHED 提取出已建立连接的信息。 然后wc -l统计。
最终返回的数字就是当前所有80端口的已建立连接的总数。
netstat -nat||grep ESTABLISHED|wc - 可查看所有建立连接的详细记录
查看Apache的并发请求数及其TCP连接状态:
Linux命令:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
(
netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’
TIME_WAIT 8947 等待足够的时间以确保远程TCP接收到连接中断请求的确认
FIN_WAIT1 15 等待远程TCP连接中断请求,或先前的连接中断请求的确认
FIN_WAIT2 1 从远程TCP等待连接中断请求
ESTABLISHED 55 代表一个打开的连接
SYN_RECV 21 再收到和发送一个连接请求后等待对方对连接请求的确认
CLOSING 2 没有任何连接状态
网络查看
iptraf // 不是系统自带的
安装:yum install -y iptraf
nload // 不是系统自带程序
安装:yum install -y nload
ifstat // 不是系统自带程序
安装:yum install -y ifstat
tcpdump // 洞察网络封包
实例:
# tcpdump -i eth0 not port 22
# tcpdump -c 10 -i eth0
# tcpdump -ni eth0 -c 10 not port 22
# tcpdump -w aloft.cap -s 0
# tcpdump -r aloft.cap
# tcpdump -i eth0 dst port 80
ss // 网络管理的现代替代品
实例:
# ss -tnap
# ss -tnap6
# ss -tnap
# ss -s
# ss -tn -o state established -p
iftop // 类似top的了网络连接工具
显示说名:
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量
参数说名:
-i设定监测的网卡,如:# iftop -i eth1
-B 以bytes为单位显示流量(默认是bits),如:# iftop -B
-n使host信息默认直接都显示IP,如:# iftop -n
-N使端口信息默认直接都显示端口号,如: # iftop -N
-F显示特定网段的进出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0
-h(display this message),帮助,显示参数信息
-p使用这个参数后,中间的列表显示的本地主机信息,出现了本机以外的IP信息;
-b使流量图形条默认就显示;
-f这个暂时还不太会用,过滤计算包用的;
-P使host信息及端口信息默认就都显示;
-m设置界面最上边的刻度的最大值,刻度分五个大段显示,例:# iftop -m 100M
PHP常用错误排查命令
strace -s 4096 -f -F $(pidof "php" | sed 's/\([0-9]*\)/-p \1/g')
# 查找PHP
which php
# 查找rpm包安装的PHP相关包
rpm -qa|grep php
# 重命名php命令
mv /usr/bin/php /usr/bin/phpold
# 新建PHP软连接命令
ln -s /usr/local/php/bin/php /usr/bin/php
标题文字
# 查看CPU使用情况的命令
# 每5秒刷新一次,最右侧有CPU的占用率的数据
vmstat 5
# 查看内存使用情况的命令
# 用free命令查看内存使用情况
free -m
# 查看磁盘i/o
# 用iostat查看磁盘/dev/sdc3的磁盘i/o情况,每两秒刷新一次
iostat -d -x /dev/sdc3 2
# 如何查看目标主机192.168.0.1开放那些端口
nmap -PS 192.168.0.1
# 查看系统错误
dmesg|tail
# 查看服务器TCP连接数量
watch -n 1 -d "ss -s "
# 查看服务器带宽消耗
nload
# top 然后按Shift+P,按照进程处理器占用率排序
top
# 查询当前网卡网络流量
iftop -i eth1
# 查看当前目录大小
du -sh /data/
# 查看服务器磁盘空间占用情况
df -h
# 查看PHP进程通信信息
strace -s 4096 -f -F $(pidof "php-fpm" | sed 's/\([0-9]*\)/-p \1/g')
文件相关操作
# 对大文件进行切割
# 按每个文件1000行来分割
split -l 1000 httperr8007.log httperr
# 按照每个文件5m来分割
split -b 5m httperr8007.log httperr
# 合并文件
# 取出两个文件的并集(重复的行只保留一份)
cat file1 file2 | sort | uniq
# 取出两个文件的交集(只留下同时存在于两个文件中的文件)
cat file1 file2 | sort | uniq -d
# 删除交集,留下其他的行
cat file1 file2 | sort | uniq –u