环境:CentOS 5.3 x86_64下,/dev/sdb1为数据分区/data0,EXT3文件系统。
  前因:误删了/data0/tcsql/cankao/phpcws-1.5.0/httpcws.cpp文件。由于忘了备份httpcws.cpp文件,重新开发工作量较大,因此只有恢复该文件一条路可走。

  debugfs命令针对EXT2分区还行,但对EXT3分区就帮不上忙了。偶然发现的一款开源软件,解决了我的大忙。该软件下载网址为:
http://code.google.com/p/ext3grep/

本日志由 flyinweb 于 2009-07-06 20:18:51 发表到 Linux 中,目前已经被浏览 4732 次,评论 0 次;

作者添加了以下标签: LinuxEXT3文件删除恢复

首页只显示了部分日志内容,要查看日志的全部内容请阅读全文

  1. #!/bin/bash    
  2. #  
  3. # 监控内存使用状态 以便做出响应,可以添加到/etc/rc.local中作为守护进程脚本运行    
  4. #  
  5. # free#              total       used       free     shared    buffers     cached  
  6. # Mem:       2074716     702972    1371744          0     123612     478028  
  7. # -/+ buffers/cache:     101332    1973384  
  8. # Swap:      4088532          0    4088532   
  9. #  
  10. MINRATIO="0.05" 
  11. #while true  
  12. while :  
  13. do  
  14.     MemTotal=`free|grep "Mem"|awk '{ print $2 }'`  
  15.     MemFree=`free|grep "Mem"|awk '{ print $4 }'`  
  16.     Result=`echo | awk '{ print "'$MemFree'" / "'$MemTotal'" }'`  
  17.     RetVal=`awk 'BEGIN { print ("'$Result'" < "'$MINRATIO'"); }'`  
  18.  
  19.     if [ ${RetVal} -eq 1 ]; then  
  20.     #    echo "Restart Apache"  
  21.         /usr/local/apache/bin/apachectl restart  
  22.     fi  
  23.     sleep 60  
  24. done 

注意:awk中变量的使用
一:"'$var'"
这种写法大家无需改变用'括起awk程序的习惯,是老外常用的写法.如:

  1. var="test"  
  2. awk 'BEGIN{print "'$var'"}' 

这种写法其实际是双括号变为单括号的常量,传递给了awk.
如果var中含空格,为了shell不把空格作为分格符,便应该如下使用:

  1. var="this is a test"  
  2. awk 'BEGIN{print "'"$var"'"}' 


二:'"$var"'
这种写法与上一种类似.如果变量含空格,则变为'""$var""'较为可靠.
三.把括起awk程序的''变为"",使用"$var"
如:

  1. $var="this is a test"  
  2. awk 'BEGIN{print "$var"}"  


这是因为在""里$是特殊字符,而在''里$是普通字符.
四:export 变量,使用ENVIRON["var"]形式,
如:

  1. $var="this is a test";export $var  
  2. awk 'BEGIN{print ENVIRON["var"]}'  


五:当然也可以使用-v选项
如:

  1. $var="this is a test" 
  2. awk -vnvar="$var" '{print nvar}' 


这样便把系统变量定义成了awk变量.

本日志由 flyinweb 于 2009-07-05 20:04:20 发表到 Linux 中,目前已经被浏览 4236 次,评论 0 次;

作者添加了以下标签: LINUX内存监控

方法一:配置SSH工具
SecureCRT中文版配置
[全局选项]→[默认会话]→[编辑默认设置]→[终端]→[外观]→[字体]→[新宋体 10pt CHINESE_GB2312]→[字符编码 UTF-8]

putty配置
[window]→[Appearance]→[Font settings]→[Change]→[Fixedsys CHINESE_GB2312]
[window]→[Appearance]→[Translation]→[Received data assumed to be in which character set]→[Use font encoding UTF-8]
如果经常使用,把这些设置保存在session里面。
打开putty,登录成功后,在shell中输入:export LC_ALL='zh_CN.utf8'

方法二:配置系统

console终端乱码
  在/etc/profile(或~/.bash_profile)文件的最后一行添加如下内容:

  1. export LC_ALL="zh_CN.GB18030" 


xwindow终端乱码
  在/etc/sysconfig/i18n文件的最后一行添加如下内容:  

  1. export LC_ALL="zh_CN.GB18030" 

vi /etc/sysconfig/i18n
  将内容改为

  1.   LANG="zh_CN.GB18030"  
  2.   LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"  
  3.   SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"  
  4.   SYSFONT="lat0-sun16" 


  之后重启机器,这样中文在SSH,telnet终端就可以正常显示了。

操作系统语言是英文,显示中文字符
编辑/etc/sysconfig/i18n,修改为如下内容:

  1. LANG="en_US"  
  2. SUPPORTED="en_US.UTF-8:en_US:en"  
  3. SYSFONT="latarcyrheb-sun16"  

