BashMaster
7.95K subscribers
664 photos
14 videos
1 file
687 links
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов.

Реклама: @Kone4noVasya

Канал на бирже: https://telega.in/c/bash_help
Download Telegram
Готов к масштабному IT-событию?
GoCloud — конференция для разработчиков, инженеров, IT-руководителей и всех, кому интересны облака и AI.

На GoCloud тебя ждут три трека:

💻 Инфраструктура и сервисы
Доклады о K8s, Bare Metal, платформе данных и других облачных сервисах для ваших задач.

🧠 AI&ML
Погружение в будущее AI: инструменты, обмен опытом и анонсы продуктов, меняющих индустрию.

👨‍💻 Сценарии работы в облаке
Дискуссии и доклады о гибридных решениях, GenAI, безопасности и реальных кейсах клиентов.

30+ докладов, нетворкинг с экспертами и live-демо сервисов ждут тебя 10 апреля.
Регистрация по ссылке 👈
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Простая автоматизация с Bash для новичков

✔️Этот материал для тех, кто только рассматривает для себя инструменты автоматизации рутинных процессов.

▶️В статье рассматривается минималистичный скрипт для разворачивания простого python Django проекта при помощи системных юнитов (демонов) на удалённом сервере. Для тех, кто не в курсе: демоны - это специальные системные сервисы, которые следят за состоянием сторонних процессов и поддерживают их работоспособность. В современном мире для таких целей на микросервисах применяется Docker, но когда проект небольшой и состоит из пары-тройки процессов, их намного легче, проще и дешевле для системы (в разы), развернуть при помощи встроенных в линукс демонов.

➡️ Что может скрипт:
💠Конфигурация русской локали
💠Создание юнита для запуска селери
💠Обновить конфигурацию системного демона
💠Установить и обновить конфигурацию Nginx
💠Задание прав на выполнение для скриптов запуска селери и гуникорна
💠Установка сервера редис (очереди для задач)
💠создание и запуск виртуального окружения python
💠Установка необходимых зависимостей
💠Подстановка пользователя и директории в исполняемые файлы
💠Запуск миграций джанго на пустую базу данных
💠Запуск проекта с помощью юнита

🖼️ Прочитать статью на Habr'e
🐙 Ссылка на скрипт

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Sudomy

✔️Инструмент для перечисления поддоменов, созданный с использованием bash-скрипта для быстрого и всестороннего анализа доменов и сбора поддоменов.

➡️ Некоторые возможности Sudomy:
💠сбор данных с 16 сторонних сайтов, таких как dnsdumpster.com, web.archive.org, shodan.io и другие
💠проверка списка собранных поддоменов на работоспособность http или https-серверов
💠проверка доступности поддоменов на основе Ping Sweep и/или получения кода состояния HTTP
💠обнаружение виртуальных хостов (несколько поддоменов, которые разрешаются до одного IP-адреса)
💠сканирование портов собранных поддоменов/виртуальных хостов
💠создание скриншотов поддоменов
💠идентификация технологий на сайтах
💠вывод результатов в формате HTML или CSV

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ devops-interview

✔️Готовимся к собеседованию на позицию DevOps — сборник самых частых вопросов с ответами и примерами кода.

▶️Разбито по категориям: что нужно знать для прохождения HR, техническое интервью, полезные материалы и топ вопросов по популярности.

➡️ Топ на русском и основан на опыте отечественных компаний.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Важное IT-событие весны для Frontend- и PHP-разработчиков📢
 
18-19 апреля состоится IT-конференция «Стачка». Офлайн в Ульяновске (УлГПУ) + онлайн.
 
Что вас ждёт?
Секция Frontend и секция PHP в направлении «Разработка».
•Доклады от лидеров индустрии из Яндекса, Альфа-Банка, МТС Диджитал и др.
•Актуальные темы:
- использование WebComponents; альтернативы TypeScript; BEM vs Atomic CSS; e2e-тестирование без боли;
- применение NextCloud; создание ML-приложений на базе PHP; дедубликация данных на сотни RPS и многое другое.
• Нетворкинг-события, экспертная зона, мастер-классы, мастермайнды и  яркое афтепати в завершении первого дня.

📢По промокоду «Frontend» действует скидка 15% на билеты любой категории и формата (онлайн и офлайн). Ввести его можно на сайте: https://nastachku.ru/buynow
⚙️ tenv

