有一个用户在Suse Linux 10上创建IQ 数据库,当IQ PATH指定了裸设备时建库命令失败。报不能打开相应设备的错误。为了解决这个问题,尝试检查过相应设备的映射及权限都没发现问题,使用dd命令也可以对裸设备进行操作。所以判断不是这些方面的问题。
后来在IQ 12.7 ESD 6的bug list中查到:
ESD06 476329 On a default SLES 10 install, Novell moved the rawctl file
from /dev to /dev/raw, and IQ fails to find it until it is
either copied into /dev or softlinked in /dev. Now IQ will
look into both /dev and /dev/raw to find the rawctl file.
from /dev to /dev/raw, and IQ fails to find it until it is
either copied into /dev or softlinked in /dev. Now IQ will
look into both /dev and /dev/raw to find the rawctl file.
也就是说:“Suse Linux 10把rawctl文件从/dev目录移动到/dev/raw目录了。这样IQ在往raw partition上进行写操作时,由于在 /dev目录下找不到rawctl文件就会失败”。
解决方法是在/dev目录下使用link命令建立到/dev/raw/rawctl的soft link。