Как стать автором
Обновить
2
0
Евгений Балаганский @twixus_vulgaris

Инженер VoIP

Отправить сообщение

Удаленная переустановка Linux по ssh без доступа к консоли

Время на прочтение8 мин
Количество просмотров61K
Понадобилось мне переустановить сервер, который как бы хостился у знакомых знакомых. Там был сильно устаревший Debian, а, самое главное, система стояла на обычных разделах без lvm и пространство было распределено очень не оптимально. Физический доступ получить к нему было практически нереально, местного админа попросить что-то сделать было можно, но занять это могло неделю. Виртуальный KVM у сервера был, но извне на него попасть было нельзя; у как бы хостера не было лишних IP-адресов, а внутрь его сети попасть было невозможно. Надо было переустановить сервер из-под работающей системы по ssh. Ага, давайте поменяем ротор у турбины не выключая, потом её перезапустим и будет она с новым ротором работать!
Читать дальше →
Всего голосов 111: ↑110 и ↓1+109
Комментарии70

Алиасы в bash для быстрого набора команд Git

Время на прочтение6 мин
Количество просмотров17K

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

Использовать Git я привык исключительно из консоли, но на ввод длинных команд с разными аргументами тратится значительное количество времени. Поэтому я ввёл практику использования алиасов. Для безопасных команд я использовал короткие алиасы, которые по сути стали горячими клавишами, а для функциональных — простые короткие слова из состава команд Git. Если команда опасная, то можно сделать её в два слова, написанных через дефис, для исключения случайного ввода. На самом деле, использование алиасов для работы с Git широко практикуется, я решил лишь преподнести отдельный вариант подборки алиасов, которые для меня оказались очень удобными.

Читать далее
Всего голосов 11: ↑4 и ↓7-2
Комментарии35

Особенности личности IT-специалистов (принять участие в исследовании)

Время на прочтение1 мин
Количество просмотров8.4K

Всем привет! Меня зовут Сергей и я практикующий психолог.

В силу подхода к работе так сложилось, что обычно я консультирую людей интеллектуального труда. В последний год это преимущественно управленцы и сотрудники IT-сферы. Это люди, которые всю жизнь решали любые проблемы "через голову". Такой подход неизбежно накладывает отпечаток на личность и внепрофессиональную жизнь, который я и хочу исследовать.

Принять участие в исследовании
Всего голосов 9: ↑6 и ↓3+6
Комментарии51

Реализуем алгоритм поиска в глубину

Время на прочтение5 мин
Количество просмотров92K

В этом туториале описан алгоритм поиска в глубину (depth first search, DFS) с псевдокодом и примерами. Кроме того, расписаны способы реализации поиска в глубину в C, Java, Python и C++.

“Поиск в глубину” или “обход в глубину” — это рекурсивный алгоритм по поиску всех вершин графа или дерева. Обход подразумевает под собой посещение всех вершин графа.

Читать далее
Всего голосов 15: ↑8 и ↓7+1
Комментарии3

Ирина, голосовой помощник. Продолжение

Время на прочтение7 мин
Количество просмотров19K

— Слушай, она меня на кухне не слышит.
— Ну да, далековато. Давай дополнительный микрофон протянем.
<покупается 5 метров кабеля>
— О, классно!
— ...
— Теперь в комнате не работает.

Это продолжение статьи Ирина — опенсорс русский голосовой помощник. Offline-ready - про голосового помощника, не зависящего от крупных корпораций. Расскажу, что улучшилось за два месяца с момента прошлой статьи.

TL;DR> Отлажен клиент-сервер с несколькими микрофонами/машинами; можно командовать по всему дому. Сделан Телеграм-клиент. Несколько новых голосов (TTS). Обработка голоса в контексте (можно делать голосовые игры). Интеграция с Home Assistant. И ЕЩЁ больше плагинов и документации.

Ладно, рассказывай, что нового
Всего голосов 36: ↑34 и ↓2+39
Комментарии24

Библиотека скриптовых функций для парсера Телеграмм Микротик РоутерОС

Время на прочтение3 мин
Количество просмотров9.4K
Недавно мы сообщали о создании нами универсального скрипта уведомлений и исполнения команд через Телеграмм для РоутерОС Микротик TLGRM.

Благодаря небольшим доработкам в парсинге кода скрипт TLGRM может теперь не только выполнять функции с параметрами и прямые команды ROS, но также исполнять скрипты, передавая им параметры напрямую.

Вторая доработка коснулась адресации команд. Доработанная версия TLGRM теперь поддерживает как адресную (конкретному роутеру или всем, но с ключом /forall), так и широковещательную рассылку команд без указания адресата (сразу всем, «слушающим» чат).

Третьим новшеством, является создание нами специально для работы с TLGRM, библиотеки скриптовых функций, названной «SATELLITE» («Спутник»), о которой пойдет речь далее.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии5