✔️Универсальный менеджер версий для OpenTofu, Terraform, Terragrunt и Atmos, написанный на Go.

➡️ Некоторые возможности tenv:
💠автоматическое определение нужной версии по конфигурационным файлам (.terraform-version, atmos.yaml, terragrunt.hcl и пр.)
💠автоматическая загрузка и проверка подписи (PGP или Cosign)
💠поддержка tfenv/tofuenv-синтаксиса
💠кроссплатформенность — Linux, macOS, Windows, BSD
💠установка через Homebrew, APT, Chocolatey и множество других пакетных менеджеры
💠стабильный Go API (через tenvlib) — удобно встраивать в кастомные тулы и плагины

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Как сделать работу с Kubernetes® в Yandex Cloud эффективнее

Кластеризация в Kubernetes® — мощный инструмент, но его управление в облаке требует продуманных решений. 10 апреля в 12:00 (Мск) приглашаем на вебинар, где эксперты Yandex Cloud и Rebrain разберут ключевые аспекты работы с Yandex Managed Service for Kubernetes®.

В программе:
— Как облачные сервисы Yandex Cloud упрощают работу с Kubernetes®.

— Полезные практические сценарии и разбор типичных сложностей.

— Ошибки пользователей при работе с Yandex Cloud и способы их избежать.

— Лайфхаки по администрированию Managed Kubernetes® и быстрой настройке контейнерной инфраструктуры.


Подойдет тем, кто только начинает разбираться в Yandex Cloud, а также специалистам, которые уже работают с платформой, и столкнулись с первыми трудностями.

Мероприятие бесплатное 👉 Регистрируйтесь и присоединяйтесь. Если столько полезной информации на бесплатном вебинаре, представьте, что будет на полном кастомном обучении Kubernetes: Yandex Cloud и Rebrain.
⚙️ xdg-ninja

✔️Bash-скрипт, который помогает администраторам GNU/Linux навести порядок в директории $HOME.

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

➡️ Особенности:
💠Поддержка кастомной конфигурации. Пользователь определяет программу и список файлов и каталогов, которые эта программа помещает в директорию $HOME.
💠Для каждого файла или каталога пользователь указывает, можно ли его переместить. Если да, то также даёт инструкции, как это сделать.
💠Возможность автоматической генерации конфигурации.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Что случилось 30 марта в Yandex Cloud и почему стоит пересмотреть свои зоны отказа

30 марта у Yandex Cloud упала зона доступности из-за аварии на подстанции, которая вывела из строя оба ввода питания, а дальше все по цепочке — сеть, хранилища, ВМ.

Подробности есть в официальном пост-мортеме, но стоит отметить не столько технику, сколько сам факт: даже крупные инфраструктуры вылетают не из-за банальных ошибок, а из-за крайне редких, но неприятно возможных событий.

Поэтому в реальности вопрос стоит не в том, произойдет ли инцидент, а в том, как быстро можно переключиться, восстановиться или хотя бы понять, что делать.

➡️Мини-чеклист для тех, кто не хочет восстанавливаться вручную:

💠разнесите сервисы по зонам: это не всегда просто, но критично, если есть хоть какая-то зависимость от доступности
💠бэкапы не в том же регионе
💠IaC + конфигурация под «развернуть в другой зоне», даже если не автодеплой, то хотя бы не руками в консоли
- мониторинг не в той же зоне, где прод, иначе будете смотреть на чёрный экран, пока всё лежит

🖼️ Прочитать статью на Habr'e

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Rofi Blurry Powermenu

✔️Полноэкранное меню питания для Linux с эффектом размытия, созданное с помощью инструмента Rofi.

➡️ Некоторые особенности меню:
💠По умолчанию выделен вариант блокировки.
💠Для работы в разных средах рабочего стола (Cinnamon, XFCE и Mate) можно использовать терминал.
💠Для создания меню используются открытые шрифты Webly SleekUI и Feather.

🖼️ Ссылка на скрипт

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Все надоело и пропал интерес, чувствуешь себя амебой и хочется только залипать в телефоне. Бывает?

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

✔️ Как научиться отвлекаться от работы и отдыхать?
✔️ Как совместить кучу рабочих задач и время с семьей?
✔️ Как справиться с прокрастинацией?
✔️ Как не растерять запал, даже если начальник и коллеги 💩 и кажется, что ничего не выходит?

