存档

‘linux’ 分类的存档

mysql 无缝迁移

2011年6月28日 eric 175 条评论

说是无缝迁移可能说大了·但是经过这次迁移的确算是无缝迁移,因为凌晨两点做的迁移一直有用户在注册,一个用户也没有丢掉···

四台主机

mysql  master    10.100.0.2  (要替换掉)
mysql  slave      10.100.0.3  (要替换掉)

mysql master     10.100.0.10  (新的机器)
mysql slave       10.100.0.11  (新的机器)

迁移过程很简单

mysql   master --> slave(master) --> slave(master)--> slave

注意一点是 原 mysql slave 做新机器(10.100.0.3) 做 master 必须要开启日志的更新。

cat /etc/mysql/my.cnf
server-id       = 20002
master-host     = 10.100.0.2
master-user     = rel_eric
master-password = 123456
master-port     = 3306
 log-slave-updates 
分类: linux 标签:

iptables 端口针对动态IP(adsl)映射规则

2011年6月1日 eric 184 条评论

iptables -A PREROUTING -t nat -i ppp1 -p tcp –dport 8080 -j DNAT –to 1.1.1.3:22 iptables -A POSTROUTING -t nat -o ppp1 -p tcp -m tcp –dport 8080 -j SNAT –to 1.1.1.1 iptables -A INPUT -p tcp -m state –state NEW –dport 22 -i eth1 -j ACCEPT iptables -A PREROUTING -t nat -i ppp1 -p [...]

分类: linux 标签:

func install in ubuntu-server

2011年1月21日 eric 147 条评论

简介:
func: fedora 上的同意网络控制器

func为我们带来了什么:
· 你曾经试图命令或查询的系统大量使用SSH? 你想要一个更好的办法?
·你需要一个方法来审核你的系统你所有的远程命令呢?
·厌倦了编写shell脚本和解析命令的输出?
·你是美联储通过CIM,WBEM的,复杂的通信系统,防止doing /real/ work??
·那么我们有没有给你买了一个解决方案。 它的 功能 。

func几乎可以解决运维上任何问题:
一个方案,系统和一些工具,需要大量的沟通方式。功能提供了一种双向认证的统称做这些事情的排序制度。你可以建立自己的在顶部,这样,很容易扩大应用在其他模块添加功能,无论你 希望通过这些工作func命令行或其他一些应用的手段。如果你只是想用命令行的功能,这是伟大的。如果你想建立应用程序的功能工具,那也很好。如果这听起来很笼统空泛,它只是因为它确实是容易扩展。

下载源码:

git clone git://git.fedorahosted.org/certmaster.git
git clone git://git.fedorahosted.org/func.git
或者:
wget https://fedorahosted.org/releases/f/u/func/func-0.27.tar.gz
wget https://fedorahosted.org/releases/c/e/certmaster/certmaster-0.27.tar.gz

#修改 master机器 hosts

127.0.0.1       localhost
127.0.1.1       mysql
127.0.1.1       certmaster
192.168.6.161   master
192.168.6.160   minions
分类: linux 标签: , ,

转 svn常用命令

2011年1月21日 eric 164 条评论

1、checkout文件到本地目录
svn checkout path(path是服务器上的目录)
例如:svn checkout svn://192.168.1.1/pro/domain
简写:svn co
2、添加新的文件到版本库中
svn add file
例如:svn addtest.php(添加test.php)
svn add *.php(添加当前目录下所有的php文件)
3、将改动的文件提交到版本库
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)
例如:svn commit -m “add test file for my test“ test.php
简写:svn ci
4、加锁/解锁
svn lock -m “LockMessage“ [--force] PATH
例如:svn lock -m “lock test file“ test.php
svn unlock PATH
5、更新到某个版本
svn update -r m path
例如:
svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)
svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)
简写:svn up

分类: linux 标签: ,

网站更新脚本

2011年1月7日 eric 194 条评论

shell版本:

nginxs $> cat  upload.sh

#!/bin/bash
usage() {
    echo "basename $0" [-g] [-p] args
    echo "-h"
    echo "print script help"
    echo "-g:"
    echo "   is a gzip filename"
    echo "-p:"
    echo "   File absolute path"
    echo "   must \" \""
    echo "   \"/var/www /var/data\""
    exit 0
}

while getopts "hg:p:" opt; do
   case $opt in
      h)
         usage
         ;;
      g)
         Filename=$OPTARG
      #打包的文件名!
         ;;
      p)
         path=$OPTARG
     #要上传的目录和文件,要输入绝对地址例如 /var/www/123.jpg,/var/www/eric/
         ;;
      :)
         echo "The opt is unknown"
         ;;
      ?)
         echo "ERROR"
         ;;
    esac
