Re: oninit: Cannot open chunk '/usr/online_space001'. errno = 21
Posted in 2000
From: Marco Schmidt <schmidt@inf.ethz.ch>
>
>Marco Schmidt <schmidt@inf.ethz.ch> wrote:
>: Paul Watson <paulw@wfsoftware.com> wrote:
>: : error 21 is a 'file is a directory', is /usr/online_space001 a
>directory
>: : (bad) or a file (good)?
>
>: : optimiza@my-deja.com wrote:
>: :>
>: :> I get this error when I run oninit -iv:
>: :> oninit: Cannot open chunk '/usr/online_space001'. errno = 21
>: :>
>
>: I have nearly the same error:
>: oninit: Cannot open chunk '/local/informix/root'. errno = 2
>
>: This file does not exist, thats right, but I tried to create
>: a new database and it should create the file!
>
>Okay. I got it.
>The file MUST exist and MUST have the permissions "0660" on UNIX.
>
>cat /dev/null >/local/informix/root
>chmod 660 /local/informix/root
>
>Why cant this be described in the manual?
That, sir, is a bloody good question. However, if you look in the
Administrator's Guide, page 3-8, it says:
"Creating a Raw Device or Unbuffered File
To achieve better performance, UNIX uses raw disk devices, and
Windows NT uses unbuffered NTFS files to bypass the buffering of disk I/O
that the operating system normally performs. To create raw devices on UNIX,
follow the instructions provided with your operating system. To configure
unbuffered NTFS files on Windows NT, follow the steps in the installation
program.
Some operating systems use the concept of a logical volume, and others use a
logical unit. Each of these terms represents the basic unit of physical disk
space that the operating system reserves for the database server. A chunk is
a physical partition, logical volume, a logical unit, or regular file that
has been assigned to the database server. Use the onspaces utility to create
chunks.
Important: You must define your logical volume or logical unit to be no
larger than a chunk. To determine which chunk size your operating system
supports, refer to your machine notes file."
It even says:
"Creating Standard Device Names
Informix recommends that you use symbolic links to assign abbreviated
standard device names for each raw disk device. If you have symbolic links,
you can replace a disk that has failed with a new disk by assigning the
symbolic name to the new disk.
To create a link between the character-special device name and another
filename, use the UNIX link command (usually ln).
Execute the UNIX command ls -l (ls -lg on BSD) on your device directory to
verify that both the devices and the links exist. The following example
shows links to raw devices. If your operating system does not support
symbolic links, you can use hard links.
% ls -lg
crw-rw--- /dev/rxy0h
crw-rw--- /dev/rxy0a
lrwxrwxrwx /dev/my_root@->/dev/rxy0h
lrwxrwxrwx /dev/raw_dev2@->/dev/rxy0a"
And on page 3-9, it says:
"On UNIX, the owner and group must be informix, and the permissions must be
set to read and write for both user and group (but not for others)."
Or in other words, it is in the manual, if you would just take the trouble
to read it.
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
Share information about yourself, create your own public profile at
http://profiles.msn.com.