MySQL/MariaDB: REPLACE — рекурсивное обновление записей в таблице
18 февраля 2016
Linux: strace — отслеживаем выполнение процесса0 (0)
17 февраля 2016
strace — утилита для Linux, которая позволяет отследить выполнение системных вызовов (system call) и сигналов к ядру системы. Для примера возьмем простую программу на С, которая выводит содержимое указанного файла: #include <stdio.h> #include <stdlib.h> int main() { char ch, file_name[25]; FILE *fp; printf(«Enter the name of file you wish to see\n»); gets(file_name); fp = fopen(file_name,»r»);… Читать далее »
![]()
Test Kitchen: введение и примеры0 (0)
16 февраля 2016
Test Kitchen — утилита, предназначенная для тестирования кода инфраструктуры. С ее помощью можно проверить рецепты в разных изолированных окружениях. Например — узнать, будет ли работать рецепт на Ubuntu, CentOS и на разных провайдерах — AWS, Vagrant, Docker. Test Kitchen обладает отличной документацией. Начинать стоит с официального HowTo, пример которого и приведен ниже с реальными примерами. Загружаем… Читать далее »
![]()
Debian: установка LEMP — NGINX + PHP-FPM + MariaDB0 (0)
15 февраля 2016
Краткий HowTo по ручной установке NGINX + PHP-FPM + MariaDB на Debian 8. Система: # lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 8.1 (jessie) Release: 8.1 Codename: jessie Обновляем список пакетов: [simterm] # apt-get update [/simterm] Установка NGINX
![]()
RTFM: переезд и смена оформления0 (0)
14 февраля 2016
SSH: Could not load host key: /etc/ssh/ssh_host_ed25519_key0 (0)
13 февраля 2016
После запуска нового EC2 инстанса с Debian 8 — в /var/log/auth.log стали появлятся ошибки такого вида: … Feb 13 08:17:18 ip-172-31-24-203 sshd[882]: error: Could not load host key: /etc/ssh/ssh_host_ed25519_key Feb 13 08:17:18 ip-172-31-24-203 sshd[882]: Connection closed by 176.37.186.107 [preauth] … Проверяем наличие самого файла: # file /etc/ssh/ssh_host_ed25519_key /etc/ssh/ssh_host_ed25519_key: cannot open `/etc/ssh/ssh_host_ed25519_key’ (No such file or directory)… Читать далее »
![]()
Jenkins: строим пайплайны с плагином Build Pipeline Plugin0 (0)
11 февраля 2016
Linux: добавить пользователя в группу0 (0)
10 февраля 2016
Для работы с группами используются две утилиты: useradd — используется при создании нового пользователя, для изменения информации по умолчанию при добавлении нового пользователя, либо для добавления нового пользователя в дополнительные группы; usermod — используется для модификации существующего аккаунта. Добавление существующего пользователя в существующую группу Используйте usermod с опциями -a (append — добавить) и -G — group:… Читать далее »
![]()
Azure: просмотр логов в Azure Websites Log Browser0 (0)
9 февраля 2016
Что бы упростить задачу по просмотру логов в Azure — можно использовать расширение Azure Websites Log Browser, которое добавляет красивый и достаточно удобный интерфейс для просмотра содержимого каталога D:homeLogFiles. Содержимое каталога выглядит так: > dir d:homeLogFiles D:homesitewwwroot Volume in drive D is Windows Volume Serial Number is DE4A-1EEB Directory of d:homeLogFiles 01/11/2016 02:02 PM <DIR> . 01/11/2016 02:02… Читать далее »
![]()
C: Declare vs Define в C и C++0 (0)
8 февраля 2016
Объявление (declaration) и определение (definition) в C и C++ имеют небольшое, но очень важное различие. Если не понимать его — то вас ожидают странные ошибки линкера (LD в GCC — /usr/bin/ld), вроде «undefined symbol foo«, «undefined reference to ‘foo’» или даже «undefined reference to vtable for foo» (в C++). Что такое Объявление в C и C++ Когда вы объявляете переменную, функцию… Читать далее »
![]()