Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I did a bit of searching and seem to have found that I can check the current paramters with /sbin/sysctl -a:
$ sudo /sbin/sysctl -a | grep sem
Password:
kernel.sem = 250 32000 32 128
And to change a kernel parameter edit /etc/sysctl.conf and mofity whatever you need. When I look at this file, though, I don't see any entries for the parameters I want to change. Am I looking in the right place? Am I missing something?
Yes. If they're not in the conf file it means you're using the default settings. Once you add to the conf file and run the command to reread it the new settings will take effect.
I'd caution you on the "half of physical memory" for shmmax. The Oracle SGA resides primarily in a single shared memory segment and this parameter controls the size of a shared memory segment. If the box is a dedicated database server with no other apps expected to run on it making shmmax larger will allow for a larger SGA which will increase DB performance. You don't want to use all the memory but it's not unusual to have this larger than the half of physical memory they indicate.
There are other limitations on memory usage though. If you're not using the hugemem kernel you have a limit of under 2 GB for memory used by a single process.
Thanks, that's easy enough. One thing I'm unsure about, though. I need to ensure the following values are set:
semmsl 250
semmns 32000
semopm 100
semmni 128
All of these values seem to be grouped into kernel.sem:
$ sudo /sbin/sysctl -a | grep sem
Password:
kernel.sem = 250 32000 32 128
What is the proper form to set only the third value -- semopm. I tried a few things but none of them worked:
$ sysctl -w kernel.semopm=100
error: 'kernel.semopm' is an unknown key
$ sysctl -w semopm=100
error: 'semopm' is an unknown key
$ sysctl -w kernel.sem=250 32000 100 128
kernel.sem = 250
error: '32000' must be of the form name=value
error: '100' must be of the form name=value
error: '128' must be of the form name=value
The same goes for how I would change the following:
ip_local_port_range Minimum:1024, Maximum: 65000
Also, it seems that when the changes are made using "sysctl -w variable=value", it doesn't stick? I used this, rebooted, and the values are back to their originals. I'll just change them in the conf file, but I just want to confirm this.
yes, they will go back to default on a reboot. To make the change permanent, add or change the following line in the file /etc/sysctl.conf. This file is used during the boot process.
the command should be used like this:
sysctl -w kernel.sem="250 32000 100 128"
or: echo 250 32000 100 128 > /proc/sys/kernel/sem
sysctl -w net.ipv4.ip_local_port_range="1024 65000"
sysctl -w kernel.shmall=2097152
The four semaphore parameters are actually set by kernel.sem:
# cat /proc/sys/kernel/sem
250 32000 32 128
SEMMSL, SEMMNS, SEMOPM, and SEMMNI.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.