Архив метки: Linux

Docker: RabbitMQ: exec(): Unable to fork, Prometheus node_exporter и Docker limits

15 февраля 2019
 

 RabbitMQ перестал принимать новые сообщения, и при выполнении запроса — возвращает ошибки вида: exec(): Unable to fork write(): send of 12 bytes failed with errno=104 Connection reset by peer fwrite(): send of 19 bytes failed with errno=32 Broken pipe Собственно, по сообщениям видно, что проблема с памятью — exec() не может выполнить fork() и выделить… Читать далее »

Linux: ncdu и pydf — отображение информации о занятом/свободном месте на дисках

16 января 2019
 

 NCDU NCDU — утилита для отображения занятого и свободного места на дисках, аналог du и df. Аббревиатура NCDU расшифровывается как NCurse Disk Usage, и, очевидно, использует библиотеку ncurses для отображения данных. Установка на Arch — с помощью pacman: Debian/Ubuntu: Запускаем: После проверки данных — ncdu выведет окно с данными по дискам и каталогам: По каталогам можно… Читать далее »

Linux: проверка диска на bad blocks

14 января 2019
 

 Имеется у нас билд-агент для Jenkins, запущен на Ubuntu 16. Периодически при загрузке машина подвисает сразу после запуска GRUB. Один из вариантов поиска проблемы — проверить диск на предмет наличия битых секторов. Для этого можно использовать утилиты badblocks из набора e2fsprogs, и smartctl из набора smartmontools. badblocks Проверяем диски на этой машине: /dev/sda2 — /boot-раздел,… Читать далее »

Linux: сделать скриншот на удалённой машине по SSH

9 января 2019
 

 Есть Jenkins билд-агент на Ubuntu, запущенный на машинке, которая стоит в офисе, мониторы от неё висят на стенке и отображают результаты билдов (см. Build Monitor Plugin). Задача — сделать скриншот экрана, не бегая в другой конец комнаты к клавиатуре. Устанавливаем imagemagick: Создаём скриншот, используя import: Копируем файлик на свою машинку: Проверяем: Готово.

Linux: добавить swap-file

25 декабря 2018
 

 На AWS EC2 AMI-образ Debian 9 идёт без активного swap. При желании и необходимости — его можно легко добавить самому. Создаём файл: Задаём права доступа: Выполняем mkswap: Включаем swap: Проверяем его: Что бы увеличить размер файла подскачки — достаточно его отключить, и увеличить размер самого файла, например с помощью dd. Отключаем swap: Добавляем 1 гигабайт… Читать далее »

memcached: Too many open files

24 декабря 2018
 

 Перед Новым Годом делали нагрузочное тестирование, насобиралось несколько черновиков по мелким фиксам. Без детального расмотрения, просто примеры того, как можно исправить некоторые ошибки. В данном случае — у нас иногда начинал отваливаться memcached с ошибкой вида: Dec 16 00:40:12 bttrm-stage-app-1 systemd-memcached-wrapper[14041]: accept4(): Too many open files Редактируем /etc/security/limits.conf, задаём лимиты для пользователя memcache, от которого… Читать далее »

Linux: «unprivileged users with UID > INT_MAX can successfully execute any systemctl command»

6 декабря 2018
 

 Интересная бага сегодня была опубликована в Twitter и Github. Кратко — если у пользователя UID больше, чем INT_MAX в системе — он может выполнять любые операции systemctl. Справдливости ради — это бага не у systemd, а у polkit. Проверям значение INT_MAX: Добавлям пользователя с +1 к 2147483647: Проверяем: Находим что-нибудь для ребута: Пробуем под нормальным пользователем:… Читать далее »

Vim: плагины supertab и vim-devicons

26 ноября 2018
 

 В продолжение поста vim: превращаем редактор в “IDE” – плагины и вот это вот всё — ещё пара полезностей для vim. supertab supertab вызывает автоподстановку по нажатию кнопки <TAB>, вместо комбинаций типа Ctrl+O/Ctrl+X. Добавляем в .vimrc: … » https://github.com/ervandew/supertab Plug ‘ervandew/supertab’ … Перечитываем его, и устанавливаем: Для настройки плагина есть много опций, основные, которые могут пригодиться,… Читать далее »

Android Studio: установка на Linux и работа с Android Virtual Devices

21 ноября 2018
 

 Есть у нас UI-автотесты, которые немного поломались — надо пофиксить, заодно появился повод вообще с ними разобраться. Для тестирования используется Android Virtual Device и эмулятор из Android Studio. В этом посте — установка студии и создание такого устройства, в следующем — запуск Appium тестов на нём. Установка и запуск выполняются на Arch Linux, но процесс не специфичен для… Читать далее »

AWS: s3fs-fuse — монтирование S3 локальным диском на Linux && macOS

19 ноября 2018
 

 Задача — смонтировать AWS S3 корзину к локальной системе, отдельным диском. Используем s3fs. Документация — тут>>>. На Arch Linux устанавливаем из репозитория: На macOS — через homebrew: osxfuse сообщил: ==> Caveats To install and/or use osxfuse you may need to enable their kernel extension in System Preferences → Security & Privacy → General А brew… Читать далее »