Using cached IOError: [Errno 28] На устройстве не осталось свободного места

15 июня 2016 г. 3:47

Довольно-таки неочевидная может быть ошибка IOError: [Errno 28] На устройстве не осталось свободного места. Ладно, если на устройстве действительно нет места. А если видишь, что место более чем достаточно, и получаешь такую ошибку? Загадка..

Вот и я сегодня получил такую ошибку, когда стал развёртывать на сервере сайт клиента. При создании виртуального окружения лог был следующим:

Collecting psycopg2==2.5.4 (from -r /home/client/project/src/requirements.txt (line 1))
Collecting Django==1.8.4 (from -r /home/client/project/src/requirements.txt (line 3))
  Using cached Django-1.8.4-py2.py3-none-any.whl
Exception:
Traceback (most recent call last):
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/basecommand.py", line 209, in main
    status = self.run(options, args)
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/commands/install.py", line 310, in run
    wb.build(autobuilding=True)
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/wheel.py", line 748, in build
    self.requirement_set.prepare_files(self.finder)
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/req/req_set.py", line 360, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/req/req_set.py", line 577, in _prepare_file
    session=self.session, hashes=hashes)
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/download.py", line 810, in unpack_url
    hashes=hashes
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/download.py", line 649, in unpack_http_url
    hashes)
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/download.py", line 871, in _download_http_url
    _download_url(resp, link, content_file, hashes)
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/download.py", line 595, in _download_url
    hashes.check_against_chunks(downloaded_chunks)
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/utils/hashes.py", line 46, in check_against_chunks
    for chunk in chunks:
  File "/home/client/project/src/env/local/lib/python2.7/site-packages/pip/download.py", line 564, in written_chunks
    content_file.write(chunk)
IOError: [Errno 28] На устройстве не осталось свободного места

Смотрю свободное пространство диска: около 17 ГБ. И тут я обратил внимание, что ошибка возникает на строчке:

Using cached Django-1.8.4-py2.py3-none-any.whl

Известно, что pip кеширует загрузки зависимостей в папку tmp, поэтому, скорее всего, с tmp что-то не так. Далее, выяснилось, что директория tmp - это отдельный раздел, которой переполнен (осталось 2,6 МБ):

$ watch -n1 df

Файловая система  1K-блоков Использовано Доступно Использовано% Cмонтировано в
/dev/ploop42952p1  20516988      2684808 17196828           14% /
devtmpfs             524288            0   524288            0% /dev
tmpfs                524288            4   524284            1% /dev/shm
tmpfs                524288        52892   471396           11% /run
tmpfs                  5120            0     5120            0% /run/lock
tmpfs                524288            0   524288            0% /sys/fs/cgroup
tmpfs                524288       521667     2621            99% /tmp
none                 524288            0   524288            0% /run/shm

Очистив место в директории tmp, я смог поставить зависимости, и сайт, наконец-то, развернулся! Как оказалось, ошибка не такая уж и загадочная :)

Оцените статью

0 из 5 (всего 0 оценок)

Поля, отмеченные звёздочкой ( * ) , являются обязательными.

Спасибо за ваш отзыв!

После нажатия кнопки "Отправить" ваше сообщение будет доставлено мне на почту.

Автор статьи

Права на использование материала, расположенного на этой странице http://vivazzi.pro/it/cache-and-ioerror-errno-28/:

Разрешается копировать материал с указанием её автора и ссылки на оригинал без использования параметра rel="nofollow" в теге <a>. Использование:

Автор статьи: Мальцев Артём
Ссылка на статью: <a href="http://vivazzi.pro/it/cache-and-ioerror-errno-28/">http://vivazzi.pro/it/cache-and-ioerror-errno-28/</a>

Подробнее: Правила использования сайта

Комментариев: 0

Вы можете оставить комментарий как незарегистрированный пользователь. Но, зарегистрировавшись, вы сможете получать оповещения об ответах, а также иметь доступ к своему личному аккаунту для просмотра своих комментариев.

Чтобы оставить комментарий от своего имени войдите или зарегистрируйтесь обычным способом или через социальные сети:

Отправить

На данный момент нет специального поиска, поэтому я предлагаю воспользоваться обычной поисковой системой, например, Google, добавив "vivazzi" после своего запроса.

Попробуйте