0
0

Fatal Error Insufficient shared memory!(PHP)

Posted at

Fatal Error Insufficient shared memory!の対応

概要

PHPのバージョン確認しようとするとエラー(Fatal Error Insufficient shared memory!)が出たので対応メモ。

環境

クラウドサービス:Microsoft Azure
オペレーティングシステム:Linux(almalinux 8.8)
サイズ:Standard B1s(1 vcpu, 1 GiB メモリ)

エラー確認

# php -v
Fri May 10 11:59:33 2024 (101741): Fatal Error Insufficient shared memory!

どうやらメモリ不足で正常に動作していない様子。
Swapも割り当てられていない様子。

# free -h
              total        used        free      shared  buff/cache   available
Mem:          885Mi       381Mi       145Mi        22Mi       359Mi       345Mi
Swap:            0B          0B          0B

改善対応

swapfileを作成することで、メモリ量を超えたメモリアクセスも可能にしてみる。

Swap領域を無効化

# swapoff /mnt/resource/swapfile 
swapoff: /mnt/resource/swapfile: swapoff が失敗しました: 無効な引数です

そもそも現状で無効だった様子。

既存のswapfile削除

# rm /mnt/resource/swapfile 
rm: 通常の空ファイル '/mnt/resource/swapfile' を削除しますか? y

swapfileを2GBで、再作成

# dd if=/dev/zero of=/mnt/resource/swapfile bs=1M count=2048
2048+0 レコード入力
2048+0 レコード出力
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 38.5015 s, 55.8 MB/s

# chmod 600 /mnt/resource/swapfile

# ll -h /mnt/resource/
合計 2.1G
drwx------. 2 root root  16K  5月 10 08:19 lost+found
-rw-------. 1 root root 2.0G  5月 10 13:43 swapfile

# mkswap /mnt/resource/swapfile
スワップ空間バージョン 1 を設定します。サイズ = 2 GiB (2147479552 バイト)
ラベルはありません, UUID=34f63911-0113-42ca-9a8b-e878bded43f0

Swap領域を有効化

# swapon /mnt/resource/swapfile
# swapon -s
ファイル名				タイプ		サイズ	使用済み	優先順位
/mnt/resource/swapfile                 	file    	2097148	0	-2

再確認

メモリ

# free -h
              total        used        free      shared  buff/cache   available
Mem:          886Mi       319Mi        57Mi        11Mi       509Mi       422Mi
Swap:         2.0Gi          0B       2.0Gi

PHP

# php -v
PHP 8.2.18 (cli) (built: Apr 12 2024 08:07:11) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.18, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.18, Copyright (c), by Zend Technologies
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0