Как генерировать Flame Graph из выходных данных perf и pt-pmp

Время на прочтение6 мин
Количество просмотров4.7K

Человеческий мозг обычно лучше воспринимает информацию из изображений, чем из текстов. И в инструментах, подобных Flame Graph, этот принцип блестяще реализован. Поэтому в Percona его используют в рамках работы группы поддержки. Чаще всего в тех случаях, когда нужно получить всестороннее представление о том, что и как долго проделывает MySQL. Так можно лучше понять, какие операции стоят за конкретной рабочей нагрузкой и каким образом лучше исправлять возникающие проблемы. И это можно использовать и для оптимизации, и для устранения неполадок.

Давайте воспользуемся их опытом и разберемся, откуда брать и как подготавливать образцы для визуализации данных. А после этого — как из них генерировать Flame Graph и как с этим работать.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии0

«Эволюция против муравьёв» сравниваем алгоритмы оптимизации

Время на прочтение14 мин
Количество просмотров4.3K

Решаем задачу о ранце. Муравьиный алгоритм или генетический лучше? Давайте разбираться.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии5

Получаем список российских IP-адресов

Время на прочтение4 мин
Количество просмотров43K

Мир меняется. И в текущей ситуации становится полезным список IP-адресов, условно принадлежащих автономным системам той или иной страны.

В этой статье вы узнаете, как получить список префиксов, анонсируемых автономными системами любой страны. Если вы, конечно, не знали этого раньше.

Читать далее
Всего голосов 28: ↑27 и ↓1+29
Комментарии10

Ansible FAQ

Время на прочтение6 мин
Количество просмотров17K

Давайте разберем самые Часто Задаваемые Вопросы, или сокращенно FAQ. Они помогут вам глубже понять тонкости и принцип работы с Ansible. На ранних этапах можете использовать эту статью как некую шпаргалку.

Читать далее
Всего голосов 19: ↑17 и ↓2+16
Комментарии9

Основы контейнеризации (обзор Docker и Podman)

Время на прочтение16 мин
Количество просмотров140K

Привет, Хабр!

К 2022 году о контейнеризации не слышал только ленивый. Большинство специалистов, так или иначе имеющих отношение к ИТ, хотя бы раз в жизни запускали программное обеспечение в контейнерах. Однако так ли эта технология проста и понятна? Давайте разбираться вместе!

Главная задача данной статьи – рассказать о контейнеризации, дать ключевые понятия для дальнейшего изучения и показать несколько простых практических приемов. По этой причине (а еще, безусловно, вследствие недостаточной квалификации автора) теоретический материал достаточно упрощен.

Читать далее
Всего голосов 26: ↑26 и ↓0+26
Комментарии22

Как работать с числами с плавающей точкой в Python

Время на прочтение9 мин
Количество просмотров58K

К старту курса по Fullstack-разработке на Python делимся решениями классической проблемы неточности чисел с плавающей точкой для новичков. В материале вы найдёте примеры работы с функциями и классами, предназначенными специально для решения проблем чисел с плавающей точкой.

Читать далее
Всего голосов 22: ↑20 и ↓2+22
Комментарии4

Разбираем алгоритмы компьютерной графики. Часть 6 — Анимация «Плазма»

Время на прочтение5 мин
Количество просмотров5.8K

Разновидностей алгоритмов генерации "плазм" столько же, сколько, наверное, звезд на небе. Но связывает их вместе принцип плавного формирования перехода цветов.

Для бесшовного формирования цвета очень часто используются тригонометрические функции. Во-первых, потому что они периодические, т.е. через определенный промежуток значения функции повторяются, а во-вторых, они возвращают непрерывные значения, т.е. бесконечно малому приращению аргумента соответствует бесконечно малое приращение функции. Благодаря этому можно используя простые комбинации функций получать плавное возрастание и убывание цветов.

Я попробую рассмотреть один из вариантов, который использует функции синуса и косинуса.

Читать далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии7

Пожалуйста, прекратите писать shell-скрипты

Время на прочтение5 мин
Количество просмотров80K

Когда вы автоматизируете какую-либо задачу, например, упаковываете свое приложение для Docker, то часто сталкиваетесь с написанием shell-скриптов. У вас может быть bash-скрипт для управления процессом упаковки и другой скрипт в качестве точки входа в контейнер. По мере возрастающей сложности при упаковке меняется и ваш shell-скрипт.

Все работает хорошо.

И вот однажды shell-скрипт совершает что-то совсем неправильное.

Тогда вы осознаете свою ошибку: bash, и вообще shell-скрипты, в основном, по умолчанию не работают. Если с самого начала не проявить особую осторожность, любой shell-скрипт достигнув определенного уровня сложности почти гарантированно будет глючным... а доработка функций корректности будет довольно затруднительна.

