linux 經常使用命令

.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


1、查看哪些IP鏈接本機

netstat -an

2、查看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

---------------------------------------------------------------------------------------------

一、查看apache當前併發訪問數:
netstat -an | grep ESTABLISHED | wc -l

對比httpd.conf中MaxClients的數字差距多少。

二、查看有多少個進程數:
ps aux|grep httpd|wc -l

三、可使用以下參數查看數據
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
相關文章
相關標籤/搜索