Tuning Linux System Parameters w/o Kernel Recompiles?
kernelInit.D asks: "I love Linux, but there is no way I am going to get the DBA's excited about having to recompile the kernel to install Oracle. Why can't Linux have something like Solaris's /etc/system file, where I can tune the OS without going through the hassle of hunting through source to make performance changes?" This is a good point, there are several parameters in the Linux config which could be moved to a file which the kernel consults at boot time. Are there technical or design limitations that have prevented its implementation?
Marcel Gagne has written a nice series of intro articles on this topic for The Linux Journal. You can find the articles, called Tweaking Tux at LJ under the System Administration section in the archives section, or listed on his personal page of his company's website.
The /proc/sys directory and the modules are intended for exactly this. There is a nice hierarchial structure in /proc/sys that allows you to change many parameters on the fly. You can put echo <whatever> > /proc/sys/<whatever> in init scripts to set many parameters.
/etc/conf.modules to load modules as they are needed.
For the modules, you can add stuff to
This stuff is very well documented, take a look around.
I was reading Aelieen Frisch's _Essential System Administration_ (2e) last night and ran across the tidbit that AIX systems have no need of kernel recompilation becuase literally everything can be reconfiured on the fly with CLI commands (analogous to sysctl or something, but applying to everything). Of course AIX only runs on IBM hardware to my knowledge so the kernel team for AIX has a much more limited set of hardware to accomodate than linux does. (Don't take this as a recommendation of AIX per sé, I have no hands-on experience with it.)
--
News for Geeks in Austin, TX
We've had trouble loading in on RH7, though, so be warned.
-no broken link
Oracle worked pretty much out of the box on our relatively stock Red Hat 6.2 boxes.
/etc/rc.d/rc.local:
/proc/sys/fs/file-max
/proc/sys/fs/inode-max
I only made one change. Add this to
# Increase system-wide file descriptor limit.
echo 8192 >
echo 24576 >