现在的位置: 首页 > 综合 > 正文

CentOS 5.x Linux安装以及使用规范

2013年08月10日 ⁄ 综合 ⁄ 共 9812字 ⁄ 字号 评论关闭
文章目录

1 服务器安装的步骤

1.1. 安装CentOS 5

1.1.1. 光盘启动

设定系统从光盘启动。

插入CentOS 5的DVD或者CD1,开始安装。

出现如下界面,用于选择图形界面或者字符界面安装:

wps_clip_image-28200

可以选择图形或者字符界面进行安装,如果直接回车就是图形界面,如果输入linux text然后回车就是字符界面。一般来说,如果服务器是比较老的型号,比如三四年之前的,或者都是主流的硬件配置,比如Intel的服务器,ATI或者nVidia的显卡,可以选择图形界面;如果是非主流的硬件配置,最好选择字符界面。如果这里选择字符界面,那么安装完成之后登录界面就是字符界面;否则就是图形界面。

在这里我们选择字符界面。

1.1.2. 检查CD

出现检查CD的界面。

wps_clip_image-7883

如果是新光盘,可以跳过这个过程;如果光盘用了很长时间了,可以选择OK开始测试,这里选择Skip跳过。

1.1.3. 选择安装语言

字符界面下只能使用English,但是这里的选择会直接影响以后操作系统的语言,所以我们如果希望将来操作系统的语言为中文,那么这里应该选择简体中文,虽然安装程序会自动将安装语言设置为英文,但是安装完成之后系统变量LANG会是zh.UTF-8。

wps_clip_image-7084

1.1.4. 选择键盘布局

保留默认,继续。

wps_clip_image-20383

1.1.5. 选择分区类型

在这里选择定制分区。

wps_clip_image-28470

1.1.6. 分区

/var目录保存了Apache服务器的网页,Oracle的数据,MySQL的数据等内容,会不断的增长,因此尽量保留大一些的空间。

/目录是Linux的安装目录,如果完全安装至少5G

swap分区是交换分区,大小至少为2*memory。

如果全盘安装Linux,可以选择自动分区。否则,可以按照如下方式进行手工分区:

/ 10G+

swap   2*memory

/var    rest

wps_clip_image-27789

1.1.7. 选择BootLoader

保留默认即可。

wps_clip_image-29921

1.1.8. 配置BootLoader

保留默认即可。

wps_clip_image-23756

1.1.9. 设置启动密码

保留默认即可。

wps_clip_image-23681

1.1.10. 设置启动其他操作系统

保留默认即可。

wps_clip_image-18545

1.1.11. 设置BootLoader安装位置

保留默认即可。

wps_clip_image-20261

1.1.12. 配置网络

可以根据实际情况配置网络。

wps_clip_image-30833

1.1.13. 配置网关和DNS

根据情况修改网络配置参数。

wps_clip_image-11652

1.1.14. 服务器命名

设置hostname。

wps_clip_image-32727

1.1.15. 设置时区

选择Asia/ShangHai。

要注意不要勾选"System clock uses UTC"

wps_clip_image-6107

1.1.16. 设置密码

设置root密码。

wps_clip_image-16268

1.1.17. 选择安装包

安装包选择“定制”

wps_clip_image-21585

1.1.18. 定制安装

除了Java之外,选择全部的安装包。

wps_clip_image-8535

然后系统会检查安装包的依赖关系。

1.1.19. 开始安装

点击OK确认。

wps_clip_image-8690

1.1.20. 提示安装媒体

选择Continue开始安装。

wps_clip_image-3085

1.1.21. 安装后的配置

1) 第一次启动

安装后第一次启动,会在启动过程中弹出一个配置界面,需要配置的是安全功能:

配置使用防火墙,关闭SELinux。

配置防火墙的外部端口:

打开TELNET,SSH, HTTP, HTTPS, FTP的外部访问权限,然后打开UDP端口177和TCP端口从6000~6010,以便于配置XDMCP连接。打开TCP端口1521和1158,便于配置Oracle数据库。

注意要正确配置联网,以便于能够联网安装扩展包。

2) 配置XDMCP连接

• 改变运行级别到5

打开/etc/inittab 然后设置init运行级别5:

id:5:initdefault:

• 打开XDMCP

