在 Linux 中,必须配置共享内存设置。不需要调整默认信号量设置。
以 root 用户身份登录。
编辑文件 /etc/sysctl.conf。
在 Redhat Linux 中,您还可以修改 sysctl.conf 以设置内核参数。
按如下所示,设置 kernel.shmax 和 kernel.shmall 的值:
echo MemSize > /proc/sys/shmmax echo MemSize > /proc/sys/shmall |
其中,MemSize 为字节数。
kernel.shmax 参数定义了共享内存段的最大大小(以字节为单位)。kernel.shmall 参数设置了在系统上可以一次使用的共享内存的总数(以页为单位)。将这两个参数的值设为计算机上的物理内存量。请以十进制字节数指定该值。
例如,要将两个值都设置为 2GB,请使用以下命令:
echo 2147483648 > /proc/sys/kernel/shmmax echo 2147483648 > /proc/sys/kernel/shmall |
使用以下命令重新引导该计算机:
sync; sync; reboot