View Single Post
  #5  
Old 10-23-2007, 03:08 AM
John Adams
Demi-God
 
Join Date: Jul 2006
Posts: 1,552
Default

A temporary solution appears to be running this on my Linux FC4 server:

Code:
echo 83886080 > /proc/sys/kernel/shmmax
This sets my current shared memory at 80mb, but when I reboot it will go back to the default 32mb. This is where things get scarey with Linux for me; the perma fix is to change Kernel source and recompile. I have never done this, and I will certainly screw things up

Some general info about making this change permanent (related to installing Ingres, but still informative):
Quote:
3.3. Kernel Parameters
The default settings of the Linux kernel are adequate for a development Ingres 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 SHMMAX 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.

You have two choices to change the value of SHMMAX:

As root, simply echo the new value into /proc/sys/kernel/shmmax:

Code:
#echo 83886080 > /proc/sys/kernel/shmmax
In the example above, we set the value of SHMMAX to 80 Mb. The change takes effect immediately but after a reboot, the original value is restored.

The other possibility is to change SHMMAX's default value in the kernel source (the relevant header file is /usr/src/linux/include/asm/shmparam.h 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 The Linux Kernel HOWTO by Brian Ward.
Source: http://www.linux.com/base/ldp/howto/...TO/sysreq.html

If I figure it out, I'll post it. I cannot imagine I am the only one with this problem... but maybe a newer distro could solve it?
Reply With Quote