9
2

More than 3 years have passed since last update.

Cloud9でno space left on deviceが出た時の対応

Last updated at Posted at 2021-01-19

EC2インスタンスの再起動

まずはCloud9が動いているEC2インスタンスを再起動。
結果変わらず。

エラーの原因

  • ディスク容量を使い果たした
  • inode の枯渇

のどちらか

問題の特定

ディスク容量を使い果たした

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        483M   60K  483M   1% /dev
tmpfs           493M     0  493M   0% /dev/shm
/dev/xvda1      9.8G  9.6G   68M 100% /

100%って書いてあるのでたぶんこれが原因。

inodeの枯渇

inode とは、ファイルのサイズとか、更新日時とか、属性情報が書かれたデータのことで、実ファイルとは別に存在している。このデータ領域がなくなることを「 inode の枯渇」と呼ぶ

$ df -i
Filesystem     Inodes  IUsed  IFree IUse% Mounted on
devtmpfs       123467    434 123033    1% /dev
tmpfs          126142      1 126141    1% /dev/shm
/dev/xvda1     655360 427041 228319   66% /

こっちは66%だから大丈夫そう。やはり原因はディスク容量

どこが重いのか確認

ディスク容量を使い果たしているとのことなので、データを削除すればたぶん解決する。
削除の前にどこが重いのかを確認してみる。

$ sudo du -sh /*
7.1M    /bin
72M     /boot
4.0K    /cgroup
60K     /dev
12M     /etc
2.1G    /home
209M    /lib
21M     /lib64
4.0K    /local
16K     /lost+found
4.0K    /media
4.0K    /mnt
12K     /nvm-install.txt
896M    /opt
du: cannot access ‘/proc/5597/task/5597/fd/4’: No such file or directory
du: cannot access ‘/proc/5597/task/5597/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/5597/fd/4’: No such file or directory
du: cannot access ‘/proc/5597/fdinfo
/4’: No such file or directory
0       /proc
51M     /root
16K     /run
14M     /sbin
4.0K    /selinux
4.0K    /srv
0       /sys
96M     /tmp
2.9G    /usr
3.3G    /var

重いのはhomeusrvarの3つ。
このうちusrvarはデフォルトでこれくらい重いっぽいので(新たにCloud9の環境を作って確認した)、homes内のファイルを削除していく。

ファイルの削除

  • homes/environment内に自分が作ったアプリがあるので、不要になったアプリを削除。
  • 削除しないアプリに関しても、キャッシュは一旦$ rails tmp:cache:clearで削除。

これでとりあえず解決しました。

その他

今回はファイルを削除して対応したけど、Cloud9の容量を増やして解決する方法もある。
なんかお金かかりそうだからなるべくやりたくないけど、いよいよ容量が足りなくなったらその方法しかなさそう。

参考

9
2
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
9
2