background process VKTM did not start

GFY(6191982) 15:49:09
提示的信息太少。 至少需要告诉:什么OS及版本号 什么DB及版本号?。 不然无法确定问题具体在什么地方。
出现这样的错误–10g及之前原因主要有:版本不兼容OS系统而造成的
如果是11g–>初了上面的原因还有就是tmpfs不够大而造成的
hacker(610358898) 15:49:34
Centos 6.0
Oracle 11g
GFY(6191982) 15:49:54
嗯 你看看是不是tmpfs不够大
hacker(610358898) 15:50:23
tmpfs,嗯,这个我现在就 去查一下。
GFY(6191982) 15:50:50
打开 /etc/fstab 找到tmpfs 那一行 default的位置加上 ,size=XXXXX 具体数值我不清楚
忘记了是什么单位
hacker(610358898) 15:51:20
嗯,好的, 十分感谢。我马上就去找。
嗯,我现在找到 后, 发上截图。
hacker(610358898) 15:53:06
#
# /etc/fstab
# Created by anaconda on Tue Nov 15 22:28:23 2011
#
# Accessible filesystems, by reference, are maintained under ‘/dev/disk’
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=c21ed4e8-52db-4586-a436-97d87a1934e1 / ext4 defaults 1 1
UUID=16629fe8-3bb1-4e2d-be0b-1e93460415b7 /home ext4 defaults 1 2
UUID=e2421f57-9618-4cb1-81c8-e9d2e8a17021 swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
hacker(610358898) 15:53:14
这就是 里面的 内容了。
swap defaults 0 0
hacker(610358898) 15:53:32
这个 是 00 是不是 不对呀
GFY(6191982) 15:53:41
不是
hacker(610358898) 15:54:04
嗯,那这里面 大哥 可以 看出 有什么问题吗
GFY(6191982) 15:54:09
defaults,size=100000
GFY(6191982) 15:54:18
改成这样看看行不行
试试看吧
GFY(6191982) 15:56:15
如果不行,就用rhel5 来做 可能会好些
hacker(610358898) 15:56:49
#
# /etc/fstab
# Created by anaconda on Tue Nov 15 22:28:23 2011
#
# Accessible filesystems, by reference, are maintained under ‘/dev/disk’
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=c21ed4e8-52db-4586-a436-97d87a1934e1 / ext4 defaults 1 1
UUID=16629fe8-3bb1-4e2d-be0b-1e93460415b7 /home ext4 defaults 1 2
UUID=e2421f57-9618-4cb1-81c8-e9d2e8a17021 swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults,size=100000 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
GFY(6191982) 16:03:17
检查swap是否满足 检查shm是否达到4g
background process \”%s\” did not start –swap不够
background process “VKTM” did not start –shm不够

GFY(6191982) 16:03:38

GFY(6191982) 16:03:49
你的swap空间有多少
GFY(6191982) 16:04:09
swapon -s 看看
GFY(6191982) 16:04:28
然后 看看 sysctl.conf 中有关 shm的内核参数是否设置了
hacker(610358898) 16:04:52
嗯,好,我一个一个去看,今天可真有幸碰到高手了,非常感激。

GFY(6191982) 16:05:09
刚才的那个size=…… 暂时生效不了,先删除size=……
GFY(6191982) 16:05:33
如果上面swap 和 shm都没有问题,再搞 tmpfs
hacker(610358898) 16:05:52
[root@cic ~]# swapon -s
Filename Type Size Used Priority
/dev/sda3 partition 40959992 0 -1
[root@cic ~]# ^C
[root@cic ~]# ^C
[root@cic ~]#
GFY(6191982) 16:06:24
tmpfs可以这样做 mount -o remount,size=1000000 none /dev/shm
hacker(610358898) 16:06:26
40G 应该够用的吧。1T的硬盘
GFY(6191982) 16:07:25
应该够了
hacker(610358898) 16:07:26
mount -o remount,size=1000000 none /dev/shm   嗯,我输入这个命令是吗,我现在就 输入这个命令
hacker(610358898) 16:07:31
嗯嗯
GFY(6191982) 16:07:33
不要
GFY(6191982) 16:07:51
先确定 /etc/sysctl.conf 中的shm设置是怎样的
GFY(6191982) 16:08:01
grep shm /etc/sysctl.conf
hacker(610358898) 16:08:20
嗯 这就去 查看
GFY(6191982) 16:08:25
看看 shm的相关设置
GFY(6191982) 16:08:27
建议在centos 6上安装11.2.0.3 可以解决很多11g之前版本的bug
hacker(610358898) 16:09:01
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.
# Controls IP packet forwarding
net.ipv4.ip_forward = 0
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0
# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0
# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1
# Disable netfilter on bridges.
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-arptables = 0
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 8053063680
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586

