- How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?
- Posted by linuxquestion@yahoo.com on November 13th, 2003
HI all,
I'm using: Linux Suse personal edition 8.2
I am using the dbca with Oracle 9.2. It keeps
running out of memory with the ora-27123 error.
As the docs said, I did this:
echo `expr 2048 \* 1024 \* 1024` > /proc/sys/kernel/shmmax
cat /proc/sys/kernel/shmmax
2147483648
reboot
---------------
But, then I got the same symptom.
I checked the file.
cat /proc/sys/kernel/shmmax
33554432
So, it didn't keep the value!!!
ipcs -l
------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 32768
max total shared memory (kbytes) = 8388608
min seg size (bytes) = 1
------ Semaphore Limits --------
max number of arrays = 1024
max semaphores per array = 250
max semaphores system wide = 256000
max ops per semop call = 32
semaphore max value = 32767
------ Messages: Limits --------
max queues system wide = 128
max size of message (bytes) = 8192
default max size of queue (bytes) = 16384
In Solaris, this was easy. Edit the file:
/etc/system
and reboot. The values stayed there forever.
But how to do this in Suse, and make it stick?
I don't want to put this in some script, so they
get changed while booting, and add yet another
layer of complexity.
Thanks
- Posted by Howard J. Rogers on November 13th, 2003
<linuxquestion@yahoo.com> wrote in message
news:672ceaed.0311130006.36cf8f24@posting.google.c om...
Obviously so. /proc/sys/kernel is a virtual file system, and gets reset
every time you reboot.
The fix is either to compile the required values into the kernel to start
with (rather a long-winded approach) or to edit a script to make the 'echo'
command execute at each reboot. On Red Hat and Mandrake, that's done by
editing /etc/sysctl.conf. But it may well be a different name on SuSe.
Regards
HJR
- Posted by Jan Schledermann on November 13th, 2003
linuxquestion@yahoo.com wrote:
Add echo `expr 2048 \* 1024 \* 1024` > /proc/sys/kernel/shmmax to
/etc/init.d/boot.local ( for example)
and create symlinks to this file in /etc/init.d/rc3.d and probably rc5.d
i.e.: ln -s /etc/init.d/boot.local /etc/init.d/rc3.d/S01boot.local
For this you don't need to create a K0X.... link
If you are not familiar with the SuSE Linux boot concept have a look at the
manuals. It is helpfull to understand how this works.
--
Jan Schledermann
Mierlo, The Netherlands
- Posted by linuxquestion@yahoo.com on November 14th, 2003
Thanks for your responses.
I created a script. The script was made up of
commands that worked perfectly at the dot prompt (bash).
--------------------
#! /bin/sh
# File to set shmmax during boot.
echo "Setting size for /proc/sys/kernel/shmmax"
echo ` expr 2048 \* 1024 \* 1024 ` > /proc/sys/kernel/shmmax
echo "Value for shmmax is now: `cat /proc/sys/kernel/shmmax` "
----------
But when I run this file, it doesn't want to work:
Setting size for /proc/sys/kernel/shmmax
: No such file or directoryne 5: /proc/sys/kernel/shmmax
Value for shmmax is now: 33554432
This occured in both bash, and sh.
Any ideas?
--------------
linuxquestion@yahoo.com wrote in message news:<672ceaed.0311130006.36cf8f24@posting.google. com>...
- Posted by Reinhold Fischer on November 14th, 2003
Hi!
I use sysctl(8):
o) Edit /etc/sysctl.conf
add/change: kernel.shmmax=129654784
o) Edit /etc/init.d/boot.local
sysctl -p
o) Activate settings
root# sysctl -p
kernel.shmmax = 129654784
A reboot for this is on linux not necessary (only in solaris).
--
Mit freundlichen Grüßen,
Ing. Reinhold Fischer
linuxquestion@yahoo.com schrieb am 2003-11-13 10:01 folgendes:
- Posted by Howard J. Rogers on November 14th, 2003
<linuxquestion@yahoo.com> wrote in message
news:672ceaed.0311140053.9aa959e@posting.google.co m...
Well, as I posted elsewhere, the better way is to edit /etc/sysctl.conf. But
I used to find that
cd /proc/sys/kernel
echo 9876 9876 9876 > shmmax (insert appropriate numbers)
....used to work fine.
Regards
HJR
- Posted by linuxquestion@yahoo.com on November 14th, 2003
HI,
Sorry, I should have mentioned that I did look for
those files. But they don't exist on my edition
of Linux. Suse Personal 8.2
Note that I haven't installed any databases yet. I've
managed to install Oracle, but not created any databases.
First, I want the OS to behave properly, so that I
can rely on it.
file /etc/sysctl.conf
/etc/sysctl.conf: can't stat `/etc/sysctl.conf' (No such file or
directory).
(I have since created this file, but I'm not sure if it's right.
See my other post.)
file /etc/sysconfig/oracle
/etc/sysconfig/oracle: can't stat `/etc/sysconfig/oracle' (No such
file or directory).
linux:/etc/init.d #
file /etc/rc.config
/etc/rc.config: can't stat `/etc/rc.config' (No such file or
directory).
file /etc/profile.d/oracle.sh
/etc/profile.d/oracle.sh: can't stat `/etc/profile.d/oracle.sh' (No
such file or directory).
file /etc/oratab
/etc/oratab: ASCII English text
cat /etc/oratab
*:/oracle/ora92:N
file /proc/sys/fs/file-max
/proc/sys/fs/file-max: empty
cat /proc/sys/fs/file-max
78587
---------------
Do you think that there are there some fundamental
things that are missing on my system?
Thanks for all your help.
"Howard J. Rogers" <hjr@dizwell.com> wrote in message news:<3fb4acfe$0$13681$afc38c87@news.optusnet.com. au>...
- Posted by linuxquestion@yahoo.com on November 14th, 2003
HI,
Thanks for your response. I'll show you what I did.
file /etc/sysctl.conf
/etc/sysctl.conf: can't stat `/etc/sysctl.conf' (No such file or directory).
touch /etc/sysctl.conf
ls -l /etc/sysctl.conf
-rw-r--r-- 1 root root 0 Nov 14 12:36 /etc/sysctl.conf
echo `expr 2048 \* 1024 \* 1024`
2147483648
Edit empty /etc/sysctl.conf, and add one line only:
/etc/sysctl.conf:
kernel.shmmax=2147483648
sysctl -p
kernel.shmmax = 2147483648
cat /proc/sys/kernel/shmmax
2147483648
Edit /etc/init.d/boot.local. Add:
sysctl -p
-----------
Reboot.
------------
cat /proc/sys/kernel/shmmax
33554432
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
------------
No link to boot.local anywhere.
- create link.
ln -s /etc/init.d/boot.local /etc/init.d/rc3.d/S01boot.local
modify and also put debug statements into: /etc/rc.d/boot.local
/etc/rc.d/boot.local:
echo "start: /etc/init.d/boot.local" > /etc/init.d/bootlog.txt
echo "Setting size for /proc/sys/kernel/shmmax"
echo `expr 2048 \* 1024 \* 1024` > /proc/sys/kernel/shmmax
echo "Value for shmmax is now: `cat /proc/sys/kernel/shmmax`"
sysctl -p
cat /proc/sys/kernel/shmmax >> /etc/init.d/bootlog.txt
echo "end: /etc/init.d/boot.local" >> /etc/init.d/bootlog.txt
------------
reboot.
-----------
Look at the bootlog.txt
cat bootlog.txt
start: /etc/init.d/boot.local
33554432
end: /etc/init.d/boot.local
cat /proc/sys/kernel/shmmax
33554432
!!!!!!!!!!!!
Am I missing something here? Maybe some fundamental files?
Thanks a lot
Reinhold Fischer <no-spam@no-spam> wrote in message news:<3fb4a860$0$26192$91cee783@newsreader02.highw ay.telekom.at>...
- Posted by Howard J. Rogers on November 15th, 2003
No, you're going down a deep dark hole there. Clearly, SuSe doesn't use the
same way of setting these things as Red Hat or Mandrake, so I can be of no
further assistance (I wish I could download the ISO images from SuSe, Novell
or whoever it is these days!)
Regards
HJR
<linuxquestion@yahoo.com> wrote in message
news:672ceaed.0311141017.594e61d6@posting.google.c om...
- Posted by David on November 15th, 2003
linuxquestion@yahoo.com wrote:
Add it to "rc.local" to have it loaded during system boot.
/sbin/sysctl -p
--
Confucius: He who play in root, eventually kill tree.
Registered with The Linux Counter. http://counter.li.org/
Slackware 9.1.0 Kernel 2.4.22 SMP i686 (GCC) 3.3.2
Uptime: 39 days, 8:56, 1 user, load average: 1.03, 1.34, 1.51
- Posted by ynotssor on November 16th, 2003
<linuxquestion@yahoo.com> wrote in message
news:672ceaed.0311130006.36cf8f24@posting.google.c om
Of course not; you rebooted and rebuilt the entire /proc structure.
So you want to edit a file in Solaris that is parsed on a boot, but you
don't want to add a simple one-line command (which you've already
demonstrated that you know) to a file in Suse that is parsed on a boot? Or
even to the Oracle startup script?
Why are you even asking for help then? Do you think *any* computer system is
able to read your mind?
--
-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----== Over 100,000 Newsgroups - 19 Different Servers! =-----
- Posted by baskitcaise on November 16th, 2003
linuxquestion@yahoo.com wrote:
Might be on the wrong track here but have you looked at powertweak, you can
pass sysctl commands here, there are some already set up for the oracle
memory limits, if the setting is not there you can always add it to the /etc
powertweak/tweaks file with your preferred editor.
HTH
--
Mark
Twixt hill and high water.
N.Wales, UK.
Email is spam trap try baskitcaise at gmx dot co dot uk