对GDM:

打开/etc/gdm/custom.conf 设置Enable为1在[xdmcp]的选项中.

[xdmcp]

Enable=1

对KDM:

打开/usr/share/config/kdm/Xaccess

去掉:

#* #any host can get a login window

前面的注释符号,改为:

* #any host can get a login window

打开/usr/share/config/kdm/kdmrc,设置:

[Xdmcp]

Enable=true

3) 设置中文字体以方便安装Oracle 10g

进入/usr/share/fonts。

将chinese目录拷贝为zh_CN目录,然后进入TrueType目录,将uming.ttf拷贝为zysong.ttf:

cp -r ./chinese ./zh_CN

cd zh_CN/TrueType

cp ./uming.ttf ./zysong.ttf

4) 配置FTP服务器

配置vsftpd:

chkconfig vsftpd on

service vsftpd start

重新启动服务器。

1.1.22. 配置ADSL自动拨号

如果是家庭联网,需要配置ADSL自动拨号:

adsl-setup

根据提示输入ADSL帐号、密码等信息。

配置网关:

in /etc/sysctl.conf

# Controls IP packet forwarding

net.ipv4.ip_forward = 1

in /etc/sysconfig/network

FORWARD_IPV4=yes

in /etc/rc.d/rc.local

service iptables restart

in /etc/sysconfig/iptables

# Firewall configuration written by petehero

# Manual customization of this file is not recommended.

# Note: ifup-post will punch the current nameservers through the

# firewall; such entries will *not* be listed here.

*mangle

:PREROUTING ACCEPT [0:0]

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

:POSTROUTING ACCEPT [0:0]

COMMIT

*nat

:PREROUTING ACCEPT [0:0]

:POSTROUTING ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

COMMIT

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

COMMIT

此时应该已经能够连接互联网,通过ping命令测试。

1.1.23. Apache2安装

1) 配置Apache服务器

系统安装的时候,已经创建了apache用户,Apache服务器的默认用户也是apache因此我们就设置Apache服务器用apache用户启动。

chown -R apache:apache /var/www

usermod -d /var/www -s /bin/bash apache

passwd apache

su - apache

cp /etc/skel/.bash* ./

exit

chkconfig httpd on

编辑/etc/httpd/conf/httpd.conf,设置ServerName,然后启动apache

# service httpd start

用apache用户在/var/www目录下创建目录

mkdir backup

mkdir cron

mkdir geodata

mkdir upload

2) root账号屏蔽远程登录功能。

vi /etc/ssh/sshd_config

将# PermitRootLogin yes 改为:PermitRootLogin no

service sshd restart

1.1.24. MySQL安装

1) 用root用户执行:

chkconfig mysqld on

service mysqld start

mysql -u root -p

修改mysql root用户密码。

1.1.25. PHP安装

1) 用root用户执行:

yum -y install php-devel php-mbstring php-mcrypt php-mhash php-gd php-mysql php-pear php-xml

service httpd restart

2) 升级pear库

pear channel-update pear.php.net

pear upgrade-all

pear install -a Log HTML_TreeMenu HTTP_Client PHPUnit2

3) 安装dio,用root用户进入dio目录(需要测试是否需要)

phpize

./configure; make; make install

vi /etc/php.d/dio.ini

extension=dio.so

service httpd restart

4) 安装oci8,用root用户

首先到这里:

http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html

下载最新的oracie instant client软件,要包括basic和SDK

# rpm -ivh oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm

# rpm -ivh oracle-instantclient11.2-devel-11.2.0.1.0-1.i386.rpm

# pecl install oci8

输入:

instantclient,/usr/lib/oracle/11.2/client/lib

# vi /etc/php.d/oci8.ini

; Enable oci8 extension module

extension=oci8.so

# service httpd restart

1.1.26. 安装perl相关组件

1) 用root用户执行:

yum -y install perl-Geo-IP

1.1.27. 安装ZendOptimizer

解压缩ZendOptimizer的二进制文件,然后用root用户执行install.sh

tar zxvf ./ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz

sh ./install.sh

1.1.28. 安装cronolog

在解压缩之后的cronolog源代码目录,用root用户执行:

./configure  ; make; make install

1.1.29. 安装JDK

首先删除原有的java

rm /usr/bin/java

