Warning: curl_exec() has been disabled for security reasons in /pub/host/sunboyu/sunboyu/www/wp-includes/http.php on line 1022
LINUX 一个程序猿 孙小一,孙小二,PHP,MYSQL,LINUX,APACHE,原创技术,扯淡

nagios学习笔记-安装篇

作者 : admin 于 2009年02月04日, 17:49:13
2009
02-4

服务器和网络总搞的人疲惫,有不少商用的服务器监视工具,但价格都太贵,自己写,太费劲,而且要监控的服务也很多,不近要监控可用性,还要监控性能。

后在CU论坛看到nagios功能强大,尝试安装了一下。

首先到 http://www.nagios.org/ 下载 nagios-3.0.6.tar.gz nagios-plugins-1.4.13.tar.gz 两个程序,两个必须安装,否则不工作。

nagios主程序安装非常简单,暂时没有看configure参数,直接加了个 –prefix就OK了。那个plugins也一样,但nagios主程序在configure –prefix && make all && make install 之后,还要运行 make install-commandmode && make install-config && make install-init && make install-webconf 但是最后一个 make install-webconf 可能会报错,无法找到apache配置文件目录,手工拷贝 nagios.conf 到apache配置文件目录,在主配置文件引用就可以了。

这样安装就完成了,可以访问 localhost/nagios

但没有配置,无法完成监控报表的功能,因为刚学习,也没找到中文文档,待研究后继续……

Linux时间同步大法

作者 : admin 于 2009年02月01日, 12:11:31
2009
02-1

linux时间不同步,很郁闷,装了个ntp之类的东西,还是不好使

其实使用rdate就可以,但死活不成功。

又考虑,时间协议也许不是走80端口,查看/etc/service 果然,service iptables stop, 重新运行

rdate -s time.nist.gov

果然同步成功。

本机设置为上海时间,一切OK。

sunboyu-amp-fastcgi-suexec-v23-alpha

作者 : admin 于 2009年01月21日, 11:10:01
2009
01-21

Linux下APACHE MYSQL PHP FCgid Suexec 自动安装脚本V2.3

1、补全了支持的字符集,默认为utf8

sunboyu-amp-fastcgi-suexec-v23-alpha

倒霉的网管

作者 : admin 于 2009年01月19日, 20:40:51
2009
01-19

该死的网管,昨天就发现网络不正常,没注意,以为是机房不稳定,可这种状态持续到了今天。话说这状态非常诡异,可以ping通,很快,偶尔也能应用一些服务,httpd,ftp,ssh,但有时候任何服务都中断,只是ping的通。

但是如果ssh一直保持会话,突然中断后,ssh还能顺利跟服务器通讯。

这可难坏了我这个牛叉的系统工程师和一个CCIE级大哥,我又发挥流氓黑客的精神,彻底扫描了服务器端口和一些数据包,发现几个疑点:

1、服务器通讯正常的时候,所有端口的包数据都是正常的,是我自己服务的标志。

2、服务器通讯异常的时候,服务端口有变,并且出现异常数据。

疯狂google后发现,有这么几个可能性:

1、dell的网卡驱动没有装好,会产生MAC地址跳跃(mac地址都是写在芯片里的,汗!)。

2、ip地址被盗用了。

第一条已经排除,下载dell网卡驱动后,重装后也正常。问题依然存在。

第二,我跟那边网管要了个新的ip,一切正常。

比较一下两个服务器的几个协议的头,上边是我的,下边是异常的

1、ftp

我牛叉的Pure-FTPd,mysql动态控制的

  1. 220---------- 欢迎来到 Pure-FTPd ----------
  2. 220-您是第 1 个使用者,最多可达 50 个连接
  3. 220-现在本地时间是 15:21。服务器端口: 21。
  4. 220-这部主机也欢迎IPv6的连接
  5. 220 在 15 分钟内没有活动,您被会断线。

啥玩意,还真没见过

  1. 220 211.99.3.121 pSOSystem FTP server (NTL386/1.0.4) ready.

