[TriLUG] CentOS 5.5: kickstart shmall and shmmax woes

Kristopher Kane kristopher.kane at gmail.com
Thu Jan 6 19:33:29 EST 2011


On Thu, Jan 6, 2011 at 6:16 PM, Brian Weaver <cmdrclueless at gmail.com> wrote:

> Well I've run into an issue that kind of has me shaking my head. I'm
> wondering if anyone on the list might have some idea what is causing the odd
> behavior that I'm seeing.
>
> The problem I'm running into has to do with a new kickstart install of a
> CentOS 5.5 system with additional custom packages. We have a build process
> that replicates the ISO layout so that we can build an installable DVD. As
> part of the process we build two sets of kickstart configuration files. One
> for the ISO and one for a network install via HTTP. The kickstart
> configuration files are built from an identical master source with just the
> URL being changed. Using the 'diff' command I can verify that the only
> difference between the two configuration files is that one has 'url --url
> ....' and the other has 'cdrom' as the installation source.
>
> One of the software packages installed is PostgreSQL version 8.4 that is in
> the distribution. Our code later creates a database during the %post section
> of the kickstart file. The problem I'm having is that PostgreSQL is not
> starting during the network install but is working fine during the cdrom
> install. The problem is the values 'kernel.shmmax' and 'kernel.shmall'
>
> The default shared memory size is too small on the network installation but
> is sufficiently large enough on the cdrom installation. The two installation
> use the same kickstart file (except installation source), vmlinuz, and
> initrd.img. To further complicate matters I accessed the shell when the
> installation starts via ALT-F2 and initially the values for shmmax and
> shmall are *identical* when the system starts installing packages. At some
> point during the installation the values for shmmax and shmall change on the
> cdrom install but do not on the network install.
>
> The two system install exactly the same RPMs, have the same partition
> layout, and have been tested on the same hardware. I checked each rpm in the
> i386/CentOS directory of the DVD using 'rpm -q --triggers --scripts -p $rpm'
> to see if any of them changed the values of shmmax or shmall. I couldn't
> find any scripts that modified the kernel values.
>
> I hope I managed to explain it well enough for all to understand the
> problem. If you have any ideas I'd like to know.
>
> Thanks
>
> -- Weave
>
>

Hi Weave,

This post was interesting to me so I did some searching and found this:

http://wiki.oracle.com/page/Linux+installation+kickstart+for+Oracle+database

<excerpt from Oracle Kickstart>
# Change kernel parameters
cat >> /etc/sysctl.conf << EOF

##############################
# Oracle Database requirements
##############################

# The max value for shmmax on a 32bit machine is 4294967295
#kernel.shmmax = 536870912

kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 658576
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 1048536
net.core.wmem_max = 1048536
EOF


</excerpt>

You will have to figure out your max values.  I also found this:

http://developer.postgresql.org/pgdocs/postgres/kernel-resources.html

Hope that helps,

-Kristopher Kane



More information about the TriLUG mailing list