rm /etc/alternatives/java

为jdk的二进制文件添加运行的权限,然后运行

chmod a+x ./jdk-6u7-linux-i586-rpm.bin

./jdk-6u7-linux-i586-rpm.bin

1.1.30. 安装Oracle 10g for Linux X86_64

参考:

http://www.52zhe.cn/read.php/132.htm

所需软件和文档:
1:文档
http://www.oracle.com/pls/db102/homepage
2:软件
http://www.oracle.com/technology/software/products/database/index.html
filename: 10201_database_linux_x86_64.cpio.gz
Part I Oracle的预安装准备工作
系统完成后,检核必须的RPM包。此处请参考Oracle官方文档关于所需的软件包(具体位置URL)。也就是这个最主要的参考文档的地方。总算这次可以依据文档找全这些包了,真不容易,以前总是缺这个,少那个的。

[root@minot ~]# rpm -q binutils compat-gcc-34 compat-gcc-34-c++ compat-libstdc++-33 control-center gcc gcc-c++ gdbm glibc glibc-common glibc-devel libgcc libgnome libstdc++-devel libXp make sysstat util-linux 
[root@minot ~]# yum install compat-gcc-34 compat-gcc-34-c++  compat-libstdc++-33  gcc gcc-c++ glibc-devel  libstdc++-devel sysstat libXp

 
插播几句:当你发现任何提示什么的,少这个库,那个库之类的。可以通过以下yum命令例子,查询这个库属于哪个RPM包,再次之前rpm命令只能查询已安装的。(rpm -qf)

[root@minot ~]# yum whatprovides 库名

以下修改内核参数等文件,已保证Oracle的预安装准备成功。执行如下:

vi /etc/sysctl.conf    行末添加以下内容

# 20071212 add content for oracle install

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

# semaphores: semmsl, semmns, semopm, semmni

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default=262144

net.core.rmem_max=262144

net.core.wmem_default=262144

net.core.wmem_max=262144

执行下述命令。导入刚才写入的参数。不执行,oracle在后面安装前的检测会报警。

sysctl -p

vi /etc/security/limits.conf 行末添加以下内容

# 20071212 add content for oracle install

* soft nproc 2047

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

vi /etc/pam.d/login  行末添加以下内容

# 20071212 add content for oracle install

session required pam_limits.so

vi /etc/selinux/config 确保以下内容

SELINUX=disabled

此处再确认一下吧。

Part II  以Oracle 用户安装 Oracle
创建oracle用户,和一些安装目录。

groupadd dba

groupadd oinstall

useradd -g oinstall -G dba -m oracle

passwd oracle

mkdir -p /opt/oracle

chown -R oracle.oinstall /opt/oracle

将oracle的安装文件置于家目录,进行解压。

gzip -dc 10201_database_linux_x86_64.cpio.gz | cpio -div

添加环境变量,定义SID等。

su - oracle

vi .bash_profile

#--------------------------------------

# Set for Oracle10g Install;

#--------------------------------------

trap " " 0 1 2 3 5 9 15

trap clear 0

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export ORACLE_SID=orcl

export ORACLE_TERM=xterm

export PATH=/usr/sbin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/usr/lib:/usr/local/lib

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/usr/X11R6/lib64/

export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

export LD_ASSUME_KERNEL=2.6.18

export NLS_LANG="Simplified Chinese_china".UTF8

LC_CTYPE=zh_CN.UTF8

LC_ALL=zh_CN.UTF8

LANG=zh_CN.UTF8

umask 022

#

引用环境变量

source ~/.bash_profile

进行安装动作runInstall和dbca.
图形安装过程中的一些注意选项:/runinstall执行后,选择高级安装.
语言选项是加上中文简体和繁体2种。选择仅安装数据库,然后再用DBCA创建数据库。
1归档 2:全是utf8地区中国 语言中文  3:安装后记得激活scott,用于测试
说明:中文utf8环境安装完全没有问题,图形界面。此处不详细描述了。

~/database/runInstaller
dbca

Part III 安装后的调整dbstart,添加自启动脚本。
在运行$ORACLE_HOME/bin/dbstart时报错,
Failed to auto-start Oracle Net Listene using /ade/vikrkuma_new/oracle/bin/tnslsnr
解决方法:修改dbstart这个文件,找到ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle

su - oracle
vi `which dbstart`
ORACLE_HOME_LISTNER=$ORACLE_HOME

修改/etc/oratab文件

minot:/datas/apps/oracle/product/10.2.0/db_1:Y

创建自启动脚本。
解释一下脚本中的注释行:# chkconfig: 2345 80 05
三组个数字的意义是,“启动模式”、“启动顺序”、“关闭顺序”
oracle 10g在自身的dbstart已经启动了lsnrctl,所以下面的脚本上注释掉了lsnrctl的启动

touch  dbora

chmod 700 dbora

vi dbora

#!/bin/bash

#

# chkconfig: 2345 80 05

# description: Oracle 10g Server

# /etc/init.d/dbora

#

# Run-level Startup script for the Oracle Instance, Listener, and

# Web Interface

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export ORACLE_SID=orcl

export PATH=$PATH:$ORACLE_HOME/bin

ORA_OWNR="oracle"

# if the executables do not exist -- display error

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]

then

     echo "Oracle startup: cannot start"

     exit 1

fi

# depending on parameter -- startup, shutdown, restart

# of the instance and listener or usage display

case "$1" in

start)

     # Oracle listener and instance startup

     echo -n "Starting Oracle: "

#        su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"

     su $ORA_OWNR -c $ORACLE_HOME/bin/dbstart

     touch /var/lock/oracle

     su $ORA_OWNR -c "$ORACLE_HOME/bin/emctl start dbconsole"

     su $ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctl start"

     echo "OK"

     ;;

stop)

     # Oracle listener and instance shutdown

     echo -n "Shutdown Oracle: "

#        su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"

     su $ORA_OWNR -c $ORACLE_HOME/bin/dbshut

     rm -f /var/lock/oracle

     su $ORA_OWNR -c "$ORACLE_HOME/bin/emctl stop dbconsole"

     su $ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctl stop"

     echo "OK"

     ;;

reload|restart)

     $0 stop

     $0 start

     ;;

*)

     echo "Usage: `basename $0` start|stop|restart|reload"

     exit 1

esac

exit 0

cp dbora /etc/rc.d/init.d

chkconfig --add dbora

chkconfig --list | grep dbora

dbora           0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

Part IV 一些服务介绍和补充
主要服务启动方式

a:$ORACLE_HOME/bin/dbstart |  dbshut
b:$ORACLE_HOME/bin/lsnrctl start | stop 监听器启动|关闭。
c:$ORACLE_HOME/bin/emctl start | stop dbconsole
访问 http://yourIP:1158/em
d:$ORACLE_HOME/bin/isqlplusctl start | stop
访问 http://yourIP:5560/isqlplus

2 账号管理

为每一个需要登录服务器的用户创建单独的帐号,并且将帐号赋予需要使用的组权限。例如需要开发web程序则赋予apache组权限,每个人登录服务器都要使用自己的帐号。如果确实需要root帐号,则在用开发帐号登录后用su命令转换为root用户:

su - root

root账号屏蔽远程登录功能。

apache运行时的用户权限为apache

3 数据库管理

每一个业务连接数据库都要使用独立的用户。不允许业务使用root连接数据库。

4 服务器目录管理

4.1 常用软件的安装目录

所有的程序,文档以及其他需要维护的内容全部放在下面目录下:

/var/www

在该目录下创建如下一些子目录:

src---程序源代码

cron---crontab程序

proc---系统运行的进程

upload---上传的内容

cgi-bin---cgi程序

htdocs---用IP地址访问时指向的目录

www.domain.com---用域名访问时指向的目录

log---程序运行记录的日志

dump---数据库dump的内容

resource---资源文件

cache---临时的cache

test---测试用的程序

temp---临时文件的目录

backup---备份用的目录

4.2 日志格式

文件名的格式

日志内容可以有两种格式:逗号分隔或者定长。每一个日志目录下必须放一个README文件(UTF-8编码)描述日志的格式。

5 服务器数据迁移

• 用mysqldump程序导出mysql数据库中有用的表

• 备份apache的httpd.conf

• 备份/svnroot

• 备份crontab

• 备份/etc/rc.d/rc.local

• 备份网络配置

抱歉!评论已关闭.