Подписывайтесь на канал @vadimpetrov_psy и научитесь работать без упахивания, выгорания и ущерба для личной жизни!

👨🏻‍💻 Псс. Заходите в закреп - там много полезного, и даже бесплатный мини-курс по выходу из апатии: https://t.me/+UjHABa92H6JlZjEy
⚙️ 20 специальных символов в Bash и их функции

# — Начало комментария в Bash. Всё, что следует за этим символом в той же строке, игнорируется во время выполнения скрипта.
; — Позволяет использовать несколько команд в одной строке.
& — Выполняет предыдущую команду в фоновом режиме.
| — Передает выходные данные одной команды в качестве входных данных другой.
> — Перенаправляет вывод команды в файл, перезаписывая файл, если он существует.
>> — Добавляет вывод команды в конец файла.
< — Перенаправляет ввод из файла в команду.
$ — Ссылается на значение переменной.
* — Соответствует любому количеству символов в имени файла или переменной.
? — Соответствует ровно одному символу в имени файла или переменной.
{ } — Используется для раскрытия фигурных скобок с целью создания произвольных строк.
( ) — Выполняет команды в новом экземпляре оболочки, также известном как подоболочка.
[ ] — соответствует любому одному символу, заключённому в скобки, в имени файла или переменной.
! — Отменяет статус завершения следующей за ней команды, также используется для расширения истории.
\ — Аннулирует особое значение следующего символа.
. — Обозначает текущий каталог в пути к файлу.
.. — Обозначает родительский каталог в пути к файлу.
/ — Разделяет каталоги в пути к файлу, представляет корневой каталог, если используется в начале пути.
~ — Обозначает домашний каталог текущего пользователя в пути к файлу.
<<< — Перенаправляет строку в стандартный ввод команды.

▶️Больше о специальных символах Bash можно узнать, изучив документацию, например, введя команду man bash в терминале.

🖼️ Ссылка на источник

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
📕Открытый урок об оцифровке сигналов в микроконтроллере ESP32 для радиолюбителей, разработчиков встраемого ПО, инженеров, разработчиков электроники и инженеров-схемотехников.

На открытом уроке 10 апреля в 20:00 мск мы погрузимся в процессы и тонкости оцифровки сигнало на пример микроконтроллера ESP32.

📗 В результате вы:
- Узнаете всё об особенностях и нюансах схемотехники при проектировании тракта АЦП;
- Поймете, как работать с АЦП на примере ESP32: от расчета погрешностей и калибровки до различных методов фильтрации сигналов;
- Научитесь на практике использовать все основные параметры АЦП и увидите их влияние вживую.

Спикер Марат Боранбаев — эксперт в сфере Fullstack Embedding, 10+ лет в разработке и преподавании, занимается разработкой для системы бортового радиотехнического комплекса космического аппарата на базе МК STM32.

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://otus.pw/iRdY/?erid=2W5zFJoGRWx

📙 Все участники открытого урока получат скидку на курс "Embedded Developer"

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
⚙️ Использование простого Bash-скрипта для перезапуска программ на сервере

✔️Чтобы обеспечить как можно более долгое функционирование императивных программ (даже после сбоя или перезагрузки сервера), можно создать простой bash-скрипт, который будет проверять, работают ли программы, и запустит их в случае необходимости. Чтобы скрипт работал на регулярной основе, можно использовать cron для составления графика запуска скрипта, что гарантирует перезапуск программы в случае ее падения.

▶️Существует целый ряд программ, таких как Upstart, Supervisor и Monit, которые могут запускать и мониторить приложения на виртуальных частных серверах; bash-скрипт выполняет только запуск программ. Ниже приведен пример сценария, который запускает Apache, в случае если приложение выключено.
nano launch.sh
#!/bin/sh
ps auxw | grep apache2 | grep -v grep > /dev/null
if [ $? != 0 ] then
/etc/init.d/apache2 start > /dev/null
fi

▶️После сохранения скрипта нужно дать ему права на выполнение, чтобы иметь возможность запускать его:
chmod +x launch.sh

▶️Apache можно заменить любым необходимым приложением. При необходимости установить скрипт для нескольких приложений, нужно создать новый скрипт для каждого приложения и поместить скрипты в отдельную строку cron-файла.

