在suse10中安装oracle11g的时候,一直报错的处理过程和整理.
问题:[oracle@localhost install]$ ./runInstaller
正在启动 Oracle Universal Installer...
正在检查安装程序要求...
检查操作系统版本: 必须是RedHat-2.1, redhat-3, redhat-4, SUSE-9 or UnitedLinux-1.0 通过
所有安装程序要求均已满足。
检查临时空间: 必须大于 400 MB。 实际为 5095 MB 通过
检查交换空间: 必须大于 512 MB。 实际为 1027MB 通过
检查监视器: 监视器配置至少必须显示 256 种颜色 未通过 <<<<
>>> 无法使用命令 /usr/X11R6/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。
检查 CPU 速度是否大于 300 MHz。 实际为 1729 MHz 通过
未通过某些可选的先决条件检查 (参见上文)。是否继续? (y/n) [n] y
1.原因是缺少动态链接库,据说缺少支持打印的图形化动态链接库.
首先要用root用户来安装libXp.so,步骤如下:
1)下载.so。google查找一下 libXp.so.6, 从http://rpmfind.net/linux/rpm2html/search.php?query=xorg-X11-deprecated-lib下载之:
ftp://rpmfind.net/linux/fedora/core/updates/4/i386/xorg-x11-deprecated-libs-devel-6.8.2-37.FC4.49.2.1.i386.rpm
执行安装
2)安装之。
把这个文件放到临时目录如/usr/tmp下,然后执行rpm(Red Hat Package Manager)进行安装
# rpm -ivh ./xorg-x11-deprecated-libs-6.9.0-1.112.16.14asp.i386.rpm
warning: ./xorg-x11-deprecated-libs-6.9.0-1.112.16.14asp.i386.rpm: Header V3 DSA signature: NOKEY, key ID 9b3c94f4
Preparing... ########################################### [100%]
package xorg-x11-deprecated-libs-6.9.0-1.112.16.14asp is already installed
3)检查是否安装了此so,使用rmp的查询所有选项<-q(uery)a(ll)>然后抓取出含dep字符的行:
rpm -qa |grep dep
xorg-x11-deprecated-libs-6.9.0-1.112.16.14asp
4)增加一个conf文件让系统能够加载刚才安装的包(被安装到/usr/X11R6/lib目录下了).
在etc/ld.so.conf.d目录下建xorg-x11-deprecated-libs.conf文件,其中包含一行文字"/usr/X11R6/lib"
保存,再运行/sbin/ldconfig。具体如下:
[root@xxx ]#cd etc/ld.so.conf.d/
[root@xxx ]#vi xorg-x11-deprecated-libs.conf
:i
/usr/X11R6/lib
:w
:q
[root@xxx ]# cat xorg-x11-deprecated-libs.conf
/usr/X11R6/lib
[root@xxx ]# /sbin/ldconfig
重新运行./quickstart.sh,就看到跟windows下一样的图形界面了。
另外的常识,现抄一下:
关于/etc/ld.so.conf:
这个文件记录了编译时使用的动态链接库的路径。
默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件
将自己可能存放库文件的路径都加入到/etc/ld.so.conf中是明智的选择
添加方法也极其简单,将库文件的绝对路径直接写进去就OK了,一行一个。例如:
/usr/X11R6/lib
/usr/local/lib
/opt/lib
ldconfig是什么?
它是一个程序,通常它位于/sbin下,供root用户使用。具体作用及用法可以man ldconfig查到
简单的说,它的作用就是将/etc/ld.so.conf列出的路径下的库文件 缓存到/etc/ld.so.cache 以供使用
因此当安装完一些库文件,(例如刚安装好glib),或者修改ld.so.conf增加新的库路径后,需要运行一下/sbin/ldconfig
使所有的库文件都被缓存到ld.so.cache中,如果没做,即使库文件明明就在/usr/lib下的,也是不会被使用的,结果
编译过程中报错,缺少xxx库,去查看发现明明就在那放着,直想砸机器。
切记改动库文件后一定要运行一下ldconfig,在任何目录下运行都可以。
2.[root@localhost~]# xhost local:oracle
或者xhost+
3.在Oracle的配置环境变量:
DISPLAY=:0.0
4.重新启动服务器以Oracle用户登录,开始安装.
备注:其中第四种是最有效的方式.