Warning: Undefined array key "cperpage" in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 255

Warning: Undefined variable $output in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 325

Warning: Undefined variable $fixed_tags in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 326

Warning: Undefined variable $isshowdots in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 327

Warning: Undefined variable $tag_aditional in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 330

Warning: Undefined variable $tag_aditional in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 333

Warning: Undefined variable $tag_aditional in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 336

Warning: Undefined variable $post in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 345

Warning: Attempt to read property "ID" on null in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 345

Warning: Undefined variable $post in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 345

Warning: Attempt to read property "ID" on null in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 345

Warning: Undefined variable $more_text_link in /www/wwwroot/www.now163.com/wp-content/themes/twentytwentyfive/functions.php on line 345
理想社会 – 第 4 页 – 记载我的成功之路

博客

  • Centos6.3安装Cacti+Nagios+NDOUtils

    准备环境:

    1. 系统为Centos6.3-64bit,所下的软件都在/root/src下
    2. iptables和selinux都关闭,
    3. 安装必要组件 yum -y install httpd php php-gd freetype php-mysql php-snmp php-devel mysql mysql-server perl-DBD-MySQL php-pdo net-snmp net-snmp-libs net-snmp-utils net-snmp-devel ruby ruby-devel gcc glibc glibc-common gd gd-devel ntp openssl openssl-devel

    提供src文件如下:

     

    一、安装Nagios:

    • 创建nagios用户及组。
    useradd -m -s /bin/bash nagios
    passwd nagios
    • 创建一个nagcmd的用户组,用于从web接口执行外部命令,将nagios和apache用户加入组中。
    groupadd nagcmd
    usermod -a -G nagcmd nagios
    usermod -a -G nagcmd www
    • 编译安装Nagios
    tar zxvf nagios-3.4.3.tar
    cd nagios-3.2.3
    ./configure --with-command-group=nagcmd
    make
    make all
    make install
    make install-init
    make install-config
    make install-commandmode
    make install-webconf
    cd ..

    注:make install 用于安装主要的程序、CGI及HTML文件
    make install-init 用于生成init启动脚本
    make install-config 用于安装示例配置文件
    make install-commandmode 用于设置相应的目录权限
    make install-webconf 用于安装Apache配置文件

    • 验证程序是否被正确安装

    切换目录到安装路径,这里是/usr/local/nagios,看是否存在etc、bin、 sbin、 share、 var这五个目录,如果存在则可以表明程序被正确的安装到系统了。

    ls /usr/local/nagios/
    bin/ etc/ sbin/ share/ var/

    注;bin–Nagios执行程序所在目录,其中的nagios文件即为主程序。
    etc–Nagios配置文件位置
    sbin–Nagios cgi文件所在目录,也就是执行外部命令所需文件所在的目录
    Share–Nagios网页文件所在的目录
    var–Nagios日志文件、spid 等文件所在的目录
    var/archives–日志归档目录
    var/rw–用来存放外部命令文件

    • 配置Nagios Web界面登陆帐号及密码
    htpasswd -c /usr/local/nagios/etc/htpasswd nagiosadmin

    修改Nagios配置文件,给新增的用户增加访问权限

    • 编译并安装Nagios插件

    由于Nagios主程序只是提供一个运行框架,其具体监控是靠运行在其下的插件完成的,所以Nagios插件是必须安装的。

    tar zxvf nagios-plugins-1.4.16.tar.gz
    cd nagios-plugins-1.4.16
    ./configure --with-nagios-user=nagios --with-nagios-group=nagios
    make
    make install

    验证Nagios插件是否正确安装

    ls /usr/local//nagios/libexec

    显示安装的插件文件,即所有的插件都安装在libexec这个目录下。

    • 启动服务

    启动前先检查下配置文件是否正确

    /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

    如果没有报错,可以启动Nagios服务

    /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg

    查看Nagios运行状态

    /usr/local/nagios/bin/nagiostats
    • 安装NRPE

    由于Nagios只能监测自己所在的主机的一些本地情况,例如,cpu负载、内存使用、硬盘使用等等。如果想要监测被监控的服务器上的这些本地情 况,就要用到NRPE。NRPE(Nagios Remote Plugin Executor)是Nagios的一个扩展,它被用于被监控的服务器上,向Nagios监控平台提供该服务器的一些本地的情况。NRPE可以称为 Nagios的Linux客户端。

    tar zxvf nrpe-2.13.tar.gz
    cd nrpe-2.13
    ./configure
    make all
    make install-plugin
    make install-daemon
    make install-daemon-config

    注:监控主机上只需要make install-plugin这一步就可以了。监控机上只要有一个check_nrpe插件用于连接被监控端nrpe的daemon就行了。
    启动NRPE

    /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

    验证NRPE是否正确安装

    /usr/local/nagios/libexec/check_nrpe -H localhost

    注:如果成功,会返回NRPE的版本号。
    二、Nagios被控端安装配置

    • 创建Nagios用户及组

    建立Nagios账号

    /usr/sbin/useradd -m -s /sbin/nologin nagios
    • 编译并安装Nagios插件
    tar zxvf nagios-plugins-1.4.16.tar.gz
    cd nagios-plugins-1.4.16
    ./configure --with-nagios-user=nagios --with-nagios-group=nagios
    make
    make install
    cd ..

    验证程序是否被正确安装:

    ls /usr/local/nagios/libexec

    显示安装的插件文件,即所有的插件都安装在libexec这个目录下。

    • 安装NRPE
    tar zxvf nrpe-2.13.tar.gz
    cd nrpe-2.12
    ./configure
    make all
    make install-plugin
    make install-daemon
    make install-daemon-config
    cd ..
    • 启动NRPE
    /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

    验证NRPE是否正确安装

    /usr/local/nagios/libexec/check_nrpe -H localhost

    注:如果成功,会返回NRPE的版本号。

    • 修改NRPE配置文件,让监控主机可以访问被监控主机的NRPE。

    缺省NRPE配置文件中只允许本机访问NRPE的Daemon。

  • Linux上用户帐号的迁移

    迁移用户帐号不是一件容易的任务。你需要确保文件所有权保持完整,密码和所属组保持原样。需要考虑的文件应该是,比如,用户的主目录和email。
    在红帽企业Linux2.1和3上,好的情况是他们有相似的处理用户帐号的方法。加入系统的用户的UID和GID总是从500开始计算,一直增加,除非被 覆盖(参见man页的useradd)。这里,我们假设你使用/etc/passwd,/etc/group和/etc/shadow来做身份认证。这样 迁移用户帐号,就是把UID>=500的用户帐号导入到系统中。
    为了让这个过程能工作正常,你不应该在新安装的红帽企业Linux3系统上创建新的用户帐号。下面的过程包括获取你的用户帐号,把他们添加到恰当文件的已经存在的帐号后面。这个过程只在安装后有效,建议你在添加用户帐号之前,备份你要修改的文件。
    在红帽企业Linux2.1系统上:

    # awk -F: ‘($3>=500) && ($3!=65534)’ /etc/passwd > passwd.txt
    # awk -F: ‘($3>=500) && ($3!=65534)’ /etc/group > group.txt
    # awk -F: ‘($3>=500) && ($3!=65534) {print $1}’ /etc/passwd|tee -|egrep -f – /etc/shadow > shadow.txt
    # tar czpf home.tgz /home
    # tar czpf mail.tgz /var/spool/mail
    拷贝passwd.txt,group.txt,home.tgz和mail.tgz,把他们放到,比如红帽企业Linux3系统的/backup目录,然后做下面的工作:  # cd /
    # cp /etc/passwd /backup/passwd-backup.txt
    # cat /backup/passwd.txt >> /etc/passwd
    # cp /etc/group /backup/group-backup.txt
    # cat /backup/group.txt >> /etc/group
    # cp /etc/shadow /backup/shadow-backup.txt
    # cat /backup/shadow.txt >> /etc/shadow
    # tar zxf /backup/home.tgz
    # tar zxf /backup/mail.tgz
    注意:你可能想先解开/home (home.tgz)和 /var/spool/mail (mail.tgz)目录到一个临时的目录,然后把它们移到/home和/var/spool/mail。
    要检查迁移是否成功,可以用迁移后的用户帐号来登录系统。

  • L2TP 一键安装包

    这是 L2TP over IPSec Server 一键安装包的发布页,此安装包首发于 VPSYou.com

    当前版本:1.2

    发行版 版本 兼容性
    CentOS 5.2 32/64bit 测试通过
    CentOS 5.3 32/64bit 测试通过
    CentOS 5.4 32/64bit 测试通过
    CentOS 5.5 32/64bit 测试通过
    Ubuntu 9.10 Karmic 32/64bit 测试通过
    Ubuntu 10.04 Lucid 32/64bit 测试通过
    Debian 5.0 Lenny 32/64bit 测试通过
    Fedora 13 32/64bit 测试通过

    (更多…)

  • dd测试磁盘写入性能

    1. dd if=/dev/zero of=test bs=64k count=16k

    这个很不准确的,因为命令结束的时候数据还没有真正写到磁盘上去

    2. dd if=/dev/zero of=test bs=64k count=16k conv=fsync

    这个还算准确,数据已经写入磁盘

    3. dd if=/dev/zero of=test bs=64k count=16k oflag=dsync

    这个可以当成是模拟数据库插入操作,所以很慢。

  • VPS自动备份数据到Dropbox

    一 设置Dropbox

    由于Dropbox强大的API,在不使用客户端的同时,可以使用第三方脚本直接上传文件。对比官方客户端运行起来上百M的内存占用,这个小小的脚本完全可以满足我们的需求。

    Dropbox-Uploader https://github.com/andreafabrizi/Dropbox-Uploader

    将脚本下载到使用目录,运行,此时根据提示设置自己的Dropbox应用API(就像申请Twitter API一样简单),然后按照步骤设置,然后就可以使用其命令上传/下载文件了 (更多…)

  • Sendmail邮件队列的管理

    1、队列文件通常存放在/var/spool/mqueue下面,每个待发送的邮件由几个文件构成,例如,我们可以看到下面的目录文件列表:

    [root@mail mqueue]# ls

    dfRAA27175 xfAAA00733 xfBAA00819 xfEAA32763 xfXAA00706

    qfRAA27175 xfAAA00784 xfDAA01360 xfFAA01616

    文件名字总是由一个两字符的前缀加上一个随机数字。前缀有四种: (更多…)

  • 常见退信解释

     

    产生退信的原因有多种多样,下面根据您接收到退信中的关键字,来查找一下可能的原因。 (更多…)
  • vps下快速搭建openvpn

    手上有一个openvz的vps,因为不支持pptp协议的vpn,所以只能安装openvpn了。

    wget https://www.now163.com/dl/openvpn.sh

    chmod +x openvpn.sh

    ./openvpn/sh

    openvpn客户端下载地址
    http://openvpn.net/index.php/open-source/downloads.html
    本站openvpn的client端证书,解压放到C:Program FilesOpenVPNconfig下就可以使用了。
    www.now163.net/dl/OpenVPN-client.tgz

  • 自动备份网站文件和数据库上传到FTP空间

    #!/bin/bash
    #你要修改的地方从这里开始
    MYSQL_USER=root                             #mysql用户名
    MYSQL_PASS=123456                      #mysql密码
    MAIL_TO=cat@hostloc.com                 #数据库发送到的邮箱
    FTP_USER=cat                              #ftp用户名
    FTP_PASS=123456                         #ftp密码
    FTP_IP=imcat.in                          #ftp地址
    FTP_backup=backup                          #ftp上存放备份文件的目录,这个要自己得ftp上面建的
    WEB_DATA=/home/www                          #要备份的网站数据
    #你要修改的地方从这里结束
    
    #定义数据库的名字和旧数据库的名字
    DataBakName=Data_$(date +"%Y%m%d").tar.gz
    WebBakName=Web_$(date +%Y%m%d).tar.gz
    OldData=Data_$(date -d -5day +"%Y%m%d").tar.gz
    OldWeb=Web_$(date -d -5day +"%Y%m%d").tar.gz
    #删除本地3天前的数据
    rm -rf /home/backup/Data_$(date -d -3day +"%Y%m%d").tar.gz /home/backup/Web_$(date -d -3day +"%Y%m%d").tar.gz
    cd /home/backup
    #导出数据库,一个数据库一个压缩文件
    for db in `/usr/local/mysql/bin/mysql -u$MYSQL_USER -p$MYSQL_PASS -B -N -e 'SHOW DATABASES' | xargs`; do
        (/usr/local/mysql/bin/mysqldump -u$MYSQL_USER -p$MYSQL_PASS ${db} | gzip -9 - > ${db}.sql.gz)
    done
    #压缩数据库文件为一个文件
    tar zcf /home/backup/$DataBakName /home/backup/*.sql.gz
    rm -rf /home/backup/*.sql.gz
    #发送数据库到Email,如果数据库压缩后太大,请注释这行
    echo "主题:数据库备份" | mutt -a /home/backup/$DataBakName -s "内容:数据库备份" $MAIL_TO
    #压缩网站数据
    tar zcf /home/backup/$WebBakName $WEB_DATA
    #上传到FTP空间,删除FTP空间5天前的数据
    ftp -v -n $FTP_IP << END
    user $FTP_USER $FTP_PASS
    type binary
    cd $FTP_backup
    delete $OldData
    delete $OldWeb
    put $DataBakName
    put $WebBakName
    bye
    END

    给脚本添加执行权限:

    chmod +x /root/AutoBackupToFtp.sh

    利用系统crontab实现每天自动运行:

    crontab -e

    输入以下内容:

    00 00 * * * /root/AutoBackupToFtp.sh

    转载自:http://imcat.in/auto-backup-site-files-database-upload-ftp/

  • nginx打开目录浏览功能

    打开nginx.conf文件,在location server 或 http段中加入
    autoindex on;
    另外两个参数最好也加上去:

    autoindex_exact_size off;
    默认为on,显示出文件的确切大小,单位是bytes。
    改为off后,显示出文件的大概大小,单位是kB或者MB或者GB

    autoindex_localtime on;
    默认为off,显示的文件时间为GMT时间。
    改为on后,显示的文件时间为文件的服务器时间