|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Timur I.Danyarhojaev 2:5095/1.128 17 Jul 2003 17:03:50 To : All Subject : Re: SEM & SHM params -------------------------------------------------------------------------------- .RFC-X-Complaints-To: abuse@inetcomm.ru .RFC-NNTP-Posting-Date: 17 Jul 2003 13:03:50 GMT From: Timur I.Danyarhojaev <tid@podolsk.ru> On Thu, 17 Jul 03 14:38:32 +0400 Yuri Pudovchenko <Yuri.Pudovchenko@p38.f131.n5085.z2.fidonet.org> wrote: > Согласно инструции по настройке сервера Oracle необходимо > записать кое-какие данные в несколько shm и sem файлов. Я бы сказал - рекомендуется, а не "необходимо": это процесс тонкой настройки (tuning), и цифры надо подбирать из своих реалий а не по приведенным примерам из Installation Guide. > Из них у меня в каталоге /proc/sys/kernel лежат только два, > это shmmax и shmmni, и инфоормация в них записывается правильно. > Остальных файлов нет, создать их touch'ем не получается, > вручную файлы тоже не создаются, даже root'ом. > Что делать ? > Вот скрипт внизу как я это делал. > Уменя RedHat 7.2 > > === ачало shm.sh === > # SHMMAX == 0.5 of real memory > echo 2147483648 > /proc/sys/kernel/shmmax > > # SHMMIN == Minimum size of shared memory segment > touch /proc/sys/kernel/shmmin > echo 1 > /proc/sys/kernel/shmmin > > # SHMMNI == Maximum number of shared memory identifiers in the system > echo 100 > /proc/sys/kernel/shmmni > > # SHMSEG == Maximum number of shared memory segments a user process can attach > touch /proc/sys/kernel/shmseg > echo 10 > /proc/sys/kernel/shmseg > > # SEMMNI == Maximum number of semafore identifiers > touch /proc/sys/kernel/semmni > echo 100 > /proc/sys/kernel/semmni > > # SEMMSL == Maximum number of semafores > touch /proc/sys/kernel/semmsl > echo 160 > /proc/sys/kernel/semmsl > > # SEMMNS == Maximum number of semaphores in the system > touch /proc/sys/kernel/semmns > # 150(real) + 150(test)*2 + 2(# of bases)* 10 > echo 400 > /proc/sys/kernel/semmns > > # SEMOPM > touch /proc/sys/kernel/semopm > echo 100 > /proc/sys/kernel/semopm > > # SEMVMX > touch /proc/sys/kernel/semvmx > echo 32767 > /proc/sys/kernel/semvmx > === Конец shm.sh === Это из серии смотреть и видеть ;-) /proc - это не файловая система в ОБЫЧHОМ смысле, а файловый интерфейс для доступа к переменным ядра. Это первая ошибка. Вторая - перечисленные параметры правятся (в старых ядрах < 2.4) перекомпиляцией ядра. В серии ядер 2.4.XX действительно tuning'уются только 3 параметра: shmmax, shmmni и shmall. Параметры семафоров корректируются через sem для корректировки нет смысла писать скрипт, достаточно прописать параметры и значения в файле /etc/sysctl.conf например у меня там kernel.sem = 250 32000 100 128 kernel.shmmax = 2000000000 Прежде чем заниматься tuning'ом, даже по бумажке от Oracle, советую почитать инструкцию про /proc например в текстах ядра: /usr/src/linux-2.4/Documentation/filesystems/proc.txt В противном случае эффект от неразумного tuning'а будет не такой как ожидается ;-) --- Sylpheed version 0.8.11 (GTK+ 1.2.10; i586-pc-linux-gnu) * Origin: PUES (2:5095/1.128@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/45806aa3ee81.html, оценка из 5, голосов 10
|