存档

‘Linux’ 分类的存档

创建PHP守护进程后台运行,监控状态退出自动重启

2016年10月6日 没有评论

经常用到PHP脚本写的小程序需要在服务器端保持后台运行,除了使用screen等工具外,这里介绍使用Linux shell编写一个小工具实现PHP脚本程序在后台保持运行,不受终端退出影响,且能自动监测脚本运行状态,对因其他因素导致程序退出的情况自动进行脚本重启,实现守护运行. 阅读全文…

分类: Linux, PHP 标签: ,

Apache并发控制参数监控与MPM配置调优

2012年3月17日 没有评论

在支持POSIX线程的Unix系统上,Apache可以通过不同的MPM(Multi -Processing Modules,多道处理模块)运行在一种多进程与多线程相混合的模式下,增强部分配置的可扩充性能。

毫不夸张地说,MPM的引入是Apache 2.0最重要的变化。大家知道,Apache是基于模块化的设计,而Apache 2.0更扩展了模块化设计到Web服务器的最基本功能。服务器装载了一种多道处理模块,负责绑定本机网络端口、接受请求,并调度子进程来处理请求。扩展模块化设计有两个重要好处:

  • Apache可以更简洁、有效地支持多种操作系统;
  • 服务器可以按站点的特殊需要进行自定制。

在用户级,MPM看起来和其它Apache模块非常类似。主要区别是在任意时刻只能有一种MPM被装载到服务器中 阅读全文…

分类: Linux, 架构 标签: ,

Linux时间同步:ntpd、ntpdate

2012年2月14日 没有评论

ntpd VS ntpdate

两者有个比较实质性的差异是,ntpd在实际同步时间时是一点点的校准过来时间的,最终把时间慢慢的校正对。而ntpdate不会考虑其他程序是否会阵痛,直接调整时间.一个是校准,一个是调整。另外ntpd 在和时间服务器的同步过程中,会把 BIOS 计时器的振荡频率偏差——或者说 Local Clock 的自然漂移(drift)——记录下来。这样即使网络有问题,本机仍然能维持一个相当精确的走时。 阅读全文…

分类: Linux 标签: , ,

MySQL备份工具:Percona Xtrabackup

2012年1月15日 没有评论

Percona Xtrabackup 是一个开源的MySQL热备份工具,采用GPL开源协议,支持InnoDB、XtraDB引擎在线热备份、Non-blockingd备份,流式备份,压缩备份,增量备份等特性,是商业备份工具InnoDB HotBackup的一个很好的替代品。目前Percona Xtrabackup支持InnoDB、XtraDB和MyISAM,原生MySQL以及Percona Server上的XtraDB,可运行在Linux和FreeBSD上,Windows平台目前处于测试阶段。
阅读全文…

分类: Linux, MySQL 标签: , , ,

Nginx 配置安装 Perl 支持

2012年1月14日 没有评论

本文安装环境为CentOS5.4,Nginx1.0.11

Perl以FastCGI模式安装,需要首先安装以下2个软件(CentOS自带Perl支持不做考虑)

  1. FCGI
    [code]
    #wget http://search.cpan.org/CPAN/authors/id/F/FL/FLORA/FCGI-0.74.tar.gz
    #tar xzvf FCGI-0.74.tar.gz
    #cd FCGI-0.74
    #perl Makefile.PL
    #make
    #make install
    [/code]

阅读全文…

分类: Linux 标签: ,

YUM安装Nginx并编译安装PHP5.3.8 with PHP-FPM

2012年1月7日 没有评论

一、Nginx安装

安装Nginx可以采用YUM方法,Nginx官方提供的源可以保证安装最新版本的稳定程序

vim /etc/yum.repos.d/CentOS-Base.repo 添加以下YUM源信息

[nginx]

name=nginx repo

baseurl=http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck=0

enabled=1

更新YUM缓存

yum makecache

安装Nginx

yum install nginx

控制Nginx运行:

通过YUM安装完毕Nginx后可以使用service命令管理,目前支持以下参数

service nginx {start|stop|restart|condrestart|try-restart|force-reload|upgrade|reload|status|help|configtest} 阅读全文…

分类: Linux, PHP 标签:

YUM参数详细介绍

2012年1月5日 没有评论

因为是程序员出身,平时虽然经常接触服务器,偶尔也会要装一些软件、配置优化什么的,可能还是个人习惯问题,一般情况下我还是以手工编译居多(这其中的优缺点就不在这里啰嗦了)。这几天有同事提出YUM其实更便于日常管理维护,确实,相对于手工编译,服务器多的时候YUM确实要方便不少。今天整理了一下YUM相关的背景知识,东西还不够详细,后续会逐步完善。

YUM简单介绍

YUM,是Yellow dog Updater, Modified的简称,具体念什么?既然是首字母缩写念Y-U-M应该没错吧,(有时候也听人叫晕,那就晕吧:).起初是由yellow dog这一发行版的开发者Terra Soft研发,用python写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke开 发团队进行改进,遂有此名。

YUM的宗旨是自动化地升级,安装/移除rpm包,收集rpm包的相关信息,检查依赖性并自动提示用户解决。YUM的关键之处 是要有可靠的repository,顾名思义,这是软件的仓库,它可以是http或ftp站点,也可以是本地软件池,但必须包含rpm的header, header包括了rpm包的各种信息,包括描述,功能,提供的文件,依赖性等.正是收集了这些 header并加以分析,才能自动化地完成余下的任务。