本日志由 flyinweb 于 2009-07-05 09:11:38 发表到 Linux 中,目前已经被浏览 4419 次,评论 0 次;

作者添加了以下标签: linux终端乱码

  ServMon的原理是用shell脚本定时抓取被监控Linux服务器上的信息,再用curl POST到监控机的PHP接口程序上,由PHP接口程序对信息进行分析,如果存在异常,则发送报警邮件给管理员。报警邮件演示页面请见:http://blog.s135.com/read.php/276.htm

点击在新窗口中浏览此图片

本日志由 flyinweb 于 2009-07-04 09:32:30 发表到 Linux 中,目前已经被浏览 4234 次,评论 0 次;

作者添加了以下标签: Linux监控

首页只显示了部分日志内容,要查看日志的全部内容请阅读全文

  在生产应用中,某台“Nginx+PHP+MySQL”接口数据服务器,扮演的角色十分重要,如果服务器硬件或Nginx、MySQL发生故障,而短时间内无法恢复,后果将非常严重。为了避免单点故障,我设计了此套方案,编写了failover.sh脚本,实现了双机互备、全自动切换,故障转移时间只需几十秒。

本日志由 flyinweb 于 2009-07-04 08:11:13 发表到 Linux 中,目前已经被浏览 3911 次,评论 0 次;

作者添加了以下标签: LinuxNginxPHPMySQL架构

首页只显示了部分日志内容,要查看日志的全部内容请阅读全文


  前言:本文是我撰写的关于搭建“Nginx + PHP(FastCGI)”Web服务器的第5篇文章。本系列文章作为国内最早详细介绍 Nginx + PHP 安装、配置、使用的资料之一,为推动 Nginx 在国内的发展产生了积极的作用。这是一篇关于Nginx 0.7.x系列版本的文章,安装、配置方式与第4篇文章相差不大,但增加了MySQL安装配置的信息、PHP 5.2.10 的 php-fpm 补丁。Nginx 0.7.x系列版本虽然为开发版,但在很多大型网站的生产环境中已经使用。

本日志由 flyinweb 于 2009-07-04 07:28:55 发表到 Linux 中,目前已经被浏览 4594 次,评论 0 次;

作者添加了以下标签: linux性能调优NginxPHP

首页只显示了部分日志内容,要查看日志的全部内容请阅读全文

LAMP 系统性能调优,第 1 部分: 理解 LAMP 架构
LAMP 系统的工作原理、性能度量方法及底层操作系统的调优方法

LAMP 系统性能调优,第 2 部分: 优化 Apache 和 PHP
是什么降低了 Apache 的速度,如何使 PHP 发挥最大效力

LAMP 系统性能调优,第 3 部分: MySQL 服务器调优
利用服务器的几个调优技巧,让 MySQL 服务器飞速运行

本日志由 flyinweb 于 2009-07-02 08:59:33 发表到 Linux 中,目前已经被浏览 4356 次,评论 0 次;

作者添加了以下标签: Linuxapachemysqlphp性能调优LAMP

首页只显示了部分日志内容,要查看日志的全部内容请阅读全文

前言
在使用了许多不同的Linux发行版后,我发现自己从来没有对其中的哪一个完全满意。我不喜欢启动脚本的安排,不喜欢某些程序的缺省配置。更多类似这样的事困扰着我。最后,我意识到要使自己完全满意,就必须从源码开始编译我自己的系统。我不打算用任何预先编译好的包,也不用那些能安装一些基本工具的光盘和启动软盘。我将用现在使用的Linux来开发我自己的系统。

这个大胆的想法看起来很困难,甚至是不可能的任务。在处理好各种问题(如依赖性、编译错误等)后,一个定制编译的Linux系统是可以实现并且有实用价值的。 我把这个系统叫做Linux From Scratch系统,或简称为 LFS。

我希望你在自己的LFS上工作时能玩得高兴!


-- 
Gerard Beekmans
gerard@linuxfromscratch.org

译注:Linux From Scratch 应该怎么翻译呢?这一直是一个困扰我们的问题. 叫"LINUX一把抓"?很多英文翻译不好, 到了中文就觉得很别扭了. 看来保持原样应该是一个比较明智的选择. 同时有些把握不好怎么翻译的词也会保持原样. 我们水平有限, 如果文档里面有什么疏漏, 希望您能够指出, 我们会尽快更正. 好了我不多废话了, 我知道前言是没人看的.

Linux From Scratch: 版本 CVS-20040109

本日志由 flyinweb 于 2009-06-18 19:41:51 发表到 Linux 中,目前已经被浏览 4160 次,评论 0 次;

作者添加了以下标签: Linux

182/3