1.状況
・AWS EC2
・Nginx
・rails 5.2.6
容量不足が原因で発生する「No space left on device @ io_write」エラーが発生
以下コマンドをターミナルに打ち込む。
[ec2-user ~] $ df -h
Use100%となっているファイルシステム「/dev/xvda1」の容量が不足してたためにエラーが発生したと思われる。
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 492M 0 492M 0% /dev/shm
tmpfs 492M 26M 467M 6% /run
tmpfs 492M 0 492M 0% /sys/fs/cgroup
/dev/xvda1 10G 10G 0 100% /
tmpfs 99M 0 99M 0% /run/user/1000
2. 対応
①不要ファイルの削除による容量確保
②ボリューム容量増加
→今回は②を採用し、「/dev/xvda1」のボリューム増量により対応。
AWS EC2の「(Elastic Block Store項目)ボリューム」から確認
→該当ボリュームidを選択
→「変更」を選択
→サイズ(Gib)を変更し「変更」ボタン押下
※自分の場合 10→12に変更
変更後は以下のようになり、サイズが更新されたことを確認できる
3.変更後確認
ターミナルに戻り以下コマンド実行
[ec2-user ~] $ df -h
以下が結果
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 492M 0 492M 0% /dev/shm
tmpfs 492M 26M 467M 6% /run
tmpfs 492M 0 492M 0% /sys/fs/cgroup
/dev/xvda1 12G 10G 2.0G 84% /
tmpfs 99M 0 99M 0% /run/user/1000
「/dev/xvda1 」の使用割合が100%→84%になっていた。
rails s 実行後、「No space left on device @ io_write」エラーが解消されていたのを確認