▶️После создания скрипта нужно установить график его запуска. Утилита cron позволяет установить интервалы выполнения скрипта. Для начала откройте cron-файл:
crontab -e

▶️Cron предоставляет подробную информацию работе системы расписаний в начале файла.

▶️Определив необходимую частоту запуска скрипта, внесите ее в соответствующую строку. Самый короткий интервал запуска скрипта в cron – 1 минута. Чтобы установить данный интервал, используйте следующий шаблон:
* * * * * ~/launch.sh

▶️Для запуска скрипта каждые 5 минут используйте шаблон:
*/5 * * * * ~/launch.sh

➡️ Установка простого скрипта обеспечит запуск программы после ее падения по любой причине. Это дает гарантию того, что максимальное время, на протяжении которого программа будет отключена – это интервал времени, указанный в конфигурациях cron.

▶️Если серверу нужна программа, работающая более тщательно, можно установить одну из нескольких программ мониторинга сервера (Supervisor, Upstart, or Monit)

🖼️ Ссылка на источник

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
infosec - это один из самых ламповых каналов по информационной безопасности, где говорят об истории ИТ, публикуют актуальные новости и пишут технический материал на разные темы:

- Что из себя представляет официально взломанный iPhone от Apple?
- Кому и для чего выдавалось разрешение на ношение сотового телефона?
- Бесплатные курсы для ИБ специалистов на различные темы;
- Бесплатный бот, который проверит файлы на предмет угроз более чем 70 антивирусами одновременно.

Присоединяйся, у нас интересно: @it_secur
⚙️ Zoxide

✔️Инструмент навигации по каталогам командной строки, запоминающий часто используемые каталоги. Он позволяет быстро «переходить» к этим каталогам, используя минимальное количество нажатий клавиш.

➡️ Некоторые особенности Zoxide:
💠Отслеживание посещённых каталогов. Инструмент ведёт учёт и присваивает каждому каталогу оценку, основанную на частоте и давности посещения. Чем чаще и позже пользователь посещает каталог, тем выше его позиция в базе данных Zoxide.
💠Предсказание пути. Zoxide не требует точных имён путей, а предсказывает, куда нужно перейти, на основе частичных входных данных и шаблонов использования.
💠Интеграция с различными оболочками. Zoxide можно интегрировать с Bash, Fish, Zsh и Elvish.
💠Взаимодействие с другими инструментами. Zoxide можно сочетать с zsh-autocomplete, что значительно улучшает навигацию по терминалу.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ ipset-blacklist

✔️Скрипт на языке Bash, который использует инструменты ipset и iptables для блокировки большого количества IP-адресов, опубликованных в чёрных списках.

➡️ Некоторые особенности скрипта:
💠Для хранения и извлечения IP-адресов используется хэш-таблица, что ускоряет поиск по сравнению с тысячами последовательно анализируемых правил блокировки iptables.
💠Лимит списка ipset — 2^16 записей.
💠Команда ipset не работает в среде OpenVZ, но хорошо себя показывает на выделенных и полностью виртуализированных серверах, таких как KVM.

▶️Скрипт можно настроить для автоматического обновления чёрного списка с помощью задания cron. При этом не рекомендуется обновлять список слишком часто, чтобы некоторые провайдеры чёрных списков не заблокировали IP-адрес пользователя.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Awesome Sysadmin

✔️Репозиторий, в котором собран список полезных ресурсов для системного администратора.

▶️В списке вы найдёте программы с исходным кодом, книги, сайты и ссылки на другие репозитории, которые помогут вам в работе сисадмина.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️ Все о программировании от экспертов BigTech!

Собрались разработчики бигтеха и решили создать крутой канал, на котором простым языком расскажут все о мире IT:

Лучшие практики чистого кода
Продвинутые техники и рекомендации по разработке
Подробные разборы вопросов с собеседований
Интересные факты и новости из мира технологий
Полезные open-source утилиты

🌐 Присоединяйся к нам и учись на скоростях: IT CoLibry
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ inotify-info

✔️Пакет для Linux, который позволяет отслеживать количество наблюдателей, экземпляров системы inotify и наблюдаемые файлы.

▶️Система inotify в Linux может быть сложной для отладки, особенно когда в ней заканчивается количество наблюдателей. inotify-info помогает решить эту проблему.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM