rrdtool+cacti@lamp笔记整理完成

八.配置phpMyAdmin

这里我是个tar包,所以首先要把phpmyadmin解开,然后执行

mv phpMyAdmin-x.xx.x /var/www/html/phpmyadmin

将整个phpmyadmin移动到/var/www/html中。

mkdir /var/www/html/phpmyadmin/config

创建一个叫作/config的文件夹,用于存这个这个..配置文件

chmod o+rw config

给这个文件夹赋予权限,注意此处我已经进入了cd /var/www/html 了,所以才直接chmod

cp config.sample.inc.php config/config.inc.php

把配置文件拷入,顺便更名

chmod o+w config/config.inc.php

给予权限

此时就要去配置你的server了,从http://你的ip地址/phpmyadmin 进入引导页面,配置成后选择config中的save

chmod o-rw config.inc.php

配置完后别忘了回来把权限降低,保证安全最重要

然后你就可以用phpmyadmin配置调试Mysql数据库了~

此处,如果你的config.inc.php没有设置好,外加之前你用mysqladmin -u root password ‘xxx’增加了密码,会显示1045错误,用mysqladmin -u root –p password ”(单引号内什么也不添,将密码设置为空)就可是暂时解决的,并顺利进入页面,但是这样一来root密码就为空了。(配置config.inc.php头晕的话,就按上面的方法从phpmyadmin的引导页面上配置)

九.cacti

cacti不是系统部分,所以yum不成了,先去下载一个合适版本的rrdtool RPM包吧

rpm -ivh perl_rrdtool_x.x.xx_elx.x86_64

#我的这台服务器是64位cpu,后面这个要随着下载来的包名而变

ok, 顺利的话应该已经完成了rrdtool的安装,有了它,cacti才有意义

tar -zxf 你的cacti包

mv 你的cacti包 /var/www/html/cacti

我是比较喜欢直接重命名为cacti,当然想改成balabala也可以

mysqladmin create cacti  #为cacti建立一个库
mysql cacti < cacti.sql  #导入表,当然要在/var/www/html/cacti目录下执行
mysql> create user cacti@’localhost’;  #新建用户
mysql> create user cacti@’127.0.0.1′;  #为了适应网络环境的另一个用户
mysql> grant all privileges on cacti.* to cacti@’localhost’;  #给权
mysql> grant all privileges on cacti.* to cacti@’127.0.01′;  #给权
mysql> set password for cacti@’localhost’ = password(’密码’);
mysql> set password for cacti@’127.0.0.1′ = password(’密码,我认为这两个应该一样’);

mysql的部分应该完成了

vi include/config.php

编辑cacti的配置

$database_type = “mysql”;
$database_default = “cacti”;
$database_hostname = “localhost”;
$database_username = “localhost “;
$database_password = “你的密码”;

将刚才上面的内容添加如上

chmod -R 775 /rra /log

把用于存放数据和记录的文件夹放宽权限,到此地想到一个问题就是,目前为止一切的动作都是由root完成的,应该单独建立一个用户来针对rrdtool才是合理又安全的。

vi /etc/crontab

添加cacti采集计划任务

*/5 * * * * cactiuser(按include/config.php填写这个) php /var/www/html/cacti/poller.php > /dev/null 2>&1

5分钟一次

然后就http://你的ip/cacti 吧~用admin帐号与admin密码登陆,随后是要求你立刻改密码。安装结束了…

rrdtool+cacti@lamp笔记整理

apt是不错,但debian还要去下载,而CentOS5的光盘手边就有,考虑到Enterprise,和省事儿,就直接光盘安装了。服务器手边,先弄好,然后送去托管,通过rrdtool检测其他两台同时托管的服务器,大概这样情况。

一.分区

2块硬盘,各300G。考虑到600G的小肚子让它去作备份也不太现实,反正只用来检测,就想到,能不能装两个系统,这样如果一个被自己用root实验时乱搞弄挂了,通过grub可以马上使用另一个,但是由于时间紧和能力低下,这个没有机会完成。于是就分区如下,当然不太合理,仅供参考。(无逻辑分区)

200g, e3, /data, sda1
60g, e3, /var, sda2 #centos5这个发行版中,如果在安装的时候选择了apache,那它默认在这里的/www/html下面
30g, e3, /usr, sda3
4g, swap sda4
300g, /, sdb1

