给输出的IP附加上地理信息和所属ISP
公司业务调整,对日志进行分析时,想要同时显示IP所在地以及所属ISP,用脚本获取日志IP再逐条通过第三方接口查询显的很笨拙又要联网查询效率方面可想而知,可参见《使用PHP+淘宝IP地址库接口获得IP所属地理位置》。找到了一款工具nali,取自中文“哪里”的拼音。包含的命令有nali、nali-dig、nali-nslookup、nali-ping、nal ...
yum Segmentation fault
在一台服务器上,yum安装依赖包时,发现Segmentation fault错误,yum执行一般过程中中断了。日志信息如下:
解决方法如下:
是由libz引起的。 bug地址http://bugs.centos.org/view.php?id=4702&nbn=1
将/usr/local/lib/libz.so.1.2.5文件改名个名字即可。 ...
Linux下chkconfig命令详解
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。
使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
chkconfig 在没有参数运行时,显示用法。如果加 ...
nginx向响应内容中追加内容(ngx_http_addition_module模块)
ngx_http_addition_module在响应之前或者之后追加文本内容,比如想在站点底部追加一个js或者css,可以使用这个模块来实现,这个模块和淘宝开发的nginx footer模块有点类似,但是还是有不同. 这个模块需要依赖子请求,nginx footer依赖nginx写死的配置.
1. 安装nginx
# wget http://nginx.org/download/nginx-1.4.2.tar.gz
# ...
预留端口避免占用ip_local_reserved_ports
问题描述:
业务遇到这个情况,在重启服务时,出现1986端口被占用而无法启动,非得等该端口释放后才启动成功。
问题分析:
1986端口被该服务器上的客户端随机选取源端口给占用掉了。
解决方案:
使用net.ipv4.ip_local_port_range参数,规划出一段端口段预留作为服务的端口,这种方法是可以解决当前问题,但是会有个问题, ...
dstat使用
目录1、安装2、参数3、使用1、安装
方法一:yum
#yum install -y dstat
方法二:rpm
官网下载地址:
http://dag.wieers.com/rpm/packages/dstat
#wget http://dag.wieers.com/rpm/packages/dstat/dstat-0.6.7-1.rh7.rf.noarch.rpm
#rpm -ivh dstat-0.6.7-1.rh7.rf.noarch.rpm
2、参数
-c, --cpu ...
时时流量查看工具-ifsta,nload,iftop
目录1、ifstat2、nload3、iftop1、ifstat
是一个网络流量监测程序。能查看网卡的流出和流入的字节.
概要:ifstat就像iostat/vmstat描述其它的系统状况一样,是一个统计网络接口活动状态的工具。
参数:
-l 监测环路网络接口(lo)。缺省情况下,ifstat监测活动的所有非环路网络接口。经使用发现,加上-l参数能监测所有的网 ...
MegaCli 监控raid状态
MegaCli是一款管理维护硬件RAID软件,可以通过它来了解当前raid卡的所有信息,包括 raid卡的型号,raid的阵列类型,raid 上各磁盘状态,等等。通常,我们对硬盘当前的状态不太好确定,一般通过机房人员巡检来完成,有没有通过软件的方式来检查确定这个问题呢。MegaCli就可以做到,一般通过 MegaCli 的Media Error Cou ...
tmp目录自动清除和tmpwatch命令
习惯性的将一些临时文件放在tmp目录下,让其自然删除。同时,为了保证tmp目录不爆满,系统默认情况下每日会处理一次tmp目录文件,原理就是使用了tmpwatch。在系统最小安装情况下,这个功能是没有安装的。
安装:# yum install tmpwatch.x86_64安装后会在/etc/cron.daily/目录下生成一个tmpwatch文件。内容如下:# cat /etc/ ...
tcpdump内容抓取和基于IP统计流量
一、内容抓取
被抓取机器A(各种系统,各种盒子,各种电视机):
IP:192.168.100.111
网关:192.168.100.24
(tcpdump执行机)抓取机器B:
IP:192.168.100.24
B机器:<code>#echo 1 > /proc/sys/net/ipv4/ip_forward</code>
#iptables -t nat -A POSTROUTING -s 192.168.100.111 -j MASQUERADE
#tcpdump -i eth0 -nn ...
ANT问题:warning: ‘includeantruntime’ was not set
公司的麻将版本又更新了,svn检出最新的文件,接着打包吧。Ant编译的时候也没出现什么问题,只是一直会有一个warning。今天特别想解决掉。现在ANT也不知道多少版本了,不过版本在更新整个问题还是同样存在. 配置不当必然出现这个问题.
具体错误如下图:
ANT not set
可以看到在build.xml的24行报错,24行代码如下:<javac s ...
nginx访问控制allow、deny(ngx_http_access_module)
单看nginx模块名ngx_http_access_module,很多人一定很陌生,但是deny和allow相比没一个人不知道的,实际上deny和allow指令属于ngx_http_access_module.我们想控制某个uri或者一个路径不让人访问,在nginx就得靠它了。
nginx的访问控制模块语法很简单,至少比apache好理解,apache的allow和deny的顺序让很多初学者抓头.好了 ...
为MySQL选择合适的备份方式
目录总结数据库的备份是极其重要的事情。如果没有备份,遇到下列情况就会抓狂:
UPDATE or DELETE whitout where…
table was DROPPed accidentally…
INNODB was corrupt…
entire datacenter loses power…
从数据安全的角度来说,服务器磁盘都会做raid,MySQL本身也有主从、drbd等容灾机制,但它们都无法完全取代备份。 ...
logrotate日志管理工具
logrotate是一个日志文件管理工具。用来把旧文件轮转、压缩、删除,并且创建新的日志文件。我们可以根据日志文件的大小、天数等来转储,便于对日志文件管理,一般都是通过cron计划任务来完成的。
1. 配置实例/var/log/messages {
rotate 5
weekly
postrotate
/sbin/killall -HUP syslogd
endscript ...
利用多核CPU来加速Linux命令 — awk、sed、bzip2、grep、wc
你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或在里面搜索,或其它操作——一些无法并行的操作。数据专家们,我是在对你们说。你可能有一个4核或更多核的CPU,但我们合适的工具,例如 grep, bzip2, wc, awk, sed等等,都是单线程的,只能使用一个CPU内核。
借用卡通人物Cartman的话,“如何我能使用这些内核”?
...
linux下使用pmap和ldd查看进程调用了什么lib
在写安装脚本或者其他时候我们想了解某个经常调用了哪些lib,我们可以使用pmap方法,显示出的lib比较全面,当然也可以使用ldd来查看。接下来看看linux下使用pmap和ldd的命令。
pmap命令
使用方法:pmap 进程pid
如下是查看nginx调用了哪些lib# pmap 2492
2492: nginx: master process /usr/local/nginx-1.4.1/sbin/nginx
...
Linux文件比较操作—文本文件的交集、差集与求差
最近公司业务调整,需要对属于百度某公司的域名进行剥离分开,属于本公司的域名更改掉。 域名非常之多之杂乱。各自分别整理手上的域名, 后面再整理无家可归的域名。
这就需要对文件进行操作,也就是把文件当作集合,求集合的交集差集等等集合论相关的数学理论。
下面介绍两个命令:
1. comm命令
comm命令可以用于两个文件 ...
curl: (6) Couldn’t resolve host ‘www.ttlsa.com’
上周, 部分站点出现Couldn't resolve host.....问题, 导致公司所有走api的程序都无法正常使用(系统redhat 6.3的都出现问题, redhat 5一切OK). 最后解决方法找到了,但是具体原因目前还未知.
从这个报错,可以很明显的发现是域名解析不了。于是做如下排查。
1. 故障排除
1. 1 测试域名是否能解析到
简单的使用ping来测试 ...
nginx替换网站响应内容(ngx_http_sub_module)
ngx_http_sub_module模块是一个过滤器,它修改网站响应内容中的字符串,比如你想把响应内容中的‘ttlsa’全部替换成‘运维生存时间’,这个模块已经内置在nginx中,但是默认未安装,需要安装需要加上配置参数:--with-http_sub_module
1. 安装nginx
# wget http://nginx.org/download/nginx-1.4.2.tar.gz
# tar -xzvf nginx ...
卸载后云锁网站无法访问的解决方法
卸载云锁后遇到网站打不开问题,在IIS6上请检查IIS 筛选器、IIS通配符应用程序映射以及Web服务扩展这3个地方是否存在云锁插件。
网站-属性-ISAPI筛选器
IIS通配符应用程序映射
Web服务扩展
在IIS7和IIS8上请检查IIS模块里是否含有云锁插件
IIS模块
在Apache上检查配置文件httpd.conf是否还有云锁 ...