<HTML ><HEAD ><TITLE >System Requirements</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.63 "><LINK REL="HOME" TITLE="Ingres II HOWTO" HREF="index.html"><LINK REL="PREVIOUS" TITLE="Ingres" HREF="ingres.html"><LINK REL="NEXT" TITLE="Preparing for the Installation" HREF="prep.html"></HEAD ><BODY CLASS="SECT1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Ingres II HOWTO</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="ingres.html" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="prep.html" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="SYSREQ" >3. System Requirements</A ></H1 ><P >In this section you will see what hardware and software requirements must be met before you can install <SPAN CLASS="APPLICATION" >Ingres</SPAN >. The ingres user, owner of the installation, makes a debut, too.</P ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="HARDWARE" >3.1. Hardware</A ></H2 ><P >The minimal hardware capable of running <SPAN CLASS="APPLICATION" >Ingres</SPAN > is:</P ><P ></P ><UL ><LI ><P >486x33 processor, Pentium recommended.</P ></LI ><LI ><P >16 Mb <SPAN CLASS="ACRONYM" >RAM</SPAN >, with 32 Mb swap space (64 Mb <SPAN CLASS="ACRONYM" >RAM</SPAN > recommended).</P ></LI ><LI ><P >200 Mb disk space if you install everything (150 Mb will do for the <SPAN CLASS="ACRONYM" >SDK</SPAN >). You do not need to have this space in one file system: we will discuss the possibilities in the section <A HREF="prep.html" >Preparing for the Installation</A >.</P ></LI ></UL ><DIV CLASS="NOTE" ><P ></P ><TABLE CLASS="NOTE" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="../images/note.gif" HSPACE="5" ALT="Note"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >This is the <EM >minimum</EM > recommended configuration. <SPAN CLASS="APPLICATION" >Ingres</SPAN >, like most other <SPAN CLASS="ACRONYM" >RDBMSs</SPAN >, is a fairly resource-hungry application. While your development system will probably run beatifully on a 166 MHz Pentium with 64 Mb <SPAN CLASS="ACRONYM" >RAM</SPAN >, a live system with potentially many concurrent users would require more iron.</P ></TD ></TR ></TABLE ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="SOFTWARE" >3.2. Software</A ></H2 ><P >The following software must be present for <SPAN CLASS="APPLICATION" >Ingres</SPAN > to run:</P ><P ></P ><UL ><LI ><P >kernel 2.0.34 or higher.</P ></LI ><LI ><P >libcrypt.so - this library is not included in every Linux distribution. If this is the case with your system, check your distribution's Web site: they must have it somewhere.</P ></LI ><LI ><P >uncompress - certain Linux distributions (such as Caldera's Open Linux 2.2) do not contain the <SPAN CLASS="APPLICATION" >ncompress</SPAN > package. Again, check your distribution's Web site if you do not have it.</P ></LI ></UL ><P >Working glibc versions:</P ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN300" ></A ><P ></P ><TABLE BORDER="1" CLASS="CALSTABLE" ><THEAD ><TR ><TH WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >glibc </TH ><TH WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >SDK </TH ><TH WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >Full Version </TH ></TR ></THEAD ><TBODY ><TR ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >glibc 2.07 (eg RedHat 5.2) </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >Yes. </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >No. </TD ></TR ><TR ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >glibc 2.1 (eg RedHat 6.0) </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >Yes but you need the RedHat compatibility packages and an <SPAN CLASS="APPLICATION" >Ingres</SPAN > patch to be able to use the forms-based development tools. See <A HREF="misc.html#FORMS" >Forms-Based Development Tools</A > for details. </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >Yes. </TD ></TR ><TR ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >glibc 2.1.1, 2.1.2 (eg RedHat 6.1) </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >No. </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >Yes. </TD ></TR ><TR ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >glibc 2.1.3 (eg RedHat 6.2) </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >See glibc 2.1. </TD ><TD WIDTH="33%" ALIGN="CENTER" VALIGN="TOP" >Yes. </TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ><P >If you are unsure of the version of your glibc, check the <TT CLASS="FILENAME" >/lib</TT > directory:</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" ># ls -l /lib/libc*so </PRE ></FONT ></TD ></TR ></TABLE ><P >The output should be something like:</P ><TABLE BORDER="1" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="SCREEN" >-rwxr-xr-x ... /lib/libc-2.1.3.so </PRE ></FONT ></TD ></TR ></TABLE ><P >The version of my glibc is apparently 2.1.3.</P ><DIV CLASS="NOTE" ><P ></P ><TABLE CLASS="NOTE" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="../images/note.gif" HSPACE="5" ALT="Note"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >There is no guarantee that if your system meets the above requirements you will be able to install <SPAN CLASS="APPLICATION" >Ingres</SPAN > on it. Sticking to a distribution that is explicitly mentioned in the release notes of your <SPAN CLASS="APPLICATION" >Ingres</SPAN > version is the best way to avoid installation problems.</P ></TD ></TR ></TABLE ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="KERNEL" >3.3. Kernel Parameters</A ></H2 ><P >The default settings of the Linux kernel are adequate for a development <SPAN CLASS="APPLICATION" >Ingres</SPAN > environment. For a live system, however, probably to increase the size of the database cache(s), you may want to change the built-in value of the <TT CLASS="PARAMETER" ><I >SHMMAX</I ></TT > parameter. This parameter sets the maximum size of a shared memory segment. By default, it is 32 Mb which allows for a somewhat lesser buffer cache.</P ><P >You have two choices to change the value of <TT CLASS="PARAMETER" ><I >SHMMAX</I ></TT >: </P ><P >As root, simply <B CLASS="COMMAND" >echo</B > the new value into <TT CLASS="FILENAME" >/proc/sys/kernel/shmmax</TT >:</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" >#echo 83886080 > /proc/sys/kernel/shmmax </PRE ></FONT ></TD ></TR ></TABLE ><P >In the example above, we set the value of <TT CLASS="PARAMETER" ><I >SHMMAX</I ></TT > to 80 Mb. The change takes effect immediately but after a reboot, the original value is restored.</P ><P >The other possibility is to change <TT CLASS="PARAMETER" ><I >SHMMAX</I ></TT >'s default value in the kernel source (the relevant header file is <TT CLASS="FILENAME" >/usr/src/linux/include/asm/shmparam.h</TT > if you have installed the source). In this case, you may also have to modify other parameters in the file, then rebuild the kernel. I suggest you do it only if you know what you are doing. For information on how to configure and compile the kernel see <A HREF="http://www.linuxdoc.org/HOWTO/Kernel-HOWTO.html" TARGET="_top" > The Linux Kernel HOWTO</A > by Brian Ward.</P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="INGUSER" >3.4. The ingres User and II_SYSTEM</A ></H2 ><P >We need an account called ingres to install and run <SPAN CLASS="APPLICATION" >Ingres</SPAN >. He will own the installed software and only he can perform system management tasks such as starting and stopping <SPAN CLASS="APPLICATION" >Ingres</SPAN >.</P ><P >The ingres user may belong to any group. In the following example, we will create a separate group for him.</P ><P >The verified (therefore, recommended) shell for the ingres user is <B CLASS="COMMAND" >bash</B >. All examples in this paper apply to this shell. If you use some other shell (which is probably just as fine), take into account the differences in syntax.</P ><P >The binaries, shared libraries, configuration files and other files which make up the <SPAN CLASS="APPLICATION" >Ingres</SPAN > software, will be located in a tree structure after installation. You will set the root of this tree via the shell variable <TT CLASS="ENVAR" >II_SYSTEM</TT > in the environment of the ingres user (to be exact, the root directory will be <TT CLASS="FILENAME" >$II_SYSTEM/ingres</TT >).</P ><P >If you plan to install the whole software, either the <SPAN CLASS="ACRONYM" >SDK</SPAN >, or the full version, make sure you have the following free space under <TT CLASS="FILENAME" >$II_SYSTEM/ingres</TT >:</P ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN371" ></A ><P ></P ><TABLE BORDER="1" CLASS="CALSTABLE" ><THEAD ><TR ><TH WIDTH="50%" ALIGN="CENTER" VALIGN="TOP" >SDK </TH ><TH WIDTH="50%" ALIGN="CENTER" VALIGN="TOP" >Full Version </TH ></TR ></THEAD ><TBODY ><TR ><TD WIDTH="50%" ALIGN="CENTER" VALIGN="TOP" >70 Mb </TD ><TD WIDTH="50%" ALIGN="CENTER" VALIGN="TOP" >90 Mb </TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ><P >10 Mb extra free space is needed during installation.</P ><DIV CLASS="TIP" ><P ></P ><TABLE CLASS="TIP" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="../images/tip.gif" HSPACE="5" ALT="Tip"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >If this is the first time you install <SPAN CLASS="APPLICATION" >Ingres</SPAN > (I hope you start with the <SPAN CLASS="ACRONYM" >SDK</SPAN >, not a live system), I suggest you keep the whole installation (the <SPAN CLASS="APPLICATION" >Ingres</SPAN > software, databases, backups, sort areas, etc.) in one place so that you can find every component easily. If you have at least 150-200 Mb free space under <TT CLASS="FILENAME" >$II_SYSTEM/ingres</TT > and you do not plan to create large databases (at least, not for some time), your system will work without problems. Should you at any later time run out of space, you will always have the possibility to relocate some of your databases to other partitions.</P ></TD ></TR ></TABLE ></DIV ><P >In the following, I will assume that <TT CLASS="ENVAR" >II_SYSTEM</TT > is set to <TT CLASS="FILENAME" >/opt</TT >.</P ><P >Logging in as root, execute the tasks mentioned above:</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" ># useradd -d /opt/ingres -s /bin/bash ingres # chmod 755 /opt/ingres # passwd ingres </PRE ></FONT ></TD ></TR ></TABLE ><P >The <B CLASS="COMMAND" >useradd</B > command creates a group with the same name as the new user if you do not specify the group on the command line. It also creates the user's home directory.</P ><P >We set the home directory of ingres to <TT CLASS="FILENAME" >/opt/ingres</TT > (<TT CLASS="FILENAME" >$II_SYSTEM/ingres</TT >). This is not mandatory but convenient. </P ><P >Finally, append the following lines to the <TT CLASS="FILENAME" >.bashrc</TT > file of ingres:</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" >umask 022 export II_SYSTEM=/opt export PATH=$II_SYSTEM/ingres/bin:$II_SYSTEM/ingres/utility:$PATH export LD_LIBRARY_PATH=/lib:/usr/lib:$II_SYSTEM/ingres/lib export ING_EDIT=/bin/vi if [ -n "$DISPLAY" ] then export TERM_INGRES=vt100fx else export TERM_INGRES=vt100f fi </PRE ></FONT ></TD ></TR ></TABLE ><P ><TT CLASS="ENVAR" >ING_EDIT</TT > sets the editor that can be called from <SPAN CLASS="APPLICATION" >Ingres</SPAN > utilities or application programs. Naturally, you can use any editor, not just <B CLASS="COMMAND" >vi</B >. You must, however, specify the whole access path to the program. (If you stick to <B CLASS="COMMAND" >vi</B >, check if it is under <TT CLASS="FILENAME" >/bin</TT >: it may be somewhere else in your system.)</P ><DIV CLASS="NOTE" ><P ></P ><TABLE CLASS="NOTE" WIDTH="100%" BORDER="0" ><TR ><TD WIDTH="25" ALIGN="CENTER" VALIGN="TOP" ><IMG SRC="../images/note.gif" HSPACE="5" ALT="Note"></TD ><TD ALIGN="LEFT" VALIGN="TOP" ><P >If the <TT CLASS="ENVAR" >EDITOR</TT > shell variable is set, it overrides the value of <TT CLASS="ENVAR" >ING_EDIT</TT >.</P ></TD ></TR ></TABLE ></DIV ><P >Setting <TT CLASS="ENVAR" >TERM_INGRES</TT > is necessary for the terminal to work properly. Forms-based <SPAN CLASS="APPLICATION" >Ingres</SPAN > utilities, such as the installer itself, and also applications created with traditional <SPAN CLASS="APPLICATION" >Ingres</SPAN > development tools (<SPAN CLASS="ACRONYM" >ABF</SPAN >, Vision) make heavy use of function keys. The <TT CLASS="FILENAME" >.bashrc</TT > above sets <TT CLASS="ENVAR" >TERM_INGRES</TT > according to the terminal type (X, or VT100-like).</P ><P >These settings must be included in the <TT CLASS="FILENAME" >.bashrc</TT > file of every <SPAN CLASS="APPLICATION" >Ingres</SPAN > user.</P ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="ingres.html" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="prep.html" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Ingres</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Preparing for the Installation</TD ></TR ></TABLE ></DIV ></BODY ></HTML >