二.用户和组

首先添加一个公司的组,并将自己添加进去

groupadd dfgcn

useradd –g 500 donald #我敢肯定这里默认的gid一定是500~ 不信去vi /etc/passwd…(不过我还是喜欢vim)

passwd设置好密码.

三.网络配置

我这台服务器有有2块网卡,一块准备给页面访问走,一块走数据下载,先把eth0按页面访问配好,然后ONBOOT=no,就好了。具体数字就不公布了..

剩下eth1按局域网要求配,方便一从另外一台电脑一边用图形界面的浏览器查资料一边ssh调控。目前,只有一条网线,是接在eth1上的。

vim /etc/sysconfig/network-scripts/ifcfg-eth1
设置网卡

BOOTPROTO=static
IPADDR=192.168.0.220
NETMASK=255.255.255.0
ONBOOT=yes

顺手去掉两块网卡的ipv6的支持

vim /etc/sysconfig/network
配置网关

GATEWAY=192.168.0.18

vim /etc/resolv.conf
配置DNS

nameserver 192.168.10.18 #可以指向你的路由器(网关)也可以直接使用ISP给你提供的DNS

vim /etc/ssh/sshd_confg

安全起见,将ssh设置为禁止root登陆(我们可以登陆后su嘛~),最大尝试数也降低,现在的黑软都傻瓜化了,尽量别让它们占用哪怕一丁点系统资源..将下面两个设置参数改下。

#PermitRootLogin no #缺省为yes
#MaxAuthTries 3 #缺省为6

service sshd restart

重启ssh服务使改动生效,并通过其他机器ssh过来一次, 确定root确实已经不能登陆。

此处发现一个问题, 由于安装系统时使用了中文界面,导致ssh登陆后su时的提示词语为乱码, 而在这台服务器本地上su会提示Password而非中文。

vim /etc/environment

通过更改local配置来解决,增加

LANGUAGE=”en_US:en”
LC_CTYPE=zh_CN.UTF-8
LANG=en_US.UTF-8
GST_ID3_TAG_ENCODING=GBK

setup
firewall设置, 放web,ftp,ssh通过
service设置,去掉所有不用的服务,不懂就通过F1查询,结果还是有看不明白的,就上网搜..实在拿不准就暂时保留吧,以下是我保留的,应该还是有没必要的.但是不确定所以暂时保留了.

acpic
atd
auditd
avahi-daemon
cpuspeed
crond
gssftp
httpd
iptables
irqbalance
kudzu
lvm2-monitor
messagebus
microcode_ctl
netfs
network
nfs
nfslock
pcscd
protmap
readahead_early
restorecond
sendmail
smartd
sshd
syslog
xinetd
yum-updatesd

三.apache

rpm –qa|grep httpd

检查是否已经安装

yum install httpd

已经有了,但是还是用黄狗升级下.

chkconfig –-list

检查httpd是否在模式3(文本模式)下是否打开 发现是off状态
chkconfig –-level 3 httpd on

打开,再次查看

chkconfig –list|grep httpd

已经是开启状态了,

service httpd restart

重新启动下httpd,使改动生效

netstat –nat

检查80端口是否在listen状态,发现已经在监听(如果没有的话,说明apache没有正确的被安装)

ps -ef|grep httpd|wc –l(小写L)

检查并发进程数

apachectl –l

最后查看当前工作的模块数

返回

core.c
prefork.c
http_core.c
mod_so.c

共四个,我不知道他们四个具体怎么干活的,但是看名字也能看出个大概,并且有他们四个就正常了…

四.mysql

同apache(我这个其实安装系统时都装过这些了,但是不查下手痒..)

rpm –qa|grep mysql

有结果

chkconfig –-list

检查mysqld是否在模式3下是否打开,发现根本没有mysqld!

service mysqld start

返回

mysqld: unrecognized service

where is mysql

返回

mysql: /usr/bin/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

怪啊..

ntsysv(setup中的服务设置)

这里也没有mysql(之前setup配置服务的时候就没发现)

/etc/rc.d/init.d/中也没有my开头的字样.看来是安装出现问题了?但是按说都和系统一起装的啊?先试试

mysql

返回

ERROR 2002 (HY000): Can’t connect to local MySQL server

through socket ‘/var/lib/mysql/mysql.sock’ (2)

