yum安装
1)删除redhat原有yum:#rpm -aq|grep yum|xargs rpm -e --nodeps
2)下载yum安装文件(注意:以下文件版本会更新,请下载最新版本的文件)
安装源:http://mirrors.163.com/centos/6/os/x86_64/Packages/
文件包(共4个)
python-iniparse-0.3.1-2.1.el6.noarch.rpm
yum-3.2.29-22.el6.centos.noarch.rpm
yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
yum-plugin-fastestmirror-1.1.30-10.el6.noarch.rpm [备注:AS5下文件名为 yum-fastestmirror-1.1.16-21.el5.centos.noarch.rpm] 下载示例:#wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-22.el6.centos.noarch.rpm
3)进行安装yum
#rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
#rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
#rpm -ivh yum-3.2.29-22.el6.centos.noarch.rpm yum-plugin-fastestmirror-1.1.30-10.el6.noarch.rpm
注意:最后两个包一定要同时安装,因为存在相互依赖关系
4)更新repo文件(如果系统存在此文件,则先用mv命令做备份)
#vi /etc/yum.repos.d/rhel-debuginfo.repo
rehel-debuginfo.repo文件内容如下:
[base]
name=CentOS-$releasever - Base
baseurl=http://mirrors.163.com/centos/6/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#packages used/produced in the build but not released
#[addons]
#name=CentOS-$releasever - Addons
#baseurl=http://mirrors.163.com/centos/$releasever/addons/$basearch/
#gpgcheck=1
#gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
gpgcheck=1
enabled=0
5)执行命令:#yum clean all
执行成功后,系统提示如下:(若执行失败,请检查有没执行第1步,即删除redhat自带yum)
Loaded plugins: fastestmirror
Cleaning repos: base extras updates
Cleaning up Everything
6)yum安装示例:#yum install vim
7)至此,yum安装完成,接着用yum安装gcc及gcc-c++编译器
#yum install gcc
#yum install gcc-c++
8)yum关于python版本的问题
如果python版本升级到了2.6,yum install时提“doesn't match the current version of Python, which is:2.6.5”
#vim /usr/bin/yum
将第一行的#!/usr/bin/python改为#!/usr/bin/python2.6,保存即可
iptables防火墙
Redhat防火墙规则存储位置 /etc/sysconfig/iptables
重启防火墙让修改生效 service iptables restart
RealVNC安装
1)RealVNC下载
http://www.realvnc.com/download/vnc/
2)RealVNC安装
#tar -zxvf VNC-5.0.0-Linux-x64-RPM.tar.gz
#rpm -ivh VNC-Server-5.0.0-Linux-x64.rpm
发现缺少依赖包 xterm
#yum install xterm
发现与tightvnc冲突,删除tightvnc
#rpm -e tigervnc
再运行安装
3)修改配置文件
设置客户端密码
#vncpasswd
#vi /root/.vnc/xstartup
将最后一行twm&改成gnome-session& or kde&
最后,安装序列号,重启vnc,开启vnc防火墙的端口:5900
#/usr/bin/vnclicense -add VKNPQ-LRJHT-NA2XH-FJA4N-D9Y6A
FTP安装,版本vsftpd-2.2.2-6.el6_2.1.x86_64,db依赖包 db4-utils
1)yum安装,开启防火墙21端口
#yum install vsftpd #已安装无需重复安装
#yum install db4-utils #已安装无需重复安装
2)用户权限配置
#touch /etc/vsftpd/chroot_list
#echo ftp >> /etc/vsftpd/chroot_list #添加一个用户名ftp,因为安装vsftpd时系统已建立了ftp的用户
创建DB文件,奇数行为用户名、偶数行为密码
#vim /etc/vsftpd/vftpuser.pwd
#db_load -T -t hash -f /etc/vsftpd/vftpuser.pwd /etc/vsftpd/vftpuser.db
#vim /etc/pam.d/vsftpd
注释掉所有内容,加上以下内容
# note above all, add next
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
为每个用户建立单独的配置文件
#mkdir /etc/vsftpd/vuser_conf
#cd /etc/vsftpd/vuser_conf
#vim xxx #xxx是ftp登录的虚拟用户名
xxx文件内容如下,可根据需要修改
local_root=/var/www
write_enable=YES
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=022
3)修改主配置文件vsftpd.conf,让其支持以上修改
#vim /etc/vsftpd/vsftpd.conf
以下内容如果被#注释的,请去除注释,如果不存在的添加即可
anonymous_enable=YES/NO #是否允许匿名用户访问
chroot_list_enable=YES #限定用户不可以离开主目录
chroot_list_file=/etc/vsftpd/chroot_list
local_enable=YES/NO #本地用户是否可以访问 注:如果为NO 则所有虚拟用户都将不能访问原因:虚拟用户访问在主机上其实是以本地用户访问的
anon_umask=022 #使用虚拟用户,一定要设置anon的umask权限
pam_service_name=vsftpd #pam认证文件名在/etc/pam.d/vsftpd
guest_enable=YES #启用虚拟用户功能
guest_username=ftp #指定虚拟用户的宿主用户 –centos 里面已经有内置的ftp用户了(注:此用户在chroot_list_file=/etc/vsftpd/chroot_list文件里所指定的用户)
user_config_dir=/etc/vsftpd/vuser_conf #设置虚拟用户个人vsftp的服务配置文件
(此文件后面不能出现空格)
4)最后一步,将用户的FTP目录权限设置好,即 local_root指向的路径
#chmod 777 /var/www/ -R
mount --bind -o rw /mongodb/htdocs/fensitong /mongodb/vsftpd/fensitong
mount --bind -o rw /mongodb/htdocs/soudianmao /mongodb/vsftpd/soudianmao
mount --bind -o rw /mongodb/htdocs/paiquanbao /mongodb/vsftpd/paiquanbao
mount --bind -o rw /mongodb/htdocs/qiangkebao /mongodb/vsftpd/qiangkebao
mount --bind -o rw /mongodb/htdocs/zhaokemao /mongodb/vsftpd/zhaokemao
5)接下来遇到郁闷的问题
注:我是以虚拟用户安装vsftpd滴
问题一:500 OOPS: child died
解决:setsebool -P ftp_home_dir=1
网上也有说:setsebool -P ftpd_disable_trans 1
问题二:无访问权限
查看FTP权限设置#getsebool -a|grep ftp
解决:setsebool allow_ftpd_full_access 1
SVN安装,版本subversion-1.7.2.tar.bz2
1)svn安装需要sqlite3依赖,所以先下载sqlite3
#wget http://www.sqlite.org/sqlite-autoconf-3071100.tar.gz
#tar jxvf subversion-1.7.2.tar.bz2
#tar zxvf sqlite-autoconf-3071100.tar.gz
#cd subversion-1.7.2
#mkdir sqlite-amalgamation
此处其实只需要拷贝sqlite的一个.c文件,就能成功编译安装了
#cp ../sqlite-autoconf-3071100/sqlite3.c sqlite-amalgamation/
#./configure --prefix=/usr/server/svn --with-apx=/usr/local/apache/bin/apxs --with-apr=/usr/local/apache/bin/apr-1-config --with-apr-util=/usr/local/apache/bin/apu-1-config --with-ssl
#make && make install
2)创建版本库
#/usr/server/svn/bin/svnadmin create /web/svn_dir/huoba
#/usr/server/svn/bin/svnadmin create /web/svn_dir/doc
#/usr/server/svn/bin/svnadmin create /web/svn_dir/java
#/usr/server/svn/bin/svnadmin create /web/svn_dir/client
#/usr/server/svn/bin/svnadmin create /web/svn_dir/web
3)开启svn防火墙端口,打开svnserver默认的3690端口
4)svn权限管理
修改所有svn版本库下的conf/svnserve.conf文件,将authz、passwd指向外部链接统一管理
password-db = /web/svn_dir/passwd
authz-db = /web/svn_dir/authz
在svn版本库根目录下(即/web/svn_dir/)新建两个文件authz、passwd,分别编辑权限配置
5)svn 启动运行
#/usr/server/svn/bin/svnserve -d --listen-port 3690 -r /web/svn_dir/&
※ 参数解析
-d 表示以daemon方式(后台运行)运行
-listen-port 监听的端口3690是默认端口
-r 指版本库的根目录路径
6)svn相关命令
查看某个用户的目录权限结果
#svn co svn://127.0.0.1/arm --no-auth-cache --username rory --password 8809117
挂载iso文件
1) 挂载
mkdir /mnt/dvdrom
mount -o loop -t iso9660 /目录/文件名.iso /mnt/dvdrom #挂载iso文件
mount -t iso9660 /dev/cdrom /mnt/cdrom
2) 查看挂载是否成功
df -lh
3)卸除挂载
unmount /mnt/dvdrom
4)挂载其它文件系统
NTFS:
mkdir /media/udisk
mount -t ntfs-3g /磁盘路径
yum下载的rpm文件包安装完全部自动清除安装文件。修改一下yum的设置,可以让他不删除下载的rpm。把/etc/yum.conf文件中的“keepcache=0”改为“keepcache=1”即可。rpm文件包保存目录为:/var/cache/yum
字体安装
将字体拷贝到fonts下的自定义目录
#mkdir /usr/share/fonts/xxx
#cp *.ttf /usr/share/fonts/xxx/
#cd /usr/share/fonts/xxx
#chmod 755 *.ttf
#mkfontscale && mkfontdir && fc-cache -fv
如果mkfontscale 或 mkfontdir不存在,直接yum安装即可,例:
#yum install mkfontscale
#yum install fontconfig
环境变量
1) JDK环境变量
在/etc/profile.d/下新建一个java.sh(可以让所有用户使用),文件中存放以下内容
export JAVA_HOME=/usr/java/jdk1.6.0_29
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
2) Resin环境变量
Apache+PHP+Mongo+Resin环境搭建
1) Apache安装
#./configure --prefix=/usr/local/apache --enable-http --enable-modules=all --enable-rewrite --enable-so --enable-deflate=shared --enable-cache --enable-file-cache --enable-ssl --with-ssl
激活suexec模块功能,需要附加以下配置
#--enable-suexec --with-suexec-caller=daemon --with-suexec-docroot=/var/www/extsuite --with-suexec-uidmin=1000 --with-suexec-gidmin=1000 --with-suexec-logfile=/usr/local/apache/logs/suexec_log
#make && make install
#cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
#vim /etc/init.d/httpd
加入以下两行内容在#!/bin/sh的下一行
# chkconfig: 345 90 90
# description: Apache
设置为自启动
#chkconfig --add /etc/init.d/httpd
#service httpd start
如果启动报错using ::1 for ServerName,则修改httpd.conf文件,修改两处:
a) 找到#ServerName,新增一行内容:ServerName localhost
b) 找到 c) 将DocumentRoot指向的目录赋予daemon.daemon用户组执行权限 #service httpd restart 2) libxml安装(php5.3.8编译时必须要用到的库) ./configure --prefix=/usr/server/libxml 3) php安装 #./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-libxml-dir=/usr/server/libxml --with-config-file-path=/usr/local/apache/conf --enable-mbstring --enable-xml --enable-sockets --enable-soap 激活mysql功能,需附加下一行配置 # --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config 激活mcrypt,phpMyAdmin要用到 # --with-mcrypt=/usr/local/libmcrypt 加载libiconv模块 # --with-iconv-dir=/usr/local/libiconv/lib 开启gd库 #yum zlib libpng freetype gd jpeg libxml # --with-gd --enable-gd-native-ttf --with-zlib --with-png --with-jpeg --with-freetype 编译加载curl #/usr/local/php/bin/phpize #./configure --with-php-config=/usr/local/php/bin/php-config 最后将生成的curl.so拷贝到php目录下,在php.ini加载该文件 如果调用系统已安装库文件,则在./configure 前面加上以下代码 #CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" #cp php.ini-production /usr/local/apache/conf/php.ini 让apache加载php模块,编辑httpd.conf,在末尾处加下如下代码 # php_module Configuration AddType application/x-httpd-php .php .phtml AddType application/x-httpd-php-source .phps PHPIniDir "conf" 修改php.ini,开启mysql支持 4) Resin安装 5) 更改Apache主目录 修改DocumentRoot指向目标目录,主目录最好指向/var/www(可绕开权限问题) DocumentRoot chcon -t httpd_sys_content_t /usr/server/webapps 6) 配置Apache请求分发,分发指定目录及文件让Resin处理 加载Resin模块 LoadModule caucho_module /usr/local/apache/modules/mod_caucho.so 分发指定目录 ResinConfigServer localhost 6800 CauchoConfigCacheDirectory /tmp CauchoStatus yes 分发指定扩展名文件 ResinConfigServer localhost 6800 CauchoConfigCacheDirectory /tmp CauchoStatus yes
Apache与Resin整合及虚拟机配置
1) Apache虚拟机配置,找到这一行,去掉前面的注释#
#Include conf/extra/httpd-vhosts.conf 变成 Include conf/extra/httpd-vhosts.conf
2) 找到第一行 LoadModule,大约在50几行左右,并新增一行,加载Resin,内容如下
LoadModule caucho_module modules/mod_caucho.so
3) 将httpd.conf里的所有虚拟机配置移入到extra/httpd-vhosts.conf文件中,并屏蔽到extra/httpd-vhosts.conf文件中的示例配置
4) 在extra/httpd-vhosts.conf文档中加入qiangkebao的虚拟机配置,内容如下
ServerAdmin [email protected]
DocumentRoot "/var/www/qiangkebao"
ServerName www.qiangkebao.com
ServerAlias *.qiangkebao.com
ResinConfigServer localhost 6800
CauchoConfigCacheDirectory /tmp
CauchoStatus yes
ErrorLog "logs/qiangkebao-error_log"
CustomLog "logs/qiangkebao-access_log" common
5) 配置完以上后,先保存退出,记住,别重启Apache,因为Resin相应配置还没跟上
Resin安装及配置
1) 编译参数如下:
./configure --prefix=/usr/local/resin --with-apxs=/usr/local/apache/bin/apxs
make && make install
2) Resin虚拟机配置,进入Resin目录,打开目录中的conf/resin.xml文件,在
3) 检查一下apache的modules目录中是否存在mod_caucho.so文件,如果不存在,需要再次重复编译Resin的步骤
4) 检查Resin启动脚本是否生成,检查以下目录是否存在名为“resin”的文件
/etc/init.d/ 以及 /etc/rc.d/init.d/
5) Resin自启动配置,打开/etc/init.d/resin 文件,按照下面的说明修改
a. 找到 # chkconfig: 位置,将这一行内容修改如下(修改目的,开机时让resin在Apache之前启动,关机时在Apache之前关闭)
# chkconfig: 2345 61 61
b. 上述修改保存后,再执行如下命令:
需要添加执行权限
chmod 755 /etc/rc.d/init.d/resin
添加到系统服务中
/sbin/chkconfig resin reset
关闭自动启动
chkconfig resin on
c. 以上修改完成后,应该可以用以下命令来启动resin了
service resin start
Mongodb设置为开机启动
打开/etc/rc.local,在末尾处加上以下一行内容
/mongodb/mongodb/bin/mongod -f /mongodb/mongodb/conf/mongo.conf
检查apache的启动优先级
打开/etc/init.d/httpd,查检# chkconfig:这一行是不是以下内容,如果不是,改成以下内容
# chkconfig: 2345 90 90
保存后,重新apache,命令如下:
service httpd restart
7) mongodb的php驱动安装
下载mongodb驱动
https://github.com/mongodb/mongo-php-driver
将mongodb驱动解压,使用unzip命令
unzip mongodb-mongo-php-driver-(xxx: version).zip
安装驱动
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --enable-mongo
# make && make install
# cp lib/php/extensions/no-debug-non-zts-20090626/mongo.so /usr/local/php/ext/ //我在php目录下建立了一个ext目录,用来存放php扩展
修改php.ini,开启mongo.so,在php.ini中加入一行
extension=/usr/local/php/ext/mongo.so
问题及解决
&Q1:Cannot find autoconf,需要安装autoconf,方法如下:
yum install autoconf
&Q2:
8)mysqli的php模块不能加载问题解决
(php-xxxxx为php文件名, 代表路径)
# cd /usr/local/src/php-xxxxx/ext/mysqli
# yum -y install mysql-devel
# php安装路径/php/bin/phpize (phpize参考)
# ./configure --with-php-config= /php-config --enable-embedded-mysqli=shared --enable-shared
# make
# make install
mysql-5.5安装
1) 下载(亚洲日本站750KB/s):http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.21.tar.gz/from/http://ftp.jaist.ac.jp/pub/mysql/
2) 先安装cmake(mysql最新版本5.5需要cmake编译安装,cmake需要gcc、gcc-c++编译环境支持)
下载:#wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
安装:
#tar zxvf cmake-2.8.4.tar.gz
#mv cmake-2.8.4 cmake
#cd cmake
#./bootstrap
如果报错缺少c编译器,则执行命令:#yum install gcc
3)一键安装mysql编译用到的关联包
#yum install autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*
4)mysql 编译安装
#tar -zxvf mysql-5.5.21.tar.gz
#mv mysql-5.5.21 mysql
#cd mysql
#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306
#make
#make install
如果报错缺少c++编译器,则执行命令:#yum install gcc-c++
如果没有报错,则继续以下安装
#gmake
#gmake install
#./configure
#make && make install
6)mysql配置
#group add mysql #添加mysql用户组
#useradd mysql -g mysql -s /sbin/nologin #添加mysql用户
#cd /usr/local/mysql
#chown mysql.mysql -R . #将mysql目录赋予mysql用户的执行权限
#chown mysql.mysql -R data
#cp support-files/my-medium.cnf /etc/my.cnf #mysql配置文件
#chmod 755 scripts/mysql_install_db #赋予mysql_install_db执行权限
以下命令为mysql 启动及自启动配置
#scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/server/data/
#cp support-files/mysql.server /etc/init.d/mysqld
#chmod 755 /etc/init.d/mysqld
#chkconfig mysqld on
设置管理员帐号
#mysqladmin -u root password 'yourpassword'
本机登录mysql
#mysql -u root -p #敲入该命令后,屏幕会提示输入密码,输入上一步设置的yourpassword
删除root密码为空的记录
#use mysql;
#delete from user where password='';
#flush privileges;
#quit
配置mysql允许root远程登录
#mysql -u root -p #登录
#grant all privileges on *.* to root@'%' identified by "root";
#flush privileges;
#quit
网卡驱动安装
1) 下载AR81Family-linux-v1.0.1.14.tar.gz
2) 安装环境检测,有没安装GCC,有没安装Kernel
3) 网卡安装
# tar zxvf AR81Family-linux-v1.0.1.14.tar.gz -C drivers
# make && make install
查看模块是否已成功安装
# lsmod |grep atl1e
如果模块没安装,则加载模块
# insmod /lib/modules/2.6.32-71.el6.x86_64/kernel/drivers/net/atl1e/atl1e.ko
# lsmod |grep
最后,配置网卡信息
#setup
检测路由及网络连接
#netstat -rn //检查路由情况
#nslookup www.baidu.com //检查是否能正常解析IP
4) 补充
临时添加IP及网关
# ifconfig eth0 192.168.0.20 netmask 255.255.255.0
# route add default gw 192.168.0.1
DNS设置
# vi /etc/resolv.conf //加入以下信息,我设置的是福州联通DNS
search localdomain
nameserver 58.22.96.66
nameserver 218.104.128.106
重启网卡
# /etc/init.d/network restart
开机自动挂载网卡
# vi /etc/modprobe.d/atl1e.conf //加入以下信息
alias eth0 atl1e