hacker(610358898) 16:09:13
里面 是这个样子。
hacker(610358898) 16:10:12
因为内存是15G 所以这个参数 是这样的 kernel.shmmax = 8053063680
hacker(610358898) 16:10:14
一半
GFY(6191982) 16:10:46

GFY(6191982) 16:11:19
你再输入一下mount命令 看看内容
hacker(610358898) 16:11:30
这个文件有问题吗 这个如果没问题了 我是不是改了那个tmpfs试试看
GFY(6191982) 16:12:18
不是 你输入一下mount命令 看看结果
hacker(610358898) 16:12:49
[root@cic ~]# mount
/dev/sda1 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda2 on /home type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on arb/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/sr0 on /media/CentOS_6.0_Final type iso9660 (ro,nosuid,nodev,uhelper=udisks,uid=501,gid=501,iocharset=utf8,mode=0400,dmode=0500)
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
GFY(6191982) 16:13:45

GFY(6191982) 16:14:10
你执行一下那个mount命令把
GFY(6191982) 16:14:47
tmpfs可以这样做 mount -o remount,size=1000000 none /dev/shm 这个shm是1G的大小
GFY(6191982) 16:15:28
如果还不行 建议你升级oracle来安装,或者升级linux
或者降级linux用 rhel5
hacker(610358898) 16:16:07
嗯  mount -o remount,size=1000000 none /dev/shm 输入这个命令, 那文件还需要改吗
GFY(6191982) 16:16:44
这个命令是暂时更改,下次重启将会失效
hacker(610358898) 16:16:46
嗯, 好的,搞这个 这么长时间了, 先尽力 试试,能搞好,就搞出来,实在没有办法了,也只有换了。
GFY(6191982) 16:17:10
如果现在能起作用,就说明是他的问题,如果不起作用,那个文件就原样吧
hacker(610358898) 16:17:15
嗯,如果修改文件会 永久有效 是吗。  切换用户 没事吧?
GFY(6191982) 16:17:38
mount -o remount,size=4G /dev/shm
[root@updba ~]# df -h | grep shm
tmpfs 4.0G 0 4.0G 0% /dev/shm
GFY(6191982) 16:17:46
直接设成4G吧
GFY(6191982) 16:17:50
别1G了
GFY(6191982) 16:17:55
4G试试
hacker(610358898) 16:18:19
嗯,好, 谢谢你,我先 试试看。

 
谢谢楼上的高手,这个问题纠结了我2与同事2天多时间,至此感谢。
来自linux/oracle技术交流QQ群:121574924 同时非常感谢北京尚观linux培训老师(QQ:121325863)提供信息帮助。
 

linux下安装GCC编译器步骤