当然,权限不够也会出现这个情况,但是根据之前的状况判断,mysql的守护进程根本没启动,sock自然没有生成

service mysqld start

没有?太令人震惊了!

yum install mysql-server php php-mysql

直接重新装,顺手把php也给办了~

chkconfig –list

出现了~

chkconfig –-level 3 mysqld on

开启~

service mysqld restart

重启使生效

netstat –nat|grep 3306

看看,这个3306口是mysql要用的,如果安装成功,这里一定是被监听的状态。

mysql

尝试登录mysql,成功

mysqladmin -u root password ‘xxx’

加个密码

vim /etc/my.cnf

这步比较重要

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

以上是现在这台服务器上成功运行着的mysql的配置文件,很少,但是很安全。当然,想更详细的设置的话,在/usr/share/mysql/下有个my-medium.cnf可以供你参考,你也可以直接把它cp过来,但是我觉得,对于配置文件,编辑的时候万万要小心!比如那时我加了下面这两段

[mysqld]
default-character-set= utf-8(gbk) #就因为这条,下面出了问题
[mysqlhotcopy]
max_connections = 1000
log-slow-queries
long_query_time = 5

完成后去吃顿饭,就给halt -p了,再开机时starting mysql [failed] !@#$%…

mysql

又返回 ERROR 2002 (HY000) 没有sock。是啊.. mysqld都启动失败了,肯定没有,于是尝试启动它

service mysqld start

返回

Timeout error occurred trying to start MySQL Daemon.

奇怪啊.看看log吧

vim /var/log/mysqld.log

090213 08:29:24 mysqld started
^G/usr/libexec/mysqld: Character set ‘utf-8(gbk)’ is not a

compiled character set and is not specified in the

‘/usr/share/mysql/charsets/Index.xml’ file
090213 8:29:24 [ERROR] Aborting

090213 8:29:24 [Note] /usr/libexec/mysqld: Shutdown

complete

090213 08:29:24 mysqld ended

以上的文字出现了两次..就是它,字符集也会导致问题

vim /usr/libexec/mysqld

把utf8(gbk)改成uft8,不是utf-8,因为usr/share/mysql/charsets/Index.xml中的字符名字叫做utf8,格式不一样的。

vim /etc/my.cnf

这里也改成utf8

service mysqld start

又失败,再看log

090213 9:05:17 [ERROR] Can’t start server : Bind on unix
socket: Permission denied
090213 9:05:17 [ERROR] Do you already have another mysqld
server running on socket: /var/lib/mysql.sock ?

被占用?那就

service mysqld restart

依然超时,多方查询,都无法解决目前的问题.于是

yum remove mysql

将以下有关联的都remove了

mysql
dovecot
mysql-server
perl-dbd-mysql
php-mysql

yum install mysql dovecot mysql-server perl-dbd-mysql php-mysql

哈哈~有yum就是好,不过我觉得这有点像 “我电脑特别慢,您帮我看看” “系统坏了,重装~¥50″然后就一个ghost拍过去(_ _)i

五.php
rpm –qa|grep php

返回

php-common-5.1.6-20.el5_2.1
php-5.1.6-20.el5_2.1
php-cli-5.1.6-20.el5_2.1

vim /var/www/html/phpinfo.php

建立并添加

<?

Phpinfo();

?>

保存退出,在浏览器中查看192.168.0.220/phpinfo.php,出现了php信息页面.

六.GD库

yum install php-gd

哈哈,yum太简单了..

下面说说tar的安装,其实也不难。首先下载jpeg6,libpng,freetype(让PHP支持GIF,PNG,JPEG)还有gd,这4个tar包,版本自己选。

从jpeg开始,先建立文件夹
mkdir server
cd server
mkdir jpeg6
cd jpeg6
mkdir bin lib include man
cd man
mkdir man1

开始解压并安装,就是./configure, make, make install 三板斧。

此处有个问题,就是如果你的libtool版本过低,会导致无法完成安装。

然后进入jpeg-6b的源码目录,然后执行以下步骤,切记!
cp /usr/share/libtool/config.sub .
cp /usr/share/libtool/config.guess .
./configure –enable-shared –enable-static
make
mkdir -p /usr/local/man/man1
make install

然后是安装libpng

依然三斧

再安装 freetype

再来三斧

七.mystring

待续…太长了。手酸。

 
  
 
  • 最近

  • 從前