Re: Instructions for Linux ipc config
| От | Mark Kirkwood |
|---|---|
| Тема | Re: Instructions for Linux ipc config |
| Дата | |
| Msg-id | 4203E428.10302@coretech.co.nz обсуждение исходный текст |
| Ответ на | Re: Instructions for Linux ipc config (Mark Kirkwood <markir@coretech.co.nz>) |
| Ответы |
Re: Instructions for Linux ipc config
Re: Instructions for Linux ipc config |
| Список | pgsql-docs |
Attached are my first thoughts for the amended instructions.
Mark Kirkwood wrote:
>
> But to be on the safe side, it would make sense to do something similar
> to the BSD section, and comment about older distributions maybe needing
> to manipulate /proc/kernel/* directly.
>
--- runtime.sgml.orig Fri Feb 4 22:17:45 2005
+++ runtime.sgml Fri Feb 4 22:17:57 2005
@@ -4414,37 +4414,29 @@
<indexterm><primary>Linux</><secondary>IPC configuration</></>
<listitem>
<para>
- The default shared memory limit (both
- <varname>SHMMAX</varname> and <varname>SHMALL</varname>) is 32
- MB in 2.2 kernels, but it can be changed in the
- <filename>proc</filename> file system (without reboot). For
- example, to allow 128 MB:
+ The default settings are only suitable for small installations
+ (the default max segment size is 32 MB). However the remaining
+ defaults are quite generously sized, and usually do not require
+ changes. The max segment size can be changed via the
+ <command>sysctl</command> interface. For example, to allow 128 MB,
+ and explicitly set the maximum total shared memory size to 2097152
+ pages (the default):
<screen>
-<prompt>$</prompt> <userinput>echo 134217728 >/proc/sys/kernel/shmall</userinput>
-<prompt>$</prompt> <userinput>echo 134217728 >/proc/sys/kernel/shmmax</userinput>
+<prompt>$</prompt> <userinput>systcl -w kernel.shmmax=134217728</userinput>
+<prompt>$</prompt> <userinput>systcl -w kernel.shmall=2097152</userinput>
</screen>
- You could put these commands into a script run at boot-time.
- </para>
-
- <para>
- Alternatively, you can use <command>sysctl</command>, if
- available, to control these parameters. Look for a file
- called <filename>/etc/sysctl.conf</filename> and add lines
- like the following to it:
-<programlisting>
-kernel.shmall = 134217728
-kernel.shmmax = 134217728
-</programlisting>
- This file is usually processed at boot time, but
- <command>sysctl</command> can also be called
- explicitly later.
+ In addition these settings can be saved between reboots in
+ <filename>/etc/sysctl.conf.
</para>
<para>
- Other parameters are sufficiently sized for any application. If
- you want to see for yourself look in
- <filename>/usr/src/linux/include/asm-<replaceable>xxx</>/shmparam.h</>
- and <filename>/usr/src/linux/include/linux/sem.h</>.
+ Older distributions may not have the <command>sysctl</command> program,
+ but equivalent changes can be made by manipulating the
+ <filename>/proc</filename> filesystem:
+<screen>
+<prompt>$</prompt> <userinput>echo 134217728 >/proc/sys/kernel/shmmax</userinput>
+<prompt>$</prompt> <userinput>echo 2097152 >/proc/sys/kernel/shmall</userinput>
+</screen>
</para>
</listitem>
</varlistentry>
В списке pgsql-docs по дате отправления: