ここのことはなかったことにするかもしれない

仕事がらみの記事を主として扱いますが、あくまで個人ブログです。2013年以前の記事は https://yellow-73.hatenablog.com/ にあります。

sysctlを盛大に間違えてpostgresql 9.3のinitdbに失敗しまくった

9.3はpackagesから入れました。で、initdbをやろうとすると

Failed system call was shmget(key=..., size=40, 03600)

とか言われて共有メモリを下さらない。あと「このメッセージが出るときは共有メモリが足りないときです」というメッセージも出てくる。
40バイトの共有メモリが取れないわけない、と"sysctl -a"とかで確認してたりしたのですが、一向にうまくいかない。
そこで、/etc/sysctl.conf の共有メモリまわりをコメントアウトしてリブート。その後、ひとつずつ/etc/sysctl.confのエントリをsysctlコマンドで設定していって確認。

kern.ipc.shmmin (共有メモリセグメントの最小バイト数)を512ぐらいにしてた。
それ、kern.ipc.shmmni (プロセスごとの共有メモリセグメント最大値) の間違いやないの!! (最後2文字に注目)

kern.ipc.shmminは1にした。なんか辛かったorz