随笔分类 -  Linux

[转]sed 替换
摘要:让我们看一下sed最有用的命令之一,替换命令。使用该命令,可以将特定字符串或匹配的规则表达式用另一个字符串替换。下面是该命令最基本用法的示例:Linux代码$sed-e's/foo/bar/'myfile.txt上面的命令将myfile.txt中每行第一次出现的'foo'(如果有的话)用字符串'bar'替换,然后将该文件内容输出到标准输出。请注意,我说的是每行第一次出现,尽管这通常不是您想要的。在进行字符串替换时,通常想执行全局替换。也就是说,要替换每行中的所有出现,如下所示:Linux代码$sed-e's/foo/bar/g'm 阅读全文
posted @ 2013-06-03 14:11 sidesky 阅读(572) 评论(0) 推荐(0)
[转]linux系统下安装配置net-snmp
摘要:关于net-snmp维基百科简介:http://zh.wikipedia.org/zh/NET-SNMP安装配置共分以下几步1.获取源文件2.解压缩3.配置configure参数4.编译安装5.配置snmpd.conf文件6.设置环境变量7.添加自启动脚本8.启动snmp服务9.测试snmp服务第一步:获取源文件wget http://sourceforge.net/projects/net-snmp/files/net-snmp/5.3.3/net-snmp-5.3.3.tar.gz第二步:解压缩gunzip net-snmp-5.3.3.tar.gztar -xvf net-snmp-5. 阅读全文
posted @ 2013-05-22 14:32 sidesky 阅读(597) 评论(0) 推荐(0)
[转]Linux学习之CentOS(二十四)--Linux软件管理之YUM软件管理
摘要:您可以通过点击 右下角 的按钮 来对文章内容作出评价, 也可以通过左下方的 关注按钮 来关注我的博客的最新动态。 如果文章内容对您有帮助, 不要忘记点击右下角的 推荐按钮 来支持一下哦 如果您对文章内容有任何疑问, 可以通过评论或发邮件的方式联系我: 501395377@qq.com / lzp501395377@gmail.com如果需要转载,请注明出处,谢谢!!在上一篇随笔里面,我们详细讲解了Linux系统下的软件管理机制,Linux学习之CentOS(二十三)--Linux软件管理之源代码以及RPM软件包管理在Linux系统下通常使用的软件管理机制有源代码的形式、以及RPM(red... 阅读全文
posted @ 2013-05-21 09:25 sidesky 阅读(272) 评论(0) 推荐(0)
linux下epoll如何实现高效处理
摘要:转自:http://blog.chinaunix.net/link.php?url=http://blog.csdn.net%2Frussell_tao%2Farticle%2Fdetails%2F7160071开发高性能网络程序时,windows开发者们言必称iocp,linux开发者们则言必称epoll。大家都明白epoll是一种IO多路复用技术,可以非常高效的处理数以百万计的socket句柄,比起以前的select和poll效率高大发了。我们用起epoll来都感觉挺爽,确实快,那么,它到底为什么可以高速处理这么多并发连接呢?先简单回顾下如何使用C库封装的3个epoll系统调用吧。1 in 阅读全文
posted @ 2013-05-16 23:04 sidesky 阅读(420) 评论(1) 推荐(0)
[转]如何用Cacti获取snmp服务数据
摘要:对于snmp服务可疑从很多软件中有所体现。那么我们今天介绍的则是Cacti的软件。那么现在来对这个软件的一些功能以及操作做一下简单的介绍。Cacti中文版是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。一.测试snmp服务是否正常#snmpwalk-cpublic-v2clocalhost #snmpwalk-v1-cpubliclocalhostIP-MIB::ipAdEntIfIndex IP-MIB::ipAdEntIfIndex.61.xxx.xxx.xxx=INTEGE 阅读全文
posted @ 2013-05-16 22:36 sidesky 阅读(548) 评论(0) 推荐(0)
[转]linux 安装SNMP服务
摘要:在一台原本没有安装snmp的服务器上通过源码方式安装最新版本snmp的过程。1)查原系统是否安装了snmp # rpm –qa | grep snmp2)下载、解压、配置、编译、安装 (到http://www.net-snmp.net/download.html上下载最新的net-snmp版本,目前是5.5。) # cd /usr/local/src # wget http://cdnetworks-kr-2.dl.sourceforge.net/project/net-snmp/net-snmp/5.5/net-snmp-5.5.tar.gz # tar zxvf net-snmp-5.5. 阅读全文
posted @ 2013-05-16 15:32 sidesky 阅读(297) 评论(0) 推荐(0)
centos 安装 rrdtools 失败的解决办法
摘要:checking for glib_check_version in -lglib-2.0... yeschecking glib.h usability... nochecking glib.h presence... nochecking for glib.h... nochecking for pkg-config... (cached) pkg-configchecking for glib_check_version in -lglib-2.0... yeschecking glib.h usability... yeschecking glib.h presence... yesc 阅读全文
posted @ 2013-05-16 13:33 sidesky 阅读(503) 评论(0) 推荐(0)
[转]nginx php-fpm安装配置
摘要:nginx本身不能处理PHP,它只是个web服务器,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端。nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx本文以php-fpm为例介绍如何使nginx支持PHP一、编译安装php-fpm什么是PHP-FPMPHP-FPM是一个PHP FastCGI管理器,是只用于PHP的,可以在 http://php-fpm.org/download下载得到.PHP-FPM其实是PHP源代码的一个补丁,旨在将FastCGI进程管理整合进PHP包中。必须将它patch到你的 阅读全文
posted @ 2013-05-15 18:55 sidesky 阅读(368) 评论(0) 推荐(0)
[转]Linux TCP 连接数修改
摘要:Linux TCP连接数修改一、文件数限制修改(1)vi/etc/security/limits.conf* soft nofile 10240* hard nofile 10240(2) vi/etc/pam.d/loginsession required /lib/security/pam_limits.so二、网络端口限制修改(1) vi /etc/rc.d/rc.local/sbin/modprobe ip_conntrack # 加载 ip_contrack 模块# /sbin/sysctl –p # 使 /etc/sysctl.conf 的配置生效,根据实际情况来决定是否添加此命令 阅读全文
posted @ 2013-05-15 16:43 sidesky 阅读(214) 评论(0) 推荐(0)
tengine 安装
摘要:1.download http://tengine.taobao.org/download/tengine-1.4.6.tar.gz2.修改 /tengine-1.4.6/src/core/nginx.h 将 #define TENGINE_VER"TENGINE/" TENGINE_VERSION 改为 #define TENGINE_VER "YWS" 这里改成你想要在HTTP 头部显示的Server名称3.安装./configure --prefix=/usr/local/nginx安装Nginx时报错./configure: error: the 阅读全文
posted @ 2013-05-15 15:17 sidesky 阅读(383) 评论(0) 推荐(0)
[转] 关于crontab无法执行shell脚本的解决办法
摘要:大家都知道crontab是个好东东,可以定时执行一些任务,帮助你监控系统状况,帮助你每天重复的做一些机械的事情。但是crontab有一个 坏毛病,就是它总是不会缺省的从用户profile文件中读取环境变量参数,经常导致在手工执行某个脚本时是成功的,但是到crontab中试图让它定期 执行时就是会出错原先我用一个很傻的办法,就是在脚本中直接指定所有的环境变量参数,每次写脚本都要写好多好多PATH啦,LD_LIBRARY_PATH之类的环境变量参数后来发现其实可以直接在脚本里先执行一下用户的profile文件,就OK了如果是Linux环境下的脚本,脚本的头上用缺省的#!/bin/sh就可以了,如果 阅读全文
posted @ 2013-05-15 13:05 sidesky 阅读(1313) 评论(0) 推荐(0)
[转]Linux性能监控专题-vmstat命令
摘要:前言vmstat是监控linux服务器性能的重要工具之一,vmstat可以实时监控cpu运行队列和系统关键的性能指标,如磁盘,上下文交换,cpu使用率等。CPU loadCPU队列中等待运行的任务数量+正在运行的任务数量之和等待运行的任务一般是uninterruptible sleep的任务,不可中断的意思是通过kill -9 杀不掉的进程,通常是本地磁盘IO的任务vmstat结果内容的解释Vmstatprocs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ r b swpd free b 阅读全文
posted @ 2013-05-15 12:57 sidesky 阅读(356) 评论(0) 推荐(0)
Linux关键性能指标
摘要:Linux关键性能指标对于优化,定位性能问题非常关键,例如一个系统Nice CPU消耗非常高,要了解什么是Nice CPU消耗才能定位问题,进行相应的优化。处理器性能指标【CPU Utilization】CPU 使用率,这可能是最直接的指标了,它表示每个处理器的整体使用率。在IBM System x 架构中,如果在持续一段时间里CPU 使用率超过80%,就可能预示着CPU 出现了瓶颈。【User Time】用户时间,表示用户进程所花费的CPU 百分比,包括Nice 时间。在用户时间值很高的情况下,表明系统正在执行实际的工作。【System Time】系统时间,表示内核操作所花费的CPU 百分比 阅读全文
posted @ 2013-05-15 11:44 sidesky 阅读(338) 评论(0) 推荐(0)
[转]tcp_tw_recycle和tcp_timestamps导致connect失败问题
摘要:近来线上陆续出现了一些connect失败的问题,经过分析试验,最终确认和proc参数tcp_tw_recycle/tcp_timestamps相关;1. 现象 第一个现象:模块A通过NAT网关访问服务S成功,而模块B通过NAT网关访问服务S经常性出现connect失败,抓包发现:服务S端已经收到了syn包,但没有回复synack;另外,模块A关闭了tcp timestamp,而模块B开启了tcp timestamp; 第二个现象:不同主机上的模块C(开启timestamp),通过NAT网关(1个出口ip)访问同一服务S,主机C1 connect成功,而主机C2 connect失败;2. 分析. 阅读全文
posted @ 2013-05-15 10:54 sidesky 阅读(329) 评论(0) 推荐(0)
[转]关于流量升高导致TIME_WAIT增加,MySQL连接大量失败的问题
摘要:有个应用就是每次都会去查一个接口,接口返回用户的信息数据,从而展现不同的页面效果。大致流程如下应用APP(电信)-> memcache ->电信custom接口 ->master-db应用APP(网通)-> 网通custom接口 -> slave-db接口环境是php(cgi) + nginx,接口已经运行很久,未出过异常应用访问custom接口,然后接口去查数据库(数据库是主从复制,数据同步,各自机房读各自的数据库,写的话都写master-db)有一点,就是电信机房是有memcache层的,而网通机房一直没有(考虑到网通机房流量不高,并且机房cache不同步,从 阅读全文
posted @ 2013-05-14 19:40 sidesky 阅读(1062) 评论(0) 推荐(0)
[转]nginx+php产生大量TIME_WAIT
摘要:一 TIME_WAIT产生原因:1、nginx现有的负载均衡模块实现php fastcgi负载均衡,nginx使用了短连接方式,所以会造成大量处于TIME_WAIT状态的连接。2、TCP/IP设计者本来是这么设计的主要有两个原因(1) 防止上一次连接中的包,迷路后重新出现,影响新连接(经过2MSL,上一次连接中所有的重复包都会消失)(2) 可靠的关闭TCP连接在主动关闭方发送的最后一个 ack(fin) ,有可能丢失,这时被动方会重新发fin, 如果这时主动方处于 CLOSED 状态 ,就会响应 rst 而不是 ack。所以主动方要处于 TIME_WAIT 状态,而不能是 CLOSED 。二 阅读全文
posted @ 2013-05-14 19:27 sidesky 阅读(373) 评论(0) 推荐(0)