done
[ -z $1 ] && usage
tar -Pzcvf $Filename $path 
分类: linux 标签: ,

windows 挂载 linux nfs

2011年1月5日 eric 133 条评论

以前就研究过 Windows下如何挂载linux NFS共享目录,那个时候没有仔细研究就掠过了,今天回过头来下载微软的 Services for UNIX 3.5 再次试验了下,成功了,就把方法贴上来。其实蛮简单的·只要新建两个文件或者从linux系统上拷贝 两个文件下来 passwd 和group 安装的时候选上这两个文件,或者安装完毕后,在 User Name Mapping on local computer 选项页面选上这两个文件。 查看linux NFS共享目录, 在windows系统上,点开始–>点程序–>点Windows Services for UNIX–>Korn Shell Welcome to the Interix UNIX utilities. DISPLAY=localhost:0.0 $ showmount -e 192.168.6.102 # 192.168.6.102 是linux NFS服务器IP Exports list on 192.168.6.102: /web/nas * /web/data * $ mount 192.168.6.102:/web/nas g: # g: [...]

分类: linux 标签: , ,

多线程ppt|doc|docx|pptx转换pdf

2010年12月29日 eric 166 条评论

今天给我的转换服务器更新openoffice版本的时候·也顺便搜索了下jodconverter的版本·在官网上目前还是 2.2.2 版本·但是在 google 的时候发现了 code 上 有 3.0的版本·就立刻下载下来在虚拟机器上做测试,测试后发现 3.0版本 的 jodconverter 做的很不错·支持了服务器多进程,也就说明可以多线程转换了,避免了转换排队现象。

1.下载安装 openoffice 3.2,我的环境是ubuntu所以下载的是deb包,如果你是centos请下载rpm包。

ppt2pdf $> wget http://download.services.openoffice.org/files/localized/zh-CN/3.2.1/OOo_3.2.1_Linux_x86_install-deb_zh-CN.tar.gz
ppt2pdf $> tar zxvf OOo_3.2.1_Linux_x86_install-deb_zh-CN.tar.gz
ppt2pdf $> cd OOO320_m18_native_packed-1_zh-CN.9502
ppt2pdf $> cd DEBS
ppt2pdf $> dpkg -i *.deb

2.然后下载中文字库防止乱码

ppt2pdf $> apt-get install language-pack-zh language-support-fonts-zh
分类: linux 标签: , , ,

测试nginx的FastDFS分布式存储模块

2010年12月2日 eric 200 条评论

很长时间没有关注FastDFS了,第一次使用FastDFS 是在 08年的时候11月的时候,那个时候是为了解决公司的数据存储~那时候可能是对Fastdfs了解不深,功能还不算太健全,最后选择了lustre。再回过头来看FastDFS更新很快,还看到fastdfs-nginx-module_v1.01.tar.gz nginx模块,所以今天在一台测试机上测试了·测试几天看稳定不稳定,在考虑换掉浪费资源的 lustre !

环境:

storage1:192.168.6.100
storage2:192.168.6.101
tracker:192.168.6.102

1. 在每个机器上,下载安装 FastDFS

nginx $>  wget http://fastdfs.googlecode.com/files/FastDFS_v2.04.tar.gz
# 解压
nginx $> tar zxvf FastDFS_v2.04.tar.gz
nginx $> cd FastDFS
# 因为我是给nginx添加fastdfs模块,所以不需要fastdfs支持 http 所以我就不需要去掉  #WITH_HTTPD=1 前的注释了,直接编译
nginx $> ./make.sh
nginx $> ./make.sh install

2.修改tracker 和 storage 的配置文件
# tracker 的修改

tracker $> vim /etc/fdfs/tracker.conf
disabled=false
#配置是否生效
bind_addr=192.168.6.102
#绑定IP
port=22122
#服务端口
connect_timeout=30
#连接超时时间
network_timeout=60
#  tracker server的网络超时,单位为秒。
base_path=/home/yangzi
#目录地址,里面会创建data(存放存储服务器信息)、logs,日志文件
max_connections=256
#系统提供服务最大连接数
work_threads=4
#线程数,通常设置CPU数
store_lookup=2
上传组(卷) 的方式 0:轮询方式 1: 指定组 2: 平衡负载(选择最大剩余空间的组(卷)上传)
这里如果在应用层指定了上传到一个固定组,那么这个参数被绕过
store_group=group1
当上一个参数设定为1 时 (store_lookup=1,即指定组名时),必须设置本参数为系统中存在的一个组名。如果选择其他的上传方式,这个参数就没有效了
store_server=0
选择哪个storage server 进行上传操作(一个文件被上传后,这个storage server就相当于这个文件的storage server源,会对同组的storage server推送这个文件达到同步效果)
# 0: 轮询方式
# 1: 根据ip 地址进行排序选择第一个服务器(IP地址最小者)
# 2: 根据优先级进行排序(上传优先级由storage server来设置,参数名为upload_priority)
store_path=0
分类: linux 标签: , ,

