Professional Web Applications Themes

How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2? - Linux Setup, Configuration & Administration

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 ...

  1. #1

    Default How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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
    linuxquestion@yahoo.com Guest

  2. #2

    Default How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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
    linuxquestion@yahoo.com Guest

  3. #3

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    <com> wrote in message
    news:google.com... 

    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


    Howard Guest

  4. #4

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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
    Jan Guest

  5. #5

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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?


    --------------



    com wrote in message news:<google.com>... 
    linuxquestion@yahoo.com Guest

  6. #6

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition8.2?

    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


    com schrieb am 2003-11-13 10:01 folgendes: 

    Reinhold Guest

  7. #7

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    <com> wrote in message
    news:google.com... 

    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



    Howard Guest

  8. #8

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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" <com> wrote in message news:<3fb4acfe$0$13681$optusnet.com.au>... 
    >
    > 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[/ref]
    linuxquestion@yahoo.com Guest

  9. #9

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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-spamno-spam> wrote in message news:<3fb4a860$0$26192$highway.telekom.at>... 
    linuxquestion@yahoo.com Guest

  10. #10

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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



    <com> wrote in message
    news:google.com... 
    news:<3fb4acfe$0$13681$optusnet.com.au>... 
    > >
    > > Well, as I posted elsewhere, the better way is to edit /etc/sysctl.conf.[/ref][/ref]
    But [/ref]


    Howard Guest

  11. #11

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition8.2?

    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
    David Guest

  12. #12

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    <com> wrote in message
    news:google.com
     
    [...] 
    [...] 
    [...] 
    [...] 

    Of course not; you rebooted and rebuilt the entire /proc structure.
     

    So you want to edit a file in Solaris that is pd 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 pd 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! =-----
    ynotssor Guest

  13. #13

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    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
    baskitcaise Guest

  14. #14

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    More on shmmax. An update.

    I created the script, boot_shmmax, with echo statement:

    boot_shmmax:

    #! /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` "

    echo ` date ` >> /etc/init.d/bootlog.txt
    echo "start: /etc/rc.d/boot_shmmax" >> /etc/init.d/bootlog.txt
    echo "runlevel is: ` runlevel `" >> /etc/init.d/bootlog.txt
    echo "Value for shmmax is now: `cat /proc/sys/kernel/shmmax` " >>
    /etc/init.d/bootlog.txt
    echo "end: /etc/rc.d/boot_shmmax" >> /etc/init.d/bootlog.txt
    echo " " >> /etc/init.d/bootlog.txt


    And the links:

    ln -s /etc/init.d/boot_shmmax /etc/init.d/rc4.d/S01boot_shmmax
    ln -s /etc/init.d/boot_shmmax /etc/init.d/rc5.d/S01boot_shmmax


    Also:

    Edit /etc/sysctl.conf
    add/change: kernel.shmmax=2147483648

    sysctl -p
    kernel.shmmax = 2147483648

    cat /proc/sys/kernel/shmmax
    2147483648

    Edit the file, /etc/init.d/boot.local and add:
    sysctl -p

    -----------

    But, when I boot, the shmmax is not changed.

    The bootlog.txt I created says:

    Sat Nov 15 00:50:29 EST 2003
    start: /etc/init.d/boot.local
    runlevel is: unknown
    Value for shmmax is now: 33554432
    end: /etc/init.d/boot.local

    Sat Nov 15 00:50:32 EST 2003
    start: /etc/rc.d/rc.3/boot_shmmax
    runlevel is: N 5
    end: /etc/rc.d/rc.3/boot_shmmax

    ------------------
    /var/log/boot.msg:

    ....

    Creating /var/log/boot.msg

    ....

    done<notice>killproc: kill(30,29)
    Running /etc/init.d/boot.local

    /etc/init.d/boot.local: line 22: /proc/sys/kernel/shmmax
    : No such file or directory

    Value for shmmax is now: 33554432


    done<notice>killproc: kill(30,3)

    .... clip

    <notice>/etc/init.d/rc5.d/S01boot_shmmax start
    Setting size for /proc/sys/kernel/shmmax

    /etc/init.d/rc5.d/S01boot_shmmax: line 6: /proc/sys/kernel/shmmax
    : No such file or directory

    Value for shmmax is now: 33554432

    <notice>'/etc/init.d/rc5.d/S01boot_shmmax start' exits with status 0

    .... clip

    -------------------

    Very mysterious. At run level 3, the runlevel is unknown:

    And at runlevel 5, the shmmax doesn't change.

    And, the "file" doesn't exist, according to boot.msg

    Does anyone have any more ideas on how to set the
    shmmax at boot time?

    Thanks


    ----------------------


    com wrote in message news:<google.com>... 
    linuxquestion@yahoo.com Guest

  15. #15

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition8.2?

    com wrote: 
    --snip-- 


    I'm not familiar with SuSe but I think there should be an
    rc.local file that is run during the system boot.

    If you want to set it to "2147483648" then do it like this.

    Edit /etc/rc.d/rc.local and add the line below to the end of it.

    /sbin/sysctl -p

    Edit /etc/sysctl.conf and add the line below.

    kernel.shmmax = 2147483648

    Then run "/sbin/sysctl -p" to update /proc without rebooting.
    That should cause it run and update /proc during system boot.

    --
    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: 21 min, 2 users, load average: 1.83, 1.75, 1.21
    David Guest

  16. #16

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    Here is an update.

    -----------

    I created a file to change the shmmax upon startup,
    that will echo info to bootlog.txt.


    boot_shmmax:

    #! /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` "

    echo ` date ` >> /etc/init.d/bootlog.txt
    echo "start: /etc/rc.d/boot_shmmax" >> /etc/init.d/bootlog.txt
    echo "runlevel is: ` runlevel `" >> /etc/init.d/bootlog.txt
    echo "Value for shmmax is now: `cat /proc/sys/kernel/shmmax` " >>
    /etc/init.d/bootlog.txt
    echo "end: /etc/rc.d/boot_shmmax" >> /etc/init.d/bootlog.txt
    echo " " >> /etc/init.d/bootlog.txt


    and created the run level links:

    ln -s /etc/init.d/boot_shmmax /etc/init.d/rc3.d/S01boot_shmmax
    ln -s /etc/init.d/boot_shmmax /etc/init.d/rc5.d/S01boot_shmmax

    -----------

    I also changed: /proc/sys/kernel/shmmax

    cat /proc/sys/kernel/shmmax
    2147483648


    Edit /etc/init.d/boot.local. Add:
    sysctl -p

    -----------
    Reboot.

    cat /proc/sys/kernel/shmmax
    33554432

    - still not changed on boot

    -----------

    bootlog.txt says:

    Sat Nov 15 01:12:35 EST 2003
    start: /etc/init.d/boot.local
    runlevel is: unknown
    Value for shmmax is now: 33554432
    end: /etc/init.d/boot.local

    Sat Nov 15 01:12:38 EST 2003
    start: /etc/rc.d/boot_shmmax
    runlevel is: N 5
    Value for shmmax is now: 33554432
    end: /etc/rc.d/boot_shmmax


    -----------

    ->

    At boot time, run level 3 is unknown.
    Then, even though run level 5 is found, the shmmax
    still does not change.

    <-


    -----------

    /var/log/boot.msg:

    Creating /var/log/boot.msg


    done<notice>killproc: kill(30,29)
    Running /etc/init.d/boot.local

    /etc/init.d/boot.local: line 22: /proc/sys/kernel/shmmax
    : No such file or directory

    Value for shmmax is now: 33554432


    done<notice>killproc: kill(30,3)

    ........

    <notice>/etc/init.d/rc5.d/S01boot_shmmax start
    Setting size for /proc/sys/kernel/shmmax

    /etc/init.d/rc5.d/S01boot_shmmax: line 6: /proc/sys/kernel/shmmax
    : No such file or directory

    Value for shmmax is now: 33554432

    <notice>'/etc/init.d/rc5.d/S01boot_shmmax start' exits with status 0


    -----------

    ->

    At boot, the file: /proc/sys/kernel/shmmax isn't even found.

    <-

    -----------

    Any more ideas on how to set the shmmax at boot time?


    Thanks


    -----------------------------------------------------

    com wrote in message news:<google.com>... 
    linuxquestion@yahoo.com Guest

  17. #17

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    On 21 Nov 2003 09:56:03 -0800, <com> wrote:
     
    .... 
    .... 
    ....

    Looks like you're doing it too soon. Find out when /proc is mounted
    and set your S##boot_shmmax number so it runs after that.
    Joe Guest

  18. #18

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    com wrote:
     
    I would try to run your file later in the boot process,try to make it
    S20......... or just before you start Oracle if you start it from rc.d.
    Generally you'll obtain better logging by using the "skeleton" in /etc/rc.d
    instead of just a plain text file.
    --
    Jan Schledermann
    Mierlo, The Netherlands
    Jan Guest

  19. #19

    Default Re: How to PERMANENTLY set semaphores in Linux - Suse Personal Edition 8.2?

    com wrote:
     
     

    The usual solution would be to get the orarun.rpm which sets all this
    stuff for you:
    ftp://ftp.suse.com/pub/suse/i386/supplementary/commercial/Oracle/orarun-1.8-11_SL80_81.noarch.rpm


    --
    Meine heilige Kuh ist ein Pinguin!
    Gabriele Guest

Similar Threads

  1. Is there a FMS2 Personal Edition?
    By sparky1962 in forum Macromedia Flash Flashcom
    Replies: 4
    Last Post: September 25th, 09:01 PM
  2. For Sale: FCS MX Personal Edition
    By kauldron in forum Macromedia Flash Flashcom
    Replies: 3
    Last Post: July 31st, 12:32 AM
  3. Installing Suse 8.2 Profesional hangs after this line >>> SuSe Linux Installation ....<<<
    By Nenad Ukropina in forum Linux Setup, Configuration & Administration
    Replies: 0
    Last Post: September 15th, 07:11 AM
  4. Doentation for Personal Edition
    By Edward Diener in forum IBM DB2
    Replies: 10
    Last Post: July 11th, 01:56 PM
  5. Oracle Personal Edition 8.1.6 does not install
    By Paul Brewer in forum Oracle Server
    Replies: 0
    Last Post: January 10th, 07:28 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139