Читать далее
Всего голосов 94: ↑70 и ↓24+68
Комментарии251

«Через этот инструмент мы настраиваем всё»: как работает Ansible в департаменте DMP X5 Group

Время на прочтение6 мин
Количество просмотров6.4K

Алексей Кузнецов работает системным архитектором в департаменте DMP X5 Group три года. Всё это время в DMP X5 Group применяют Ansible, чтобы обеспечить непрерывную конфигурацию на серверах и автоматизировать ручную работу.

В поддержку своего курса «Ansible: Infrastructure as Code» Слёрм собирает интересные кейсы использования Ansible в российских компаниях. Мы поговорили с Алексеем и узнали, почему в его департаменте выбрали именно Ansible, с какими проблемами столкнулись в проекте и как их решили. Ещё немного затронули тему санкций.

Передаём слово Алексею
Всего голосов 13: ↑12 и ↓1+15
Комментарии6

Как правильно откладывать на завтра: повышение продуктивности для IT-специалистов

Время на прочтение8 мин
Количество просмотров30K
Одна из типичных проблем современной жизни — постоянный цейтнот. Нам не хватает времени даже на то, чтобы разобраться с нехваткой времени. Заказчики напоминают о дедлайнах, коллеги просят поскорее закончить ваш код, а проджект назначает очередной митинг с разбором причин отставания. 

Пытаясь повысить продуктивность, мы ввязываемся в тотальную GTD, обкладываемся гайдами по личной эффективности, ставим очередное to-do приложение и cкупаем органайзеры. Но это не помогает. Дзен маячит на горизонте, но с каждой попыткой облегчить жизнь почему-то отодвигается дальше и дальше. 

Неожиданное решение предлагает Марк Форстер. Он считает, что выход состоит в том, чтобы откладывать дела на завтра. В этом посте мы расскажем о методиках повышения продуктивности из книги Форстера «Сделай это завтра».


Приятного чтения!
Всего голосов 27: ↑25 и ↓2+26
Комментарии21

Разбираем алгоритмы компьютерной графики. Часть 4 – Анимация «Салют»

Время на прочтение7 мин
Количество просмотров8.8K

Еще немного в копилку красивых эффектов и алгоритмов.

Вы в своей жизни наверняка видели салют, когда в ночном небе взрывает огненный шар и от него во все стороны медленно разлетаются огни.

Давайте попробуем проанализировать то, что мы с вами видим с точки зрения физики и программирования.

Читать далее
Всего голосов 37: ↑36 и ↓1+42
Комментарии7

N (Насти) алгоритм

Время на прочтение8 мин
Количество просмотров11K

Памяти Насти. Памяти дочери.

Что знаем об алгоритмах поиска? Есть граф. Чаще ориентированный. И некое целевое состояние. Фиксированное. А если нет?

Как, например, найти ребенка, который потерялся в лесу? Ведь не только вы его будете искать, но и он вас.

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

Читать далее
Всего голосов 14: ↑11 и ↓3+11
Комментарии6

Созвездие Дельфина

Время на прочтение12 мин
Количество просмотров8.7K


Скажу прямо, Дельфин — не самое известное из созвездий. Большую Медведицу знают очень многие. Отдельной категорией идут зодиакальные созвездия, которые сверхпопулярны, потому что люди думают, что есть какая-то связь одной из звездных групп кольца Зодиака с датой их рождения. Но Дельфин к этому кругу не относится — это не зодиакальное созвездие — не существует людей, рожденных под знаком Дельфина. И последнее обстоятельство сильно уменьшает шансы познакомиться с этим замечательным созвездием.

К счастью, существует большое количество увлеченных астрономией людей, для которых созвездие Дельфина имеет особое значение, и они часто упоминают его, фотографируют, рассказывают о нем своим друзьям. И это — напротив — повышает шансы познакомиться со “Звёздным Дельфином”.

Для читателей моих астрономических статей и слушателей лекций этот шанс уже реализовался. И прямо сейчас мы познакомимся с Дельфином.

Читать дальше →
Всего голосов 33: ↑32 и ↓1+41
Комментарии4

Перенаправление IP-пакетов (IP Forwarding) для S7-1500 (FW2.8 и выше)

Время на прочтение6 мин
Количество просмотров3.6K

В данной заметке рассмотрим функционал, появившейся в «прошивке» 2.8 (поддерживается в Step 7 версии 16 и выше) серии контроллеров S7-1500, а именно — перенаправление (форвард) ip-пакетов между интерфейсами.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии2

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

System Administration, Network Engineer
Senior
От 150 000 ₽
Ansible
Asterisk
Linux
Zabbix
Mikrotik
Debian
Python
Bash