监控linux系统资源

2010年12月1日 eric 33 条评论

Dstat是什么?
可以说,Dstat是 vmstat,iostat,netstat,ifstat的结合体,dstat包含了他们所有没有的功能,并增加了一些额外的功能,Dstat是用于监测性能优化测试,故障诊断系统功能更方便.
你可以使用Dstat可以查看实时系统的所有资源,从你的IDE控制器中结合磁盘比较利用率,或数字比较与磁盘吞吐量的网络带宽更直观。

Dstat 监测结果带颜色,看着更直观,方便。
官方网站:http://packages.sw.be/dstat/

都是 rpm版本,我的是服务器是ubuntu,所以我下载源码编译的

nginx $> wget wget http://packages.sw.be/dstat/dstat-0.7.2-1.rfx.src.rpm
nginx $> rpm -i dstat-0.7.2-1.rfx.src.rpm
#可能会报错,不需要管。
nginx $> cd rpmbuild/SOURCES/dstat-0.7.2
nginx $> make install
nginx $> dstat --help
Usage: dstat [-afv] [options..] [delay [count]]
Versatile tool for generating system resource statistics

Dstat options:
  -c, --cpu              enable cpu stats
     -C 0,3,total           include cpu0, cpu3 and total
  -d, --disk             enable disk stats
     -D total,hda           include hda and total
  -g, --page             enable page stats
  -i, --int              enable interrupt stats
     -I 5,eth2              include int5 and interrupt used by eth2
  -l, --load             enable load stats
  -m, --mem              enable memory stats
  -n, --net              enable network stats
     -N eth1,total          include eth1 and total
  -p, --proc             enable process stats
  -r, --io               enable io stats (I/O requests completed)
  -s, --swap             enable swap stats
     -S swap1,total         include swap1 and total
  -t, --time             enable time/date output
  -T, --epoch            enable time counter (seconds since epoch)
  -y, --sys              enable system stats

  --aio                  enable aio stats
  --fs, --filesystem     enable fs stats
  --ipc                  enable ipc stats
  --lock                 enable lock stats
  --raw                  enable raw stats
  --socket               enable socket stats
  --tcp                  enable tcp stats
  --udp                  enable udp stats
  --unix                 enable unix stats
  --vm                   enable vm stats

  --plugin-name          enable plugins by plugin name (see manual)
  --list                 list all available plugins

  -a, --all              equals -cdngy (default)
  -f, --full             automatically expand -C, -D, -I, -N and -S lists
  -v, --vmstat           equals -pmgdsc -D total

  --float                force float values on screen
  --integer              force integer values on screen

  --bw, --blackonwhite   change colors for white background terminal
  --nocolor              disable colors (implies --noupdate)
  --noheaders            disable repetitive headers
  --noupdate             disable intermediate updates
  --output file          write CSV output to file

delay is the delay in seconds between each update (default: 1)
count is the number of updates to display before exiting (default: unlimited)
分类: linux 标签: ,

check_nginx pnp4nagios 模版

2010年11月25日 eric 170 条评论

首先不好意思,最近几天由于公司极个人的有点忙,所以就没有及时做check_nginx的模版,今天闲下来,把PNP模版做出来了,感官上还好,由于我把 serveraccepts 、handled、requests 都做到了 PNP模版里,可能他们的图会占用的图比较多,如果你只想把 ActiveConn、reading、writing、waiting 图绘出来,可以把 serveraccepts 、handled、requests 注视掉。

1.首先添加check_nginx.sh 监控

nginx $> wget www.nginxs.com/download/check_nginx.sh

nginx $> mv check_nginx.sh /usr/local/nagios/libexec/

nginx $> vim /usr/local/nagios/etc/objects

nginx $> vim commands.cfg
#  添加:

define command{
        command_name check_nginx
        command_line $USER1$/check_nginx.sh -u $ARG1$ -p $ARG2$ -w $ARG3$ -c $ARG4$
}
分类: linux, nagios 标签: ,