xml地图|网站地图|网站标签 [设为首页] [加入收藏]
来自 新濠国际登录平台 2019-10-06 21:29 的文章
当前位置: 新濠国际登录平台 > 新濠国际登录平台 > 正文

一般的Linux系统也可以用这种方法,复制代码 代

今天邮箱里发现有一封某服务器inode使用率发生告警的邮件
新濠国际登录平台 1
登录到服务器上df -i查看,发现/路径下91%,磁盘使用率却不高,猜测可能是某个目录下的小文件过多,进而造成inode占用率过高,但不清楚根路径下各文件夹里的文件数
于是乎执行以下命令,查看根路径下各国文件夹的文件数
for i in /* ; do echo $i; find $i | wc -l | sort -nr; done
发现文件数超过10W的有两个/data(我们的数据分区,确认数据量正常)和/etc
/data 10W+文件
/etc 50W+文件
于是把/etc下的目录一个个的执行了上面的命令
for i in /etc/;do echo $i;find $i | wc -l | sort -nr; done
for i in /etc/resty-auto-ssl/
;do echo $i;find $i | wc -l | sort -nr;done
.......
重点来了,当执行到下面的时候
for i in /etc/resty-auto-ssl/letsencrypt/certs; do echo $i; find $i | wc -l | sort -nr; done
文件夹里有50W+文件,终于找到了罪魁祸首
certs文件夹里的文件都是以前自动生成的证书文件,现在已无用
于是乎执行rm -rf /etc/resty-auto-ssl/letsencrypt/certs/* 执行完毕后再用df -i查看inode使用率,发现已经降下来了
新濠国际登录平台 2
几分钟后也收到了资源恢复正常的邮件

系统:CentOS ;一般的Linux系统也可以用这种方法。

系统:CentOS ;一般的Linux系统也可以用这种方法。

1.显示消耗内存/CPU最多的10个进程

情况描述:今天我们邮件服务器收发不了邮件了,而且连接到服务器上开启服务都开不了,起始以为磁盘空间不足,df 看了一下

情况描述:今天我们邮件服务器收发不了邮件了,而且连接到服务器上开启服务都开不了,起始以为磁盘空间不足,df 看了一下

复制代码 代码如下:

新濠国际登录平台 3

新濠国际登录平台 4

ps aux | sort -nk +4 | tail
ps aux | sort -nk +3 | tail

发现空间是足够的,然后df -i 查看了下inodes,发现根目录下的inodes值使用率为100%了

发现空间是足够的,然后df -i 查看了下inodes,发现根目录下的inodes值使用率为100%了

2.查看进程
按内存从大到小排列

新濠国际登录平台 5

新濠国际登录平台 6

复制代码 代码如下:

解决方法:通过以下脚本进行检查,查看到底哪个目录下面的文件最多:

解决方法:通过以下脚本进行检查,查看到底哪个目录下面的文件最多:

ps -e  -o "%C  : %p : %z : %a"|sort -k5 -nr

for i in /*; do echo $i; find $i | wc -l; done(如果确定是某个目录下面,则/转换为该目录绝对路径,如/var/spool,则使用for i in /var/spool/*; do echo $i; find $i | wc -l; done)

for i in /*; do echo $i; find $i | wc -l; done(如果确定是某个目录下面,则/转换为该目录绝对路径,如/var/spool,则使用for i in /var/spool/*; do echo $i; find $i | wc -l; done)

3.按cpu利用率从大到小排列

新濠国际登录平台 7

新濠国际登录平台 8

复制代码 代码如下:

最终发现/var/soppl目录最多。然后又进一步确定是/var/spool/amavisd/quarantine 目录下面有上百万个文件,机器已经无法正常显示了,后来百度查看了下这个目录是邮件服务器,处理垃圾邮件活病毒邮件隔离的,明白原因了,删除该目录下所有文件;使用xargs命令来删除数量比较多的文件:

最终发现/var/soppl目录最多。然后又进一步确定是/var/spool/amavisd/quarantine 目录下面有上百万个文件,机器已经无法正常显示了,后来百度查看了下这个目录是邮件服务器,处理垃圾邮件活病毒邮件隔离的,明白原因了,删除该目录下所有文件;使用xargs命令来删除数量比较多的文件:

ps -e  -o "%C  : %p : %z : %a"|sort  -nr

ls | xargs -n 10 rm -rf

ls | xargs -n 10 rm -rf

3.查看Apache的并发请求数及其TCP连接状态

执行了大约10多小时之后,最终解决问题。

执行了大约10多小时之后,最终解决问题。

复制代码 代码如下:

;一般的Linux系统也可以用这种方法。 情况描述:今天我们邮件服务器收发不了邮件了,而且连接到服务器上开启服务都开不了...

更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

netstat -n | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

新濠国际登录平台 9

  1. 查找占用磁盘IO最多的进程

复制代码 代码如下:

wget -c
dstat -M topio -d -M topbio

5.找出自己最常用的10条命令及使用次数(或求访问最多的ip数)

复制代码 代码如下:

sed -e ‘s/| /n/g' ~/.bash_history |cut -d ‘ ‘ -f 1 | sort | uniq -c | sort -nr | head

6.日志中第10个字段表示连接时间,求平均连接时间

复制代码 代码如下:

cat access_log |grep “connect cbp” |awk ‘BEGIN{sum=0;count=0;}{sum+=$10;count++;}END{printf(“sum=%d,count=%d,avg=%fn”,sum,count,
sum/count)}'

7.lsof命令

lsof abc.txt 显示开启文件abc.txt的进程
lsof -i :22 知道22端口现在运行什么程序
lsof -c abc 显示abc进程现在打开的文件
lsof -p 12  看进程号为12的进程打开了哪些文件

8.rsync命令(要求只同步某天的压缩文件,而且远程目录保持与本地目录一致)

复制代码 代码如下:

/usr/bin/rsync -azvR –password-file=/etc/rsync.secrets `find . -name “*$yesterday.gz”  -type f ` storage@192.168.2.23::logbackup/13.21/

9.把目录下*.sh文件改名为*.SH

复制代码 代码如下:

find .  -name “*.sh” | sed  's/(.*).sh/mv 1.SH/' |sh
find .  -name “*.sh” | sed  's/(.*).sh/mv & 1.SH/'|sh  (跟上面那个效果一样)

10.ssh执行远程的程序,并在本地显示

复制代码 代码如下:

ssh -n -l zouyunhao 192.168.2.14 “ls -al /home/zouyunhao”

11.shell段注释

复制代码 代码如下:

:<<'echo hello,world!'

新濠国际登录平台,12.查看网卡是否有网线物理连接

复制代码 代码如下:

/sbin/mii-tool

13.查看linux系统或者mysql错误码表示的意思,如查看13错误码表示的意思:

复制代码 代码如下:

perror  13

14.删除0字节文件

复制代码 代码如下:

find -type f -size 0 -exec rm -rf {} ;

本文由新濠国际登录平台发布于新濠国际登录平台,转载请注明出处:一般的Linux系统也可以用这种方法,复制代码 代

关键词: