July 22, 2011
使用sed处理php-fpm.conf和nginx.conf文本里的注释信息
"默认系统环境安装教程: http://blog.haohtml.com/archives/6051\nphp-fpm.conf:\n想自己搞一个自动修改php-fpm.conf的shell脚本.刚安装的php,默认的是nobody用户运行的,这里修改为了www,并去掉了两边的注释符\nsed ‘63,66s/|–\u0026gt;//g’ php-fpm.conf | sed ‘s/nobody/www/g’\n上面将”“和”–\u0026gt;“两个字符串全部删除了.多个之间用”|“符号隔开\ns前面的63,66为处理的行号,如果为一行的话,直接指定一个行号就可以了.这里使用了从63行到66行中间的数据,包括这两行.\nnginx.conf\n下面的命令是用来配置nginx.conf文件的\nsed \u0026#39;2s/nobody/www/\u0026#39; /usr/local/nginx/conf/nginx.conf.default | sed \u0026#39;2s/#//g\u0026#39;| sed \u0026#39;64,71s/#//g\u0026#39; | sed …"
July 22, 2011
用shell和php脚本实现定时检测服务器情况
"实现原理,利用 cron来定时执行一个shell脚本,如果发现服务器不通或者上次故障后恢复正常,则发送邮件.否则不用发送邮件. 目前此Shell在FreeBSD和Linux下均可以正常运行.\nping.sh\n#!/bin/bash if [ $# -ne 1 ] then echo \u0026#39;must have one param,must be ip address format!\u0026#39; exit fi ip=$1 tmpfile=/tmp/$ip.txt if [ -f $tmpfile ]; then lastmsg=`cat $tmpfile` else lastmsg=\u0026#39;YES\u0026#39; fi ret=`ping -c 3 $ip | grep ttl | wc -l` if [ $ret -lt 2 ]; then echo \u0026#39;NO\u0026#39; \u0026gt; $tmpfile /usr/local/bin/php /data/haohtml.com/www/ping.php $ip \u0026gt; /dev/null 2\u0026gt;\u0026amp;1 elif [ …"
July 21, 2011
Cannot access the Hardware Clock via any known method.的解决办法
"今天在服务器上修改时间的进修,发现用date -s 21:45:12不起作用,提示"\nCannot access the Hardware Clock via any known method. Use the --debug option to see the details of our search for an access method. "错误,后来google了一下,有人说在64位平台的原因,说是一个bug的.\n在执行clock -w 和hwclock命令的时候,总提示错误信息.这里介绍一种方法:\n#tzselect\n然后选择”5) Asia”,回车,选择国家" 9) China"回车,在选择的地区里选择"1) east China – Beijing, Guangdong, Shanghai, etc.",最后选择"1) Yes"对上面的设置进行确认即可.会提示以下信息,这时时间已经正常了.为了长久有效,可以添加到.profile文件里,我是添加到/etc/profile文件里了,不知道对否的.反正时间是过来了.\nYou can make this change …"
July 21, 2011
一个简单的ping检测服务器状态的shell脚本
"这个脚本特别的简单的,一次只能检测一个ip地址,可以放在crontab里定时检测.可以用来检测服务器状态情况.特别的实用的,如果有多个ip地址的话,可能必定一下,循环一下就可以了.\n只有当不通或者宕机后恢复正常的时候才发送指定消息.\n#!/bin/bash if [ $# -ne 1 ] then echo \u0026#39;must have one params ip address format!\u0026#39; exit fi ip=$1 tmpfile=$ip.txt if [ -f $tmpfile ]; then lastmsg=`cat $tmpfile` else lastmsg=\u0026#39;YES\u0026#39; fi ret=`ping -c 3 $ip | grep ttl | wc -l` if [ $ret -lt 2 ]; then echo \u0026#39;NO\u0026#39; \u0026gt; $tmpfile echo \u0026#39;send waring message!\u0026#39; //这里可以执行php脚本,用来 发送邮件信息 elif [ $lastmsg = \u0026#39;NO\u0026#39; …"
July 21, 2011
linux中的shell重定向
"下面的shell 可不可以详细解释一下呀? (ls you no 2\u0026gt;\u0026amp;1;ls yes 2\u0026gt;\u0026amp;1) 2\u0026gt;\u0026amp;1|egrep * \u0026gt;file (ls you no 2\u0026gt;\u0026amp;1;ls yes 2\u0026gt;\u0026amp;1)|egrep * \u0026gt;file (ls you no;ls yes) 2\u0026gt;\u0026amp;1|egrep * \u0026gt;file\n2\u0026gt;\u0026amp;1又是什么意思呀?? 在 shell中 \u0026gt;代表输出重定向\n0表示标准输入 1表示标准输出(默认值) 2表示标准错误输出 2\u0026gt;\u0026amp;1意思是:把 标准错误输出 重定向到 标准输出. ls xxx \u0026gt;out.txt 2\u0026gt;\u0026amp;1, 实际上可换成 ls xxx 1\u0026gt;out.txt 2\u0026gt;\u0026amp;1;重定向符号\u0026gt;默认是1,错误和输出都传到out.txt了。\n|:是管道,例子: cmd1 | cmd2 意思是:命令cmd1的标准输出座位cmd2的标准输入.\n详细解释第三个命令行,(ls you no;ls yes) …"
July 20, 2011
linux中tail命令详解
"linux中tail命令—用于查看文件内容\n最基本的是cat、more和less。 1. 如果你只想看文件的前5行,可以使用head命令,如:\nhead -5 /etc/passwd\n如果你想查看文件的后10行,可以使用tail命令,如: tail -2 /etc/passwd 或 tail -n 2 /etc/passwd tail -f /var/log/messages\n参数-f使tail不停地去读最新的内容,这样有实时监视的效果 用Ctrl+c来终止! 3. 查看文件中间一段,你可以使用sed命令,如:\nsed -n ‘5,10p’ /etc/passwd\n这样你就可以只查看文件的第5行到第10行。\ntail语法格式: tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ] 或者 tail [ -r ] [ -n Number ] [ File ] 使用说明: tail 命令从指定点开始将 File 参数指定的文件写到标准输出。如果没有指定文件,则会使用标准输入。 …"
July 19, 2011
Linux的bg和fg命令
"我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而 Linux 提供了 fg 和 bg 命令,让我们轻松调度正在运行的任务。\n假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,挂起这个程序,然后可以看到系统提示(方括号中的是作业号):\n[1]+ Stopped /root/bin/rsync.sh\n然后我们可以把程序调度到后台执行:(bg 后面的数字为作业号)\n#bg 1 [1]+ /root/bin/rsync.sh \u0026amp;\n用 jobs 命令查看正在运行的任务:\n#jobs [1]+ Running /root/bin/rsync.sh \u0026amp;\n如果想把它调回到前台运行,可以用\n#fg 1 /root/bin/rsync.sh\n这样,你在控制台上就只能等待这个任务完成了。\nfg、bg、jobs、\u0026amp;、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的.\n一。\u0026amp; 最经常被用到 这个用在一个命令 …"
July 19, 2011
linux/unix中的nohup命令
"Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 \u0026amp; 在程序结尾来让程序自动运行。比如我们要运行mysql在后台:\n/usr/local/mysql/bin/mysqld_safe –user=mysql \u0026amp;\n但是加入我们很多程序并不象mysqld一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用 \u0026amp;\n结尾,但是如果终端关闭,那么程序也会被关闭。但是为了能够后台运行,那么我们就可以使用nohup这个命令,比如我们有个test.php需要在后台运行,并且希望在后台能够定期运行,那么就使用nohup:\nnohup /root/test.php \u0026amp;\n提示:\n[~]$ appending output to nohup.out\n嗯,证明运行成功,同时把程序运行的输出信息放到当前目录的 nohup.out 文件中去。\nnohup 命令\n用途:LINUX命令用法,不挂断地运行命令。\n语法:nohup Command [ Arg … ] [ \u0026amp; ]\n描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指 …"
July 19, 2011
CentOS下安装lighttpd
"在向大家详细介绍CentOS lighttpd安装之前,首先让大家了解下CentOS系统作用,然后全面介绍CentOS lighttpd安装,CentOS社区不断与其他的同类社区合并,使CentOS Linux逐渐成为使用最广泛的RHEL兼容版本。CentOS Linux的稳定性不比RHEL差,唯一不足的就是缺乏技术支持,因为它是由社区发布的免费版。希望对大家有用。\nCentOS lighttpd安装\nwget http://www.lighttpd.net/download/lighttpd-1.4.19.tar.gz tar zxvf lighttpd* cd lightt* ./configure –prefix=/usr/local/lighttpd –with-pcre\nCentOS lighttpd安装这时候说缺少pcre-devel\nyum install pcre-devel ./configure –with-pcre make make install\n在ubuntu下用apt-get install lighttpd来安装,方便了很多,CentOS …"
July 15, 2011
Please provide a path to MagickWand-config or Wand-config program的解决办法
"今天在安装lnmp的时候,发现在安装imagick-3.0.1.tgz时,执行\n./configure --with-php-config=/usr/local/php/bin/php-config 的时候,提示以下错误: checking for PHP includes… -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext checking for PHP extension directory… /usr/lib64/php/modules checking for PHP installed headers prefix… /usr/include/php checking for re2c… no configure: WARNING: You will need re2c 0.9.11 or later if you want to regenerate PHP parsers. checking …"