YUM的特点:

  • 可以同时配置多个资源库(Repository)
  • 简洁的配置文件(/etc/yum.conf)
  • 自动解决增加或删除rpm包时遇到的倚赖性问题
  • 使用方便
  • 保持与RPM数据库的一致性

阅读全文…

分类: Linux 标签: , , ,

linux命令Sysctl及常见内核参数调整

2011年12月22日 没有评论

        Sysctl命令用来配置与显示在/proc/sys目录中的内核参数.proc下的内核参数文件为内存映射,虚拟文件,实际中不存在,不能使用编辑器进行编辑。如果想使参数长期保存,可以通过编辑/etc/sysctl.conf文件来实现。

命令格式及参数:

sysctl [-n] [-e] -w variable=value
sysctl [-n] [-e] -p (default /etc/sysctl.conf)
sysctl [-n] [-e] Ca
-w  临时改变某个指定参数的值,如
# sysctl -w net.ipv4.ip_forward=1
-a  显示所有的系统参数

-p从指定的文件加载系统参数,默认从/etc/sysctl.conf 文件中加载,如:

# echo 1 > /proc/sys/net/ipv4/ip_forward
# sysctl -w net.ipv4.ip_forward=1
以上两种方法都可能立即开启路由功能,但如果系统重启,或执行了
# service network restart
命令,所设置的值即会丢失,如果想永久保留配置,可以修改/etc/sysctl.conf文件,将 net.ipv4.ip_forward=0改为net.ipv4.ip_forward=1
分类: Linux 标签:

让你提升命令行效率的 Bash 快捷键

2011年11月15日 没有评论

让你提升命令行效率的 Bash 快捷键

 

生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率。

编辑命令

       Ctrl + a :移到命令行首

       Ctrl + e :移到命令行尾

       Ctrl + f :按字符前移(右向)

       Ctrl + b :按字符后移(左向)

       Alt + f :按单词前移(右向)

       Alt + b :按单词后移(左向)

       Ctrl + xx:在命令行首和光标之间移动

       Ctrl + u :从光标处删除至命令行首

       Ctrl + k :从光标处删除至命令行尾

       Ctrl + w :从光标处删除至字首

       Alt + d :从光标处删除至字尾

       Ctrl + d :删除光标处的字符

       Ctrl + h :删除光标前的字符

       Ctrl + y :粘贴至光标后

       Alt + c :从光标处更改为首字母大写的单词

       Alt + u :从光标处更改为全部大写的单词

       Alt + l :从光标处更改为全部小写的单词

       Ctrl + t :交换光标处和之前的字符

       Alt + t :交换光标处和之前的单词

       Alt + Backspace:与 Ctrl + w 相同类似,分隔符有些差别 [感谢rezilla 指正]

重新执行命令

       Ctrl + r:逆向搜索命令历史

       Ctrl + g:从历史搜索模式退出

       Ctrl + p:历史中的上一条命令

       Ctrl + n:历史中的下一条命令

       Alt + .:使用上一条命令的最后一个参数

控制命令

       Ctrl + l:清屏

       Ctrl + o:执行当前命令,并选择上一条命令

       Ctrl + s:阻止屏幕输出

       Ctrl + q:允许屏幕输出

       Ctrl + c:终止命令

       Ctrl + z:挂起命令

Bang (!) 命令

       !!:执行上一条命令

       !blah:执行最近的以 blah 开头的命令,如 !ls

       !blah:p:仅打印输出,而不执行

       !$:上一条命令的最后一个参数,与 Alt + . 相同

       !$:p:打印输出 !$ 的内容

       !*:上一条命令的所有参数

       !*:p:打印输出 !* 的内容

       ^blah:删除上一条命令中的 blah

       ^blah^foo:将上一条命令中的 blah 替换为 foo

       ^blah^foo^:将上一条命令中所有的 blah 都替换为 foo

友情提示

1.    以上介绍的大多数 Bash 快捷键仅当在 emacs 编辑模式时有效,若你将Bash 配置为 vi 编辑模式,那将遵循 vi 的按键绑定。Bash 默认为 emacs 编辑模式。如果你的 Bash 不在 emacs 编辑模式,可通过 set -o emacs 设置。

2.    ^S、^Q、^C、^Z 是由终端设备处理的,可用 stty 命令设置。

 

引用:http://linuxtoy.org/archives/bash-shortcuts.html

分类: Linux 标签:

Centos 升级安装 VIM7.3

2011年11月11日 没有评论

Centos系统自带Vim为7.0版,使用过程中发现netrw的目录浏览功能有bug,表现为:

子目录名称无法正常显示:目录名前面加添有字母’e’。

子目录无法打开:光标置于子目录上时,按回车无反映。

只好升级VIM的netrw插件,但是VIM7.1以后netrw是以Vimball形式发布。所以还得先升级VIM到最新版本了

VIM最新版本7.3 官网

默认安装

./configure
make
make install

安装过程中提示:installing /usr/local/share/man/fr/man1/vim.1 ,然后就卡着不动了。

查资料提示可能是跟locale设置有关系

我的locale 设置为

LANG=zh_CN.GBXXXX

修改为

LANG=zh_CN.UTF-8

安装成功!

分类: Linux, VIM 标签: