Иногда приложения выдают нам очень странные сообщения об ошибках и приходится изрядно поломать голову, чтобы понять, в чем именно проблема и как ее исправить.
Мы решили, что подобные случаи достойны серии небольших статей под общим названием «Работа с сообщениями об ошибках».
И сегодня у нас подарок от всеми любимой программы git.
В очередной раз, сделав git pull на тестовый сервер, клиент увидел вот такое сообщение:
И обратился к нам с просьбой разобраться, почему это он не может на stdout писать
Место на диске и свободных inode было достаточно. Клонирование того же репозитория на этот же сервер в другой каталог проходило без проблем.
Гугление по данной фразе ни к чему не привело.
То, что клонирование проходит настойчиво, подвигает нас к выводу, что поломалась локальная копия тестового сервера. Начали поиск инструментов для починки git-репозитория, но тут заметили странную вещь:
На разделе /dev занято 100% места. Все 2.9G — странно.
Заходим в /dev и видим файл /dev/null размером как раз с эти 2.9 гигабайта.
Видимо, кто-то когда-то удалил устройство /dev/null, а сервисы так и продолжили писать в /dev/null, создав обычный файл и потихоньку забивая место.
Удалили файл, создали устройство, перестартовали сервисы, которые писали в /dev/null — освободилось место на /dev и git pull отработал без проблем и ошибок.
Мы решили, что подобные случаи достойны серии небольших статей под общим названием «Работа с сообщениями об ошибках».
И сегодня у нас подарок от всеми любимой программы git.
В очередной раз, сделав git pull на тестовый сервер, клиент увидел вот такое сообщение:
fatal: write failure on 'stdout': No space left on device
И обратился к нам с просьбой разобраться, почему это он не может на stdout писать
Место на диске и свободных inode было достаточно. Клонирование того же репозитория на этот же сервер в другой каталог проходило без проблем.
Гугление по данной фразе ни к чему не привело.
То, что клонирование проходит настойчиво, подвигает нас к выводу, что поломалась локальная копия тестового сервера. Начали поиск инструментов для починки git-репозитория, но тут заметили странную вещь:
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/simfs 535G 364G 144G 72% /
none 2.9G 2.9G 0 100% /dev
none 583M 1.1M 582M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 1.2G 0 1.2G 0% /run/shm
none 100M 0 100M 0% /run/user
На разделе /dev занято 100% места. Все 2.9G — странно.
Заходим в /dev и видим файл /dev/null размером как раз с эти 2.9 гигабайта.
Видимо, кто-то когда-то удалил устройство /dev/null, а сервисы так и продолжили писать в /dev/null, создав обычный файл и потихоньку забивая место.
Удалили файл, создали устройство, перестартовали сервисы, которые писали в /dev/null — освободилось место на /dev и git pull отработал без проблем и ошибок.