Want to install Sybase 11.0.3.x on a Linux server with a 2.6 kernel?  Then remember the following:


OK, this has to do with newer glibc and not the kernel.  Seems something has changed and without this the Sybase engine won’t start without it.  If this doesn’t work, try setting it to 0.  Figure out which value you need and put it the sybase user’s .profile.  I wouldn’t put in /etc/profile because I have know idea what affect it will have on other applications.
Now for the system tweaks:


The first two options reduce the chance the Linux kernel will swap to disk. The last two will give Sybase the shared memory it needs.  You can increase and decrease these values as needed.
I’ve successfully used these settings on a SuSE Linux Enterprise 10 server.
A good place to check for ASE on Linux problems is http://www.peppler.org/FAQ/linux.html.
(OK, kernel 2.6 doesn’t have anything to do with it, but I figured that’s what most people will be using in there searches, not glibc 2.x.x. Hopefully it will make these note/tips easier for others to find.)
Update:  While installing sybase 11 on a SLES10sp1 server, I kept running into the following errors:
00:2011/02/06 22:56:46.48 kernel os_create_region: shmat(327680): Invalid argument
00:2011/02/06 22:56:46.48 kernel kbcreate: couldn't create kernel region.
00:2011/02/06 22:56:46.48 kernel kistartup: could not create shared memory

Contrary to the message, upping shmmax didn’t fix anything.  To fix the problem, I had to use ulimit to increase the available stack size.  Adding the following to the start section /etc/intit.d/sybase file fixed the problem:
export LD_POINTER_GUARD=1 ; ulimit -s unlimited ; \
So now it looks like:

echo -n "Starting Sybase ASE ... "
( cd ${SYBASE}/install ; \
unset LANG ; unset LC_ALL ; \
export LD_POINTER_GUARD=1 ; \
ulimit -s unlimited ; \

for run_server in RUN_* ; do \
su -c "startserver -f ${run_server}" sybase > /dev/null 2>&1 ; \
echo -n "${run_server} " ; \
done )

touch /var/lock/subsys/sybase