yum安装软件包失败,一般怎么解决
查看、卸载已安装的yum包查看已安装的yum包#rpm –qa|grep yum卸载软件包#rpm –e –nodeps yumlinux挂载后才能看到光盘上的内容。 mount /dev/cdrom /optcd /opt 找到yum的rpm包rpm -ivh createrepo-0411-3el5noarchrpm更改yum源下载配置文件保存配置文件即可清理yum缓存#yum clean all将服务器软件包信息缓存至本地,提高搜索安装效率#yum makecache若上面两条命令有报错,一般为配置文件更改不完全,可根据错误信息查找配置文件中更改错误。
一 准备工作 要实现将Linux/Apache/PHP4/FastCGI/Oracle/MySQL环境集成,必需先准备好以下软件包: (一)数据库的Perl接口 1perl5的Oracle数据库DBI驱动程序:DBD-Oracle-103targz 2perl5的通用数据库接口程序:DBI-113targz 3perl5的MySQL数据库DBI驱
一 准备工作
要实现将Linux/Apache/PHP4/FastCGI/Oracle/MySQL环境集成,必需先准备好以下软件包:
(一)数据库的Perl接口
1perl5的Oracle数据库DBI驱动程序:DBD-Oracle-103targz
2perl5的通用数据库接口程序:DBI-113targz
3perl5的MySQL数据库DBI驱动程序:Msql-Mysql-modules-12209targz
(二)Oracle数据库
4Oracle 8iR2(816) for Linux安装盘:oracle8161targz
(三)MySQL数据库
5MySQL 32232服务器程序包:MySQL-32232-1i386rpm
6MySQL客户端程序包:MySQL-client-32232-1i386rpm
7MySQL开发包(头文件/库文件):MySQL-devel-32232-1i386rpm
8MySQL共享库程序包:MySQL-shared-32232-1i386rpm
(四)Apache服务器
9Apache 1312源码包:apache_1312targz
(五)PHP模块
10PHP 400源码包:php-400targz
(六)FastCGI模块
11FastCGI模块源码包:mod_fastcgi_224targz
12FastCGI的perl开发模块:FCGI-053targz共5页。
二 安装Oracle客户端
由于Oracle 816是在XWindows下安装的,所以必须是事先配置好XWindow,如果你的显卡不支持XWindow,也可以用exceed进行远程安装(这里不提远程如何安装)。
在此简单列出操作过程:
(一)设置环境变量:
在/etc/profile中加入:
export ORACLE_HOME=/opt/oracle8i/u01
export ORACLE_BASE=/opt/oracle8i
export ORACLE_OWNER=oracle
export ORACLE_SID=ORCL
export ORACLE_TERM=ansi
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG="SIMPLIFIED CHINESE_CHINAZHS16CGB231280"
(二)建立oracle组和用户
#/usr/sbin/groupadd dba
#/usr/sbin/useradd -g dba oracle
#/usr/bin/passwd oracle
(三)创建$ORACLE_HOME目录
#mkdir /opt
#mkdir /opt/oracle8i
#mkdir /opt/oracle8i/u01
#chown -R oracledba /opt
(四)安装reacle 8iR2
以oracle用户登录,解开Oracle安装包:
$tar zxvf oracle8161targz
$startx 启动XWindow界面,并打开一个rxvt终端窗口
$cd Oracle8iR2
$/runInstaller
此时出现Oracle安装界面,在安装时选择安装client/Application User(如果Oracle服务器不在本机上运行,另有专用机器),安装完毕后配置SQLNet8并测试连接远程服务器通过即可。共5页。
三 安装MySQL服务器和客户端
以root身分进入,安装MySQL各个包:
#rpm -ivh MySQL-32232-1i386rpm
#rpm -ivh MySQL-client-32232-1i386rpm
#rpm -ivh MySQL-devel-32232-1i386rpm
#rpm -ivh MySQL-shared-32232-1i386rpm
四 安装Perl的数据库接口模块
以root身分进入,然后执行:
#tar zxvf DBI-113targz
#cd DBI-113
#perl MakefilePL
#make
#make test
#make install
#cd
#rm -rf DBI-113
#
#tar zxvf DBD-Oracle-103targz
#cd DBD-Oracle-103
#perl MakefilePL
#make
#make test
#make install
#cd
#rm -rf DBD-Oracle-103
#
#tar zxvf Msql-Mysql-modules-12209targz
#cd Msql-Mysql-modules-12209
#perl MakefilePL
选择1(MySQL)和y(支持Mysqlpm)
#make
#make test
#make install
#
五 安装Apache+PHP+FastCGI
(一)解开Apache/PHP/FastCGI包:
#tar zxvf apache_1312targz
#tar zxvf php-400targz
#tar mod_fastcgi_224targz
(二)编译PHP4
配置apache编译参数
#cd apache_1312
#/configure --prefix=/usr/local/apache
配置PHP编译参数
#cd /php-400
#/configure --with-apache=/apache_1312
> --with-mysql
> --with-oracle=$ORACLE_HOME
> --with-oci8=$ORACLE_HOME
> --enable-track-vars
编译PHP模块:
#make
#make install
创建phpini参数文件
#cp phpini-dist /usr/local/lib/phpini
#cd
(三)添加FastCGI模块:
#mv mod_fastcgi_224 apache_1312/src/modules/fastcgi
(四)编译安装Apache
#cd apache_1312
配置编译参数
#/configure --prefix=/usr/local/apache
> --activate-module=src/modules/php4/libphp4a
> --activate-module=src/modules/fastcgi/libfastcgia
编译Apache
#make
安装Apache
#make install
(五)关闭原有系统自带的Apache
#/etc/rcd/initd/httpd stop共5页。
(六)配置Apache自身参数:
1编辑/usr/local/apache/conf/httpdconf文件,修改以下参数:
ServerName hostmydomainname
DocumentRoot "/home/httpd/html"
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride None
Order allow,deny
Allow from all
ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/"
AllowOverride None
Options None
Order allow,deny
Allow from all
DirectoryIndex indexhtml indexphtml indexphp indexhtm indexshtml indexfcgi
2修改自启动链接
#cd /etc/rcd/initd
#ln -fs /usr/local/apache/bin/apachectl httpd
(七)配置PHP40参数:
1修改/usr/local/apache/conf/httpdconf文件,,修改以下参数:
增加一行:AddType application/x-httpd-php php phtml php3
2修改/usr/local/apache/bin/apachectl脚本,使启动支持中文ORACLE环境:
在文件中66行("start)")下面加入几行:
export ORACLE_HOME=/opt/oracle8i/u01
export ORACLE_BASE=/opt/oracle8i
export ORACLE_SID=ORCL
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG="SIMPLIFIED CHINESE_CHINAZHS16CGB231280"
3修改/usr/local/apache/conf/srmconf以在CGI程序中使用环境变量:
PassEnv ORACLE_HOME
PassEnv ORACLE_BASE
PassEnv LD_LIBRARY_PATH
PassEnv NLS_LANG
PassEnv ORACLE_SID
PassEnv PATH
(八)配置FastCGI执行环境:
1修改/usr/local/apache/conf/httpdconf文件,修改以下参数:
增加几行:
############ FastCGI Configures Begin ##########################
AddHandler fastcgi-script fcg fcgi fpl
SetHandler fastcgi-script
Order deny,allow
Allow from all
Options ExecCGI Indexes Includes
############### FastCGI Configure End ###########################
2创建fcgi的执行目录
#mkdir /home/httpd/html/fcgi
3安装FCGI的Perl运行模块:
#tar zxvf FCGI-053targz
#cd FCGI-053
#perl MakefilePL
#make
#make install共5页。
六启运并测试
1启动Apache服务器:
#/etc/rcd/initd/httpd start
2编写PHP测试程序:
第一个测试程序:/home/httpd/html/t1php;
第二个测试PHP与Oracle连接的PHP程序(表已经建好):查看是否为中文输出;
第三个测试PHP与MySQL连接的PHP程序(表已经建好)。
3 编写FastCGI的测试代码: /home/httpd/html/fcgi/testfcgi
#!/usr/bin/perl
use FCGI;
use DBI;
$dbname="oracle";
$user="user";
$passwd="password";
$dbh="";
while(FCGI::accept()>=0) {
&parse_form();
$id=$FORM;
$para=$FORM;
print "Content-type: text/html ";
print " ";
if (!$dbh){
print "no oracle, need to connect ";
$dbh = DBI->connect("dbi:Oracle:$dbname",$user,$passwd);
}else{
print "OK, oracle aleady connected ";
}
$sth=$dbh->prepare("select name from testtable where id=15");
$sth->execute;
@recs=$sth->fetchrow_array;
$sth->finish;
print "参数id="$id" and my name is @recs[0] ";
print "参数para="$para" ";
}
####传入参数处理部分#######
sub parse_form {
my($buffer);
my($pairs);
my(@pairs);
my($name);
my($value);
my $meth = $ENV;
if ($meth eq "GET" || $meth eq "HEAD") {
$buffer = $ENV;
}
elsif ($meth eq "POST") {
read(STDIN, $buffer, $ENV);
}
undef %FORM;
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex())/eg;
$value =~ s///g;
if ($allow_html != 1) {
$value =~ s/]| )>//g;
}
$FORM = $value;
}
}
测试看看FastCGI是否正常执行了。
针对无法开机救砖可是使用HiSuite进行修复或者进行手机升级。详细步骤如下:
0条评论