他的其他端口
特征码出来了,CTerminalSocket,google一下原来是作voip电话的服务器,逮着了,回头砸他服务器去!

  1. Connect
  2. Remote Command:
  3.         MCMS VERSION 7.5.0.173   Operating System : PSOS
  4.                                                         +
  5.                                                          19/01/09 15:32:40:590 N
  6. :0000133853 T:0c610000 L:10 S:0585d800 CTerminalSocket
  7.  
  8.                                                       ****************   EXCEPTI
  9. ON  *****************

累……疯狂的配置

作者 : admin 于 2009年01月18日, 22:16:05
2009
01-18

Dell1950终于上架了,又一个牛叉的系统,我把CentOS精简到了我能想象到的极致(当然跟gentoo还不能媲美),在AMP(apache,php,mysql)都启动空负载的状态下,内存占用降到了128M以下。

  1. top - 16:54:16 up  3:42,  1 user,  load average: 0.00, 0.00, 0.00
  2. Tasks:  83 total,   1 running,  82 sleeping,   0 stopped,   0 zombie
  3. Cpu(s):  0.0% us,  0.0% sy,  0.0% ni, 99.9% id,  0.1% wa,  0.0% hi,  0.0% si
  4. Mem:   4042344k total,   125040k used,  3917304k free,    11136k buffers
  5. Swap:  6094840k total,        0k used,  6094840k free,    47004k cached

一些内核级补丁没有打,估计了解这类漏洞入侵的人,我暂时也招架不住,现在只是为了服务器的稳定。apache+php+mysql+ftp+ssh之类的账户权限作了详细的统筹,对外服务权限尤其作了限制,尽量达到最优。PHP是用developer模式进行编译安装,没有考虑实际应用,只是把功能尽量多的增加(这些操作会稍微影响性能,但相对128M,是可以忽略的),但很重要的opcode缓冲加上了,Centos用最小安装,以来的一些组件和库分别安装,决不多余。尽量在硬盘基础占用上也降至最小。硬盘分区使用了LVM,偷懒了,虽然这样会有很大的问题,但手工分区还不是很熟悉,而且在管理存储上我功力还不够,以后进行改善。

硬盘情况如下:感觉还是大了点,回头清理一下缓存。

  1. [root@localhost ~]# df
  2. Filesystem           1K-blocks      Used Available Use% Mounted on
  3. /dev/mapper/VolGroup00-LogVol00
  4.                      134980848   1214972 126909172   1% /
  5. /dev/sda1               101086     14864     81003  16% /boot
  6. none                   2021172         0   2021172   0% /dev/shm

很成功的系统,但管理软件我一直没功夫去写,待写完后就是一个完整的初始系统+管理套件

Dell1950安装Centos4.7 ServerCD

作者 : admin 于 2009年01月18日, 11:11:27
2009
01-18

朋友弄来一台Dell1950,至强E5405,单颗CPU4核,4G内存,一块136Gsas硬盘,因原来的双CPU的机器利用率太差,好说歹说才降级改成单CPU。

原以为DELL对linux支持很好,可我的centos4.7servercd 并没有直接就能装上,估计是不认sas硬盘,没有继承sas硬盘的驱动,翻出机器自带的引导光盘,默认引导一遍,把驱动拷贝到硬盘上,可所支持的操作系统只有windows和redhat的as系统,我的CentosCD并不认,逼我重启,再用CentosCD引导,顺利安装。

这机器就是比我本本上的虚拟机快--||几乎是闪装系统,闪编译,而最大的瓶颈却是我家里1M的adsl带宽,因为我是从我 sunboyu.cn 的源里下载软件,其实当时应该配置成局域网源的,忘了,不过也就这样了,速度飞快,而且我那个脚本基本无人职守,跑上,我就喝茶去了……

顺便也写了本篇日志

gentoo初体验

作者 : admin 于 2009年01月17日, 14:37:12
2009
01-17

