LINUX
文章平均质量分 61
ws_zll
这个作者很懒,什么都没留下…
展开
-
查找某个时间段的文件和find命令
查找某个时间段的文件,比如要查找2012年8月30号的邮件 首先创建两个文件 touch -t 201208300000 file1 touch -t 201208302359 file2 然后利用find命令的newer选项查找8月15号的邮件 -newer file1 ! file2 find . -type f -newer ab原创 2012-08-30 20:37:39 · 7981 阅读 · 1 评论 -
php 调用linux命令权限问题解决
centos系统 因为安装了网站截图软件,但php在调用其命令的时候无法执行,php是用的www用户,无法调用root下的权限,找到解决方法:1、设置 sudo 配置文件为可写权限chmod u+w /etc/sudoers2、增加 www 用户的 nginx 脚本管理权限 www ALL=(root) NOPASSWD:/usr/local/CutyCapt/CutyC原创 2012-07-06 11:12:00 · 3836 阅读 · 0 评论 -
恢复删除的文件
恢复删除的文件当Linux计算机受到入侵时,常见的情况是日志文件被删除,以掩盖攻击者的踪迹。管理错误也可能导致意外删除重要的文件,比如在清理旧日志时,意外地删除了数据库的活动事务日志。有时可以通过lsof来恢复这些文件。当进程打开了某个文件时,只要该进程保持打开该文件,即使将其删除,它依然存在于磁盘中。这意味着,进程并不知道文件已经被删除,它仍然可以向打开该文件时提供给它的文件描述转载 2012-06-14 18:06:12 · 606 阅读 · 0 评论 -
PHP,日志分析,排序,二维数组去重,计算重复数据,截取--适合小数据量日志
<?php//[email protected]//打开日志文件,取日志的IP和访问页面信息function logput() { $open=file("test.log"); $i=0; foreach ($open as $value) { $arr=explode(" ", $value); //var_dump($arr);原创 2012-04-28 10:26:28 · 1962 阅读 · 0 评论 -
关于短信接口的处理
$url = 'http://......' 短信接口$time = 3;$date = date('Y-m-d_G:i:s');function curl_url($url,$time){ $ch = curl_init($url); $c_url = $url; curl_setopt($ch, CURLOPT_URL,$c_url); curl_setopt($ch, CUR原创 2012-05-07 10:26:34 · 494 阅读 · 0 评论 -
截取规定时间内的日志
awk '/11:06:[0-9][0-9]/,/11:07:[0-9][0-9]/{print}' my.logsed -n "/11:06:[0-9][0-9]/,/11:07:[0-9][0-9]/p" my.log原创 2012-04-28 11:33:28 · 928 阅读 · 1 评论 -
数组字符集转换
$menus = $this->auto_charset($menus);//调用函数function auto_charset($fContents, $from='utf-8', $to='gb2312') { $from = strtoupper($from) == 'UTF8' ? 'utf-8' : $from; $to转载 2012-05-10 11:43:21 · 546 阅读 · 0 评论 -
php 邮件接收代码,接收邮件处理主题和内容
<?php$server = "{bjmail.*.com/pop3}"; //邮件服务器$mailbox = "inbox"; //收件箱$mailaccount="zhao**";//用户名$mailpasswd=" "; //密码$stream = @imap_open($server.$mailbox,$mailaccount,$mailpasswd);//打开IMAP 连结原创 2012-05-04 15:31:33 · 7610 阅读 · 0 评论 -
Mysql复制表结构、表数据
1、复制表结构及数据到新表CREATE TABLE 新表SELECT * FROM 旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用delete from newtable;来删除。不过这种方法的一个最不好的地方就是新表中没有了旧表的primary key、Extra(auto_increment)等属性。需要自己用"alter"添加,而且容易转载 2012-05-11 11:28:23 · 369 阅读 · 0 评论 -
nginx文件类型错误解析漏洞
问题简介:nginx是一款高性能的web服务器,使用非常广泛,其不仅经常被用作反向代理,也可以非常好的支持PHP的运行。nginx默认以cgi的方式支持php的运行,而为了较好的支持PATH_INFO的提取,在PHP的配置选项里存在cgi.fix_pathinfo选项,其目的是为了从SCRIPT_FILENAME里取出真正的脚本名,而攻击者则利用这点可以将任何类型的文件以PHP的方式进行解析。原创 2012-05-10 10:32:45 · 2848 阅读 · 0 评论 -
文件或目录访问记录
inotifywait 收集有关文件访问信息,可自行安装 inotify-tools,有的linux内核需要编译才可使用,新发行的内核默认启用#!/bin/bash#监控并记录指定目录下增,删,改,打开,关闭,移动....的文件或目录path=$1#可写成变量或直接写要监控的目录1,inotifywait -m -r -e create,move,delete $path -原创 2012-06-28 10:35:48 · 1529 阅读 · 0 评论 -
安装简单SMTP_sendmail发送邮件
安装简单sendmail发送邮件 1,安装yum install -y sendmail* rpm -aq | grep sendmailsendmail-doc-8.13.8-2.el5sendmail-cf-8.13.8-2.el5sendmail-devel-8.13.8-2.el5sendmail-8.13.8-2.el5 2,更改配置cd /etc/mailvi原创 2012-06-29 11:15:59 · 40434 阅读 · 0 评论 -
安装网站截图软件CutyCapt
安装网站截图软件CutyCapt 一,先安装Qt47增加qt47的下载源vi /etc/yum.repos.d/atrpms.repo[atrpms]name=CentOS $releasever – $basearch – ATrpmsbaseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stablegpgk原创 2012-06-27 16:28:29 · 3650 阅读 · 2 评论 -
mysql 清除binlog日志
查看当前日志保存天数:show variables like '%expire_logs_days%';这个默认是0,也就是logs不过期,可通过设置全局的参数,使他临时生效:set global expire_logs_days=7;设置了只保留7天BINLOG, 下次重启mysql这个参数默认会失败,所以需在my.cnf中设置expire_logs_days = 7手动原创 2013-01-09 16:26:26 · 1048 阅读 · 0 评论 -
nginx ssl 107 (net::ERR_SSL_PROTOCOL_ERROR) 无法与服务器建立安全连接 解决方法
今天访问测试代码火狐浏览器访问 https://www.abc.com 出现一个很怪异的问题,报错:ssl 107 (net::ERR_SSL_PROTOCOL_ERROR) 刚开始以为是ssl失效了,重新安装了一遍安装过程:第一步# openssl genrsa -des3 -out server1.key 1024Generating RSA private key,原创 2013-01-09 16:22:11 · 101080 阅读 · 5 评论 -
shell日志分析--支持分析日志访问路径,统计访问IP,IPTABLES解与封
#!/bin/bash#特性:#1,可分析多个网站项目日志#2,每个网站项目日志可根据关键字进行统计分析#3,可调整访问IP次数的阀值(超过多少次加入到墙)#4,可调整IP封的时间#5,可在定时任务修改分析日志的时间间隔#6,防火墙在封的时候进行了去重,不会封同样的IP#-----zhaoll@##########################################原创 2012-04-28 15:46:15 · 3598 阅读 · 0 评论 -
清理过期N天前的文件
#!/bin/bash#清理过期N天前的文件,此脚本针对现场环境而定,大体思路可以模仿#文件路径path=/data0/*/*cd $path#当前时间戳nowstamp=`date +%s`#阀值,设置删触几天前的文件stat=$((60*60*24*7))#echo "7天的秒数:$stat" #查找几天前的文件,删除for i in `ls -tr | grep原创 2012-06-29 10:39:10 · 2515 阅读 · 1 评论 -
数据库丛库采购和性能分析
HP 380G7(两台) 配置:CPU :Intel Xeon X5660 (2.80GHz/6-core/12MB/95W, DDR3-1333, QPI 6.4GT/S ) Processor 内存:12(根)*8G(每根内存容量)硬盘:4(块)*300G电源:双电(750W)RAID: 智能阵列 RAID 控制器、便携式电池支持的高速缓存写入 我们的评测结果:原创 2012-08-30 20:43:28 · 731 阅读 · 0 评论 -
服务器内存与CPU的搭配
【FSB带宽】FSB带宽 =FSB x 64/8 FSB:前端总线速率,单位MHz64:数据通道一次通过的数据量为64bit8:8bit=1byte64/8:将bit单位转为byte单位***备注***FSB是过去的技术,现在高端的CPU采用新型的QPI比如E8400的FSB是1333MHz,那么它的带宽是1333MHz x 64bit/8 =10.664转载 2012-08-30 21:06:09 · 6547 阅读 · 0 评论 -
HP 不同业务不同服务器配置比较和性能分析
HP 380G7(一台) (此服务器用于流量分析系统部署和入侵检测系统部署)配置:CPU :Intel Xeon X5660 (2.80GHz/6-core/12MB/95W, DDR3-1333, QPI 6.4GT/S ) Processor 内存:6(根)*8G(每根内存容量)硬盘:3(块)*300GRAID: 智能阵列 RAID 控制器、便携式电池支持的高速缓存写入原创 2012-08-30 20:45:34 · 1122 阅读 · 0 评论 -
数据库无法创建触发器,无法识别到mysql的一些函数--解决过程
如果让TCSQL从MySQL同步数据需要编译安装三个MySQL UDF函数扩展json、urlencode、http_post查看数据库,Show create function json_object,发现此函数不存在,说明函数扩展没有安装一,安装:wget http://mirrors.xoyo.com/xoyo/tcsql/mysql_to_tcsql_udf.tar.g原创 2012-05-10 10:39:01 · 2523 阅读 · 0 评论 -
网站访问慢,服务器负载高-系列查找问题方法
如果以后出现报警各网站无法ping通,或者服务器负载过高,可通过以下几条途径查找原因:1,查看访问日志,查看是否有访问异常,如有,过滤IP,进行IP封装 cat my.xoyo.com | awk ‘{print $1}’ | sort | uniq –c | sort –n >/tmp/ip.txt netstat -ntu | awk '{print $5}' | cut原创 2012-05-10 10:36:40 · 4801 阅读 · 0 评论 -
Linux:shell中的管道命令
Linux:shell中的管道命令利用输入/输出重定向 在Linux命令行模式中,如果命令所需的输出不是来自键盘,而是来自指定的文件,这就是输入重定向。同理,命令的输出也可以不显示在屏幕上,而是写入到指定文件中,这就是输出重定向。 接下来看看标准输入/输出重定向在构造一条Linux命令中的实际应用。 1.输入重定向和输出重定向 # wc home转载 2012-04-26 17:46:05 · 5753 阅读 · 0 评论 -
shell字符串的截取二
shell字符串的截取的问题:一、Linux shell 截取字符变量的前8位,有方法如下:1.expr substr “$a” 1 82.echo $a|awk ‘{print substr(,1,8)}’3.echo $a|cut -c1-84.echo $5.expr $a : ‘\(.\\).*’6.echo $a|dd bs=1 count=8 2>/dev/转载 2012-04-26 17:45:37 · 677 阅读 · 0 评论 -
VIM 操作大全
VIM 操作大全tabnew , switch :gt:new-> open a new window, ctrl+w switch window, 命令模式ls后"b num":vnew->横向:e filename回到刚才编辑的点 "反引号+." mksession 保存会话, 下次直接vim后就打开上次会话打开的文件设置标记行, 直接m+字母转载 2012-04-26 17:45:02 · 732 阅读 · 0 评论 -
shell脚本条件判断
shell脚本条件判断UNIX Shell 编程中条件判断是极为重要的,以下是常用的条件判断:-b file 若文件存在且是一个块特殊文件,则为真-c file 若文件存在且是一个字符特殊文件,则为真-d file 若文件存在且是一个目录,则为真-e file 若文件存在,则为真-f file 若文件存在且是一个规则文件,则为真-g file 若文件存在且设置了SG转载 2012-04-26 17:44:18 · 4381 阅读 · 0 评论 -
Linux Shell脚本的字符串截取
Linux Shell脚本的字符串截取假设有变量 var=http://www.linuxidc.com/test.htm一 # 号截取,删除左边字符,保留右边字符。echo ${var#*//}其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.linuxidc.com/test转载 2012-04-26 17:42:50 · 4620 阅读 · 2 评论 -
linux中用shell获取昨天、明天或多天前的日期
linux中用shell获取昨天、明天或多天前的日期:在Linux中对man date -d 参数说的比较模糊,以下举例进一步说明:# -d, --date=STRING display time described by STRING, not `now’[root@Gman root]# date -d next-day +%Y%m%d #明天日期20091024[转载 2012-04-26 17:42:04 · 983 阅读 · 0 评论 -
linux中shell变量$#,$@,$0,$1,$2的含义解释
linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出转载 2012-04-26 17:41:25 · 818 阅读 · 0 评论 -
Starting php_fpm PHP: Errorparsing /usr/local/php/etc/php.ini问题解决
Starting php_fpm PHP: Errorparsing /usr/local/php/etc/php.ini on line 713ul 10 01:44:20.664650 [ERROR]fpm_unix_conf_wp(), line 124: please specify user and group other than root,pool 'default'解决方法:原创 2012-04-25 08:25:01 · 1407 阅读 · 0 评论 -
系统空间异常占满100%,能删除的均已删除,却找不到占用的文件
系统空间异常占满100%,能删除的均已删除,却找不到占用的文件lsof -n |grep delete罪魁祸首就是nginx的日志 有的情况清理日志是rm -rf 日志名这种方式清理的吧算是系统的bug吧 这么清理 有时候你看着日志清除了 但实际还缓存在磁盘上 数据没清理掉直接重启一次nginx进程就好了,或者每次清理日志的时候>日志名就可以了.也就是说由于nginx进程一直原创 2012-04-25 08:23:27 · 1159 阅读 · 0 评论 -
awk 使用小例
【基础】$0 表示整个当前行$1 表示第一个字段-F 指定分隔符$ awk -F":" '{ print $1 " " $3 }' /etc/passwd 【BEGIN 和 END 块】BEGIN块:awk 在开始处理输入文件之前会执行 BEGIN 块,因此它是初始化 FS(字段分隔符)变量、打印页眉或初始化其它在程序中以后会引用的全局变量的极佳位置END块: aw转载 2012-04-26 17:47:18 · 515 阅读 · 0 评论 -
安装jdk
#vi /etc/profile在最后面加入 #set java environmentexport JAVA_HOME=/usr/java/jdk-1_5_0_02export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/mysql-connector原创 2012-04-26 17:53:47 · 421 阅读 · 0 评论 -
Linux curl使用简单介绍
Linux curl使用简单介绍Curl是Linux下一个很强大的http命令行工具,其功能十分强大。1) 二话不说,先从这里开始吧!$ curl http://www.linuxidc.com回车之后,www.linuxidc.com 的html就稀里哗啦地显示在屏幕上了 ~2) 嗯,要想把读过来页面存下来,是不是要这样呢?$ curl ht转载 2012-05-07 11:17:22 · 403 阅读 · 0 评论 -
memcache linux 下的使用
近来一直对memcache的telnet使用方法有些苦恼,不明白其中的一些参数代表什么意思,查询很多资料,终于搞明白了一些,另外还学习了PHP遍历memcache的方法,但由于我们很多服务器都加载cookie的加密扩展,很多的键值都是MD5加密,不过对于没有加密的服务器还是有些用处的。总结如下:一,telnet请求命令格式 \r\n \r\n1, 可以是”set”, “a原创 2012-04-23 17:43:38 · 3070 阅读 · 0 评论 -
memcache linux下的使用(二)
1、数据存储(假设key为zhangyan,value为12345)printf "set zhangzha 0 0 5\r\n12345\r\n" | nc 127.0.0.1 11211 STORED 2、数据取回(假设key为zhangyan)printf "get zhangzha\r\n" | nc 127.0.0.1 11211 VALUE zhangyan原创 2012-04-23 17:45:45 · 482 阅读 · 0 评论 -
处理xml格式接口
$date = date('Y-m-d_G:i:s'); $number=array(); $command = "curl -d \"原创 2012-05-07 10:23:29 · 693 阅读 · 0 评论 -
SVN 架设
cd /data0/software/tar zxvf subversion-1.7.2.tar.gz cd subversion-1.7.2yum install apr*ldconfig wget http://www.sqlite.org/sqlite-amalgamation-3071000.zipunzip sqlite-amalgamation-307原创 2012-04-26 17:56:43 · 392 阅读 · 0 评论 -
重新编译一下php的zip模块
1、在Linux下没有php_zip.dll这个文件(有也不会起作用的),所以需要重新编译一下php的zip模块。具体安装方法如下:wget http://pecl.php.net/get/zip-1.10.2.tgzsudo tar -zxvf zip-1.10.2.tgz -C /opt/cd /opt/zip-1.x.xsudo phpizesudo ./conf原创 2012-04-26 17:52:04 · 4536 阅读 · 0 评论 -
sshd dead but subsys locked问题解决
sshd dead but subsys lockedsshd无法重新启动,22端口无法启动,原因可能是SSH的端口绑定了之前的IP,解决如下vim /etc/ssh/sshd_config将监听的IP地址注释就可以了,如果想改变端口也可以在此更改。然后在重新启动SSHD可以了service sshd restart原创 2012-04-26 17:50:06 · 5391 阅读 · 0 评论