При отдаче больших по размеру файлов нгинксом, иногда возникает ситуация, когда сервер периодически падает, встает, делает что-то еще, что делать совершенно не нужно.
Одна из причин почему это происходит — нехватка дискового пространства, особенно когда файловая система распределена на несколько разделов. А не хватает места на диске от того, что нгинкс создает временные файлы и находятся они в / var / lib / nginx .
Бывает такое, что файловую систему делят на корневой раздел, разделы /home и /usr. В итоге /var остается в корневом разделе, и если туда поставить веб-сервер и напихать пачку 300-400 мегабайтных файлов + базу побольше — места может не хватить (в конкретно рассматриваемом случае под корень было выделено 5гб места).
Зайдя в консоль и выдав команду df -h можно отметить, что свободное пространство периодически скачет. В то же время du -h —max-depth=1 не даст никаких видимых изменений в размерах каталогов.
Решение было довольно простым — перенести каталог с временными файлами на более свободное устройство и, соответственно, создать линк в том месте, откуда его перенесли.