下面是我在百度中找到的,高手们总结的安装GCC编译器的步骤:
1. 下载
在GCC网站上(http://gcc.gnu.org/)或者通过网上搜索可以查找到下载资源。可供下载的文件一般有两种形式:gcc-3.4.0.tar.gz和gcc-3.4.0.tar.bz2,只是压缩格式不一样,内容完全一致,下载其中一种即可。
2. 解压缩
根据压缩格式,选择下面相应的一种方式解包(以下的“%”表示命令行提示符):
% tar xzvf gcc-3.4.0.tar.gz或者% bzcat gcc-3.4.0.tar.bz2 | tar xvf –
新生成的gcc-3.4.0这个目录被称为源目录,用${srcdir}表示它。以后在出现${srcdir}的地方,应该用真实的路径来替换它。用pwd命令可以查看当前路径。
在${srcdir}/INSTALL目录下有详细的GCC安装说明,可用浏览器打开index.html阅读。
3. 建立目标目录
目标目录(用${objdir}表示)是用来存放编译结果的地方。GCC建议编译后的文件不要放在源目录${srcdir]中(虽然这样做也可以),最好单独存放在另外一个目录中,而且不能是${srcdir}的子目录。
例如,可以这样建立一个叫 gcc-build 的目标目录(与源目录${srcdir}是同级目录):
% mkdir gcc-build
% cd gcc-build
以下的操作主要是在目标目录 ${objdir} 下进行。
4. 配置
配置的目的是决定将GCC编译器安装到什么地方(${destdir}),支持什么语言以及指定其它一些选项等。其中,${destdir}不能与${objdir}或${srcdir}目录相同。
配置是通过执行${srcdir}下的configure来完成的。其命令格式为(记得用你的真实路径替换${destdir}):
% ${srcdir}/configure –prefix=${destdir} [其它选项]
例如,如果想将GCC 3.4.0安装到/usr/local/gcc-3.4.0目录下,则${destdir}就表示这个路径。
在我的机器上,我是这样配置的:
% ../gcc-3.4.0/configure –prefix=/usr/local/gcc-3.4.0 –enable-threads=posix –disable-checking –enable–long-long –host=i386-redhat-linux –with-system-zlib –enable-languages=c,c++,java
将GCC安装在/usr/local/gcc-3.4.0目录下,支持C/C++和JAVA语言,其它选项参见GCC提供的帮助说明。
5. 编译
% make
这是一个漫长的过程。在我的机器上(P4-1.6),这个过程用了50多分钟。
6. 安装
执行下面的命令将编译好的库文件等拷贝到${destdir}目录中(根据你设定的路径,可能需要管理员的权限):
% make install
至此,GCC 3.4.0安装过程就完成了。
6. 其它设置
GCC 3.4.0的所有文件,包括命令文件(如gcc、g++)、库文件等都在${destdir}目录下分别存放,如命令文件放在bin目录下、库文件在lib下、头文件在include下等。由于命令文件和库文件所在的目录还没有包含在相应的搜索路径内,所以必须要作适当的设置之后编译器才能顺利地找到并使用它们。
6.1 gcc、g++、gcj的设置
要想使用GCC 3.4.0的gcc等命令,简单的方法就是把它的路径${destdir}/bin放在环境变量PATH中。我不用这种方式,而是用符号连接的方式实现,这样做的好处是我仍然可以使用系统上原来的旧版本的GCC编译器。
首先,查看原来的gcc所在的路径:
% which gcc
在我的系统上,上述命令显示:/usr/bin/gcc。因此,原来的gcc命令在/usr/bin目录下。我们可以把GCC 3.4.0中的gcc、g++、
gcj等命令在/usr/bin目录下分别做一个符号连接:
% cd /usr/bin
% ln -s ${destdir}/bin/gcc gcc34
% ln -s ${destdir}/bin/g++ g++34
% ln -s ${destdir}/bin/gcj gcj34
这样,就可以分别使用gcc34、g++34、gcj34来调用GCC 3.4.0的gcc、g++、gcj完成对C、C++、JAVA程序的编译了。同时,仍然能够使用旧版本的GCC编译器中的gcc、g++等命令。
6.2 库路径的设置
将${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH中,最好添加到系统的配置文件中,这样就不必要每次都设置这个环境变量了。
例如,如果GCC 3.4.0安装在/usr/local/gcc-3.4.0目录下,在RH Linux下可以直接在命令行上执行或者在文件/etc/profile中添加下面一句:
setenv LD_LIBRARY_PATH /usr/local/gcc-3.4.0/lib:$LD_LIBRARY_PATH
7. 测试
用新的编译命令(gcc34、g++34等)编译你以前的C、C++程序,检验新安装的GCC编译器是否能正常工作。
8. 根据需要,可以删除或者保留${srcdir}和${objdir}目录。
 

windows + linux 打造双系统

1、把Linux的ISO文件(Reg Flag)放在FAT32格式的盘上;
2、下载grub for dos,将其解压到C盘根下(boot文件夹和grldr文件)
[attach]160832[/attach]
3、在C盘boot.ini后加上一条:
C:\grldr=my grub tools,提取Reg Flag.iso的isolinu文件夹到C盘
4、修改boot\grub文件夹下的menu.lst,如下:
[attach]160833[/attach]
title Linux Reg Flag Setup
kernel (hd0,0)/isolinux/vmlinuz
initrd (hd0,0)/isolinux/initrd.img
5、重启电脑,选择“my grub tools”,进入DOS工具箱
[attach]160834[/attach]
6、选择“Linux Reg Flag Setup”,进入Linux引导安装
[attach]160835[/attach]