使用的是 install-x86-minimal-2008.0.iso 这张盘,在vmware6中进行安装。

初次安装异常辛苦,想起了刚买电脑装98那架势。自己格盘,配置文件系统,然后安装,然后%……※×……×(※(

反正很有乐趣。

底下是初次使用常用命令,打包收集一下
passwd #修改root密码
net-setup eth0 #修改网卡信息
/etc/init.d/sshd start #启动sshd服务 底下就可以用ssh登录了

磁盘分区,我习惯用lvm,虽说安全和管理上是偷懒的行为,不过方便么。
fdisk不好用,我用cfdisk,很OK。

创建文件系统的命令

文件系统 创建命令
ext2 mke2fs
ext3 mke2fs -j
reiserfs mkreiserfs
xfs mkfs.xfs
jfs mkfs.jfs

创建swap分区 mkswap /dev/hda2

激活swap分区 swapon /dev/hda2

然后挂载文件,具体看手册 http://gentoo.linuxsir.org/doc/cn/handbook/hb_part1_chap5.html

以后按照手册,我基本建立起了这个系统,而且portage成功。

服务器性能负载记录工具

作者 : admin 于 2009年01月14日, 17:15:38
2009
01-14

服务器突然发生了崩溃,老板开始找我了。

找了半天居然没找到问题在哪里,一咬牙,写了个性能和负载的记录工具,再出事我可有记录了-,-||

备注:只能在linux下用。

  1. < ?php
  2. date_default_timezone_set('Asia/Shanghai');
  3. define('SLEEPTIME',10);       //10秒记录一次
  4. $memfile  = "/proc/meminfo";
  5. $loadfile = "/proc/loadavg";
  6. $logfile  = sprintf("/var/www/html/log/%s.log",date('Y-m-d'));
  7. while(1)
  8. {
  9. $log = getload();
  10. $log .= getmem();
  11. $log .= mymem();
  12. $log .= "\n\r".date("Y-m-d H:i:s");
  13. $log .= "\n\r\n\r";
  14. $handle = fopen($logfile,'a');
  15. fwrite($handle,$log);
  16. fclose($handle);
  17. sleep(SLEEPTIME);
  18. }
  19.  
  20. function getload()      //获得负载
  21. {
  22. global $loadfile;
  23. return file_get_contents($loadfile);
  24. }
  25. function getmem()      //获得内存占用
  26. {
  27. global $memfile;
  28. $mem = file($memfile);
  29. return $mem[0];
  30. }
  31. function mymem()       //程序本身内存占用
  32. {
  33. $pid = getmypid();
  34. exec("ps -eo%mem,rss,pid | grep $pid", $output);
  35.         $output = explode(" ", $output[0]);
  36.         return $output[1] * 1024;
  37. }
  38. ?>

Centos4初始化的一些脚本

作者 : admin 于 2009年01月07日, 09:27:44
2009
01-7
  1. #!/bin/sh
  2. cd /etc/yum.repos.d
  3. mv CentOS-Base.repo  CentOS-Base.repo.save
  4. wget http://centos.ustc.edu.cn/CentOS-Base.repo
  5. yum install gcc4-c++

中国科技大学的源挺快的,因为是高校,所以比较稳定,一些其他服务器的过一段时间也许就消失了,所以不建议

网易的源 http://mirrors.163.com/.help/CentOS-Base-163.repo

搜狐的源 http://mirrors.sohu.com/help/CentOS-Base-sohu.repo

修改Linux用户登录的默认语言设置

作者 : admin 于 2008年12月20日, 16:47:41
2008
12-20

进入linux中断,查看自己的设置,可以看下 env命令的回显

默认都是us_EN.UTF-8

有一些字符出来全是乱码,尝试修改一下

修改用户主目录下 .bash_profile 文件,增加一行 export LANG=zh_CN.gbk

然后logout,再重新登录,部分字符显示正常。

 Page 4 of 8  « First  ... « 2  3  4  5  6 » ...  Last »