es
Feedback

¡No caigas en manos de tramposos! Telemetrio encuentra y marca estos canales 👉 Si quieres ver la etiqueta, suscríbete

BashMaster

BashMaster

Ir al canal en Telegram

Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов. Реклама: @Kone4noVasya Канал на бирже: https://telega.in/c/bash_help

Mostrar más
8 817
Suscriptores
Sin datos24 horas
-177 días
-3630 días
Archivo de publicaciones
⛴️ Открыта регистрация на ICEBREAKER 2025. Участие бесплатно 12 декабря состоится NGENIX ICEBREAKER 2025 — онлайн-конференция
⛴️ Открыта регистрация на ICEBREAKER 2025. Участие бесплатно 12 декабря состоится NGENIX ICEBREAKER 2025 — онлайн-конференция, на которой эксперты расскажут, на чем сегодня строится доверие к облачным решениям. 🤖 Отдельный блок программы будет посвящен защите от ботов. Последние годы бот-атаки становятся все изощреннее и приносят много проблем владельцам веб-ресурсов. Эксперты расскажут про эволюцию методов детекции и классификацию ботов, защиту API, а приглашенный гость из компании «Комус» поделится реальными кейсами, как сегодня бизнес может страдать от автоматизированных угроз. Также в программе конференции: 🛡️ защита от DDoS- и продвинутых бот-атак;  📊 эволюция средств статистики и продвинутой аналитики;  💻 развитие российских продуктов ИБ и аттестация; 🔑 управление правами доступа; 💭 презентация нового облачного продукта для финтеха. 📍 12 декабря, 11:00  🔹Онлайн  🔹Бесплатно ЗАРЕГИСТРИРОВАТЬСЯ

⚙️ Bash Style Guide ✔️Минималистичное и чёткое руководство по читаемому, безопасному и портируемому Bash-коду. ➡️ Коротко, чт
⚙️ Bash Style Guide ✔️Минималистичное и чёткое руководство по читаемому, безопасному и портируемому Bash-коду. ➡️ Коротко, что советует автор: 💠Используй [[ ... ]] вместо [ — надёжнее. 💠foo() и local var=... — забудь про function. 💠Только $(...) — никаких обратных кавычек. 💠Не ls, а glob (*) и while read. 💠Арифметика? Только ((…)) и $((…)). 💠Переменные — всегда в кавычках: "$name". 💠Только табы. Только 80 символов в строке. ▶️Всё это с аргументами. Есть терминальная версия: curl style.ysap.sh/plain 🖼️ Перейти на сайт 🔨 bash_help

⚙️ Управление рабочими процессами c помощью timeout и wait для контроля параллельных задач ✔️Для управления несколькими парал
⚙️ Управление рабочими процессами c помощью timeout и wait для контроля параллельных задач ✔️Для управления несколькими параллельными процессами в Bash важно контролировать их выполнение и предотвращать зависания или снижение производительности. Инструменты timeout и wait позволяют ограничить время выполнения задач и обеспечить их корректное завершение. ➡️ Пример: Запуск длительных процессов с ограничением времени работы и ожиданием их завершения перед продолжением.
#!/bin/bash

# Функция для выполнения команды с таймаутом
run_with_timeout() {
    timeout 10s "$@" || echo "Process $1 timed out"
}

# Запуск нескольких процессов параллельно
run_with_timeout command1 & 
run_with_timeout command2 & 
run_with_timeout command3 &

# Ожидаем завершения всех процессов
wait
echo "All processes completed."
➡️ Как это работает: 💠timeout 10s — устанавливает ограничение по времени на выполнение каждой команды. Если процесс не завершится за 10 секунд, он будет завершен автоматически. 💠& — запускает команды в фоновом режиме, позволяя им работать параллельно. 💠wait — блокирует выполнение скрипта до тех пор, пока все фоновые процессы не завершатся. 💠command1, command2, command3 — это команды или скрипты, которые могут выполнять задачи в фоне, например, запрашивать внешние API, выполнять анализ данных или обрабатывать файлы. ▶️Такой способ контроля над процессами помогает избегать зависаний и позволяет обрабатывать ошибки на лету, не блокируя другие процессы. 🖼️ Ссылка на источник 🔨 bash_help

😵‍💫Loading… Падают продажи из-за долгой загрузки? Распродажи — злачный сезон только для тех, кто готов к пиковым нагрузкам.
😵‍💫Loading… Падают продажи из-за долгой загрузки? Распродажи — злачный сезон только для тех, кто готов к пиковым нагрузкам. Пользователи не станут ждать, если в приложении или на сайте в разы вырастет время загрузки. Чтобы не терять клиентов, подключайте сеть доставки контента от Selectel. Кроме ускорения загрузки, CDN поможет: 🔹 повысить позиции сайта в поисковой выдаче, 🔹 сэкономить на инфраструктуре, 🔹 обеспечить постоянную доступность сервиса, 🔹 защитить инфраструктуру от DDoS-атак. До 31 декабря можно подключить CDN от Selectel со скидкой до 50%. Скидка распространяется на дополнительный трафик и действует до конца июня. Единственное условие — подать заявку на участие в акции до конца года. Регистрируйтесь и ускорьте загрузку сайта с помощью CDN от Selectel со скидкой: https://slc.tl/pzk85 Реклама. АО "Селектел". erid: 2W5zFHRVJpQ

⚙️ AliasForge ✔️Легкий кроссплатформенный менеджер псевдонимов, который добавляет ваши персональные сочетания клавиш в любую
⚙️ AliasForge ✔️Легкий кроссплатформенный менеджер псевдонимов, который добавляет ваши персональные сочетания клавиш в любую оболочку (Bash, Zsh или Fish) на macOS и Linux. Он делает ваши любимые команды портативными, удобными для редактирования и мгновенно доступными при каждом входе в систему. ➡️ Возможности: 💠Кроссплатформенность: macOS и Linux 💠Поддержка нескольких оболочек: Bash, Zsh, Fish и NuShell 💠Идемпотентность: можно запускать несколько раз 💠Простота настройки: отредактируйте один файл, перезагрузите, и готово 💠Возможность удаления для «чистого листа» 🐙 Перейти на Github 🔨 bash_help

📣 Внимание, хакеры и разработчики! Канал БАГодельня запустил площадку с CTF-задачами — это проект, в котором ребята создают
📣 Внимание, хакеры и разработчики! Канал БАГодельня запустил площадку с CTF-задачами — это проект, в котором ребята создают CTF-задачи для прокачки навыков в IT и ИБ. Новые задачи каждую субботу! На канале вас ждут: ⭐ Задачи для практики ⭐ Руководства и шпоргалки ⭐ Разбор кода и алгоритмы ⭐ Код-ревью проектов Все бесплатно и уже более 70 задач на платформе! Практикуйтесь с нами: @bug_makers

⚙️ Как настроить автодополнение для команды ssh с хостами из .ssh/config ✔️Автодополнение — одна из самых полезных функций ко
⚙️ Как настроить автодополнение для команды ssh с хостами из .ssh/config ✔️Автодополнение — одна из самых полезных функций командной строки, позволяющая быстро подбирать подходящие аргументы или команды, просто нажав клавишу Tab. В этой статье вам расскажут, как настроить автодополнение для команды ssh, чтобы Bash подсказывал хосты, указанные в файле ~/.ssh/config. ➡️ Содержание: 💠Понять зачем это нужно 💠Настройка автодополнения хостов из ~/.ssh/config 💠Скрипт для автодополнения хостов 💠Автозапуск автокомплита 💠Добавление удобного алиаса для получения информации о подключении 🖼️ Прочитать статью на Habr'e 🔨 bash_help

⚙️ Как настроить автодополнение для команды ssh с хостами из .ssh/config ✔️Автодополнение — одна из самых полезных функций ко
⚙️ Как настроить автодополнение для команды ssh с хостами из .ssh/config ✔️Автодополнение — одна из самых полезных функций командной строки, позволяющая быстро подбирать подходящие аргументы или команды, просто нажав клавишу Tab. В этой статье вам расскажут, как настроить автодополнение для команды ssh, чтобы Bash подсказывал хосты, указанные в файле ~/.ssh/config. ➡️ Содержание: 💠Понять зачем это нужно 💠Настройка автодополнения хостов из ~/.ssh/config 💠Скрипт для автодополнения хостов 💠Автозапуск автокомплита 💠Добавление удобного алиаса для получения информации о подключении 🖼️ Прочитать статью на Habr'e 🔨 bash_help

🔥OS DevConf 25 powered by GigaChat — конференция про разработку системного ПО, ядра Linux и open source. Один день, 500 учас
🔥OS DevConf 25 powered by GigaChat — конференция про разработку системного ПО, ядра Linux и open source. Один день, 500 участников, 20+ докладов, 3 трека — концентрат практического опыта, знаний и инструментов, готовых к внедрению сразу по возвращению в офис. И, конечно, мега-возможности для нетворкинга с коллегами и экспертами сообщества! Что будем обсуждать? -Инструменты и примеры отладки, виртуализации, оптимизации производительности -Практический опыт оптимизации сетевых решений с DPDK -Эффективные методы безопасной разработки ядра Linux -Реальные кейсы создания драйверов на Rust -Все про GPU, NPU, ASIC и как запускать AI на железе под Linux и не только. Как AI встраивается в современную разработку -Современные подходы к разработке системного и embedded ПО Участие бесплатное, но количество мест ограничено — зарегистрируйтесь прямо сейчас 💻 #реклама О рекламодателе

⚙️ Скрипт для мониторинга использования диска и отправки оповещения, если оно превышает 80 % ➡️ Шаг 1. Проверьте использовани
⚙️ Скрипт для мониторинга использования диска и отправки оповещения, если оно превышает 80 % ➡️ Шаг 1. Проверьте использование диска в Linux ▶️Прежде чем писать сценарий, вам нужно узнать, сколько места на диске занимает ваша система, с помощью команды df:
df -h
➡️ Шаг 2. Создайте скрипт для мониторинга использования диска ▶️Вот очень простой скрипт для мониторинга корневого раздела (/):
#!/bin/bash

# Установка порогового значения (в процентах) 
THRESHOLD=80

# Извлечение процента использования корневой файловой системы
USAGE=$(df -h / | awk 'NR==2 {print }' | sed 's/%//')

# Сравнение использования с пороговым значением
if [ "$USAGE" -ge "$THRESHOLD" ]; then
 echo "Предупреждение: использование диска составляет ${USAGE}% на $(hostname)" | mail -s "Предупреждение о диске: $(hostname)" user@example.com
fi
▶️Давайте разберёмся, что здесь происходит: 💠THRESHOLD=80 → Это тот предел, который нас интересует. Всё, что выше, слишком рискованно. 💠df -h / → Проверяется только корневая файловая система. 💠awk 'NR==2 {print }' → Из вывода df извлекается столбец «Use%». 💠sed 's/%//' → Убирает знак %, чтобы мы могли рассматривать его как число. 💠Блок if → Если использование диска превышает пороговое значение, срабатывает оповещение. ➡️ Шаг 3. Мониторинг использования всех разделов диска ▶️Вот немного улучшенная версия, которая проверяет все подключённые файловые системы:
#!/bin/bash

THRESHOLD=80

# Перебираем все файловые системы, перечисленные в df
df -h | grep '^/dev/' | while read line; do
    USAGE=$(echo $line | awk '{print }' | sed 's/%//')
    PART=$(echo $line | awk '{print }')

 if [ "$USAGE" -ge "$THRESHOLD" ]; then
 echo "Предупреждение: раздел $PART заполнен на ${USAGE}% на $(hostname)" | mail -s "Оповещение о состоянии диска: $(hostname)" user@example.com
 fi
done
▶️Теперь вместо того, чтобы проверять только /, он будет проверять каждую файловую систему в /dev/ и, если какой-либо раздел пересечёт границу 80%, вы получите электронное письмо с предупреждением. ➡️ Шаг 4. Автоматизация скрипта с помощью Cron ▶️Чтобы настроить его, откройте файл crontab с помощью:
crontab -e
▶️Добавьте эту строку внизу:
0 * * * * /путь/к/файлу_проверки_диска.sh
▶️Сохраните и выйдите, а cron позаботится обо всём остальном. С этого момента ваш скрипт будет в фоновом режиме проверять использование диска и предупреждать вас, если ситуация ухудшится. ➡️ Шаг 5. Тестирование скрипта ▶️Прежде чем полагаться на этот скрипт, стоит его протестировать. В конце концов, не стоит ждать, пока ваш диск заполнится на 80 %, чтобы проверить, работает ли ваша система оповещений.Самый простой способ проверить — временно снизить порог:
THRESHOLD=1
▶️Таким образом, скрипт почти наверняка сразу же выдаст предупреждение, поскольку большинство разделов заполнены как минимум на 80 %. Как только вы убедитесь, что электронная почта или журналы работают, измените значение на 80. ▶️Если вы не готовы настраивать электронную почту, вы можете заменить команду mail на что-то более простое, например:
echo "Предупреждение: раздел $PART используется на ${USAGE}% на $(hostname)"
➡️ Шаг 6. Настройка уведомлений по электронной почте ▶️Наш скрипт использует команду mail для отправки оповещений, но этот инструмент не всегда доступен по умолчанию. Сначала вам нужно будет его установить:
sudo apt install mailutils [В Debian]
sudo yum install mailx [В RHEL]
▶️После установки убедитесь, что ваш сервер действительно может отправлять электронные письма. Для этого может потребоваться дополнительная настройка, например Postfix, Gmail SMTP или сторонний сервис, например SendGrid. ▶️Если вы не хотите сейчас работать с электронной почтой, вы всё равно можете использовать этот скрипт, записывая оповещения в файл:
echo "Предупреждение об использовании диска: $PART, $USAGE%" >> /var/log/disk_alert.log
▶️Таким образом, вы сможете проверить журнал позже или использовать следующую команду для просмотра оповещений в режиме реального времени.
tail -f /var/log/disk_alert.log
🖼️ Прочитать статью в источнике 🔨 bash_help

Идёте на Kuber Conf by AOT 4 декабря? Первая некоммерческая K8s-конференция в Москве — отличный повод встретиться и лично пог
Идёте на Kuber Conf by AOT 4 декабря? Первая некоммерческая K8s-конференция в Москве — отличный повод встретиться и лично поговорить с топовыми инженерами и архитекторами. Конференция проходит под эгидой Ассоциации облачно-ориентированных технологий (АОТ), которую создают Флант, VK Cloud и Yandex Cloud. В программе реальные кейсы от команд Авито, Т-Банка, Vitastor, Beget, VK Cloud, Yandex Cloud и Selectel, а среди докладов: • Изменения в Cluster API без пересоздания машин; • Как строили платформу деплоя в Т-Банке; • Практический deep-dive в CNI chaining; • Безопасный Gatekeeper в архитектуре k8s-in-k8s; • Поддержка Kubernetes в Vitastor; • Karpenter-провайдер своими руками — что внутри. Для подписчиков канала действует промокод: KUBERCONF20 Программа и билеты Реклама Садовская.Е.О ИНН:9710066394 Erid:2VtzqwwepUy

⚙️ Небольшая шпаргалка по расширенным параметрам в Bash 🔨 bash_help
⚙️ Небольшая шпаргалка по расширенным параметрам в Bash 🔨 bash_help

Выиграйте грант на курс по Apache Kafka Скидки до 100% на новый поток «Apache Kafka База» от Слёрма. Научитесь строить отказо
Выиграйте грант на курс по Apache Kafka Скидки до 100% на новый поток «Apache Kafka База» от Слёрма. Научитесь строить отказоустойчивый кластер без тонны документации и разберётесь, как Kafka работает изнутри, чтобы предотвращать инциденты и держать систему стабильной под нагрузкой. При выполнении условий гранта вы сможете получить 1 из 3 вариантов: ⭐️ скидка 100% (1 место); ⭐️ скидка 50% (2 места); ⭐️ скидка 30% (2 места). Что сделать, чтобы принять участие: 1️⃣ Быть подписанным на канал Слёрма 2️⃣ Заполнить заявку Срок выполнения условий — до 20 ноября включительно. У вас будет всего одна попытка!  Каждый этап будет оцениваться командой Слёрма. Будьте честны и открыты! Итоги опубликуем в канале 21 ноября в 19:00 мск.

⚙️ Encryption-Decryption Tool ✔️Репозиторий, который содержит инструменты для шифрования и расшифровки данных в Linux на осно
⚙️ Encryption-Decryption Tool ✔️Репозиторий, который содержит инструменты для шифрования и расшифровки данных в Linux на основе Bash. ➡️ В репозитории представлены два инструмента: 💠Manual Encryption-Decryption Tool — интерактивный терминал для пользователей, который позволяет шифровать, расшифровывать или получать информацию о поддерживаемых шифрах. 💠Automatic Encryption-Decryption Tool — автоматизирует обработку текстовых файлов, применяя выбранный шифр и сохраняя результат в новый файл. ➡️ Manual Tool поддерживает: 💠шифрование, расшифровку и получение информации о шифрах; 💠обработку нескольких шифров с проверкой. ➡️ Automatic Tool позволяет: 💠обрабатывать файлы для шифрования и расшифровки; 💠автоматически называть выходной файл; 💠обрабатывать ошибки при операциях с файлами. 🐙 Перейти на Github 🔨 bash_help

⚙️ Как получать уведомления о входе в систему по SSH в Linux ✔️Всегда полезно знать, кто и когда подключается к вашему сервер
⚙️ Как получать уведомления о входе в систему по SSH в Linux ✔️Всегда полезно знать, кто и когда подключается к вашему серверу Linux по протоколу SSH. Даже если доступ есть только у вас, рекомендуется следить за подключениями. Для команд или производственных систем получение уведомлений о входах по протоколу SSH обеспечивает дополнительный уровень осведомлённости и безопасности. ▶️В этой статье вы увидите простой способ настроить уведомления о входе в систему по протоколу SSH. Это позволит вам быть уверенными в том, что вы в режиме реального времени знаете, кто получает доступ к вашему серверу. 🖼️ Прочитать статью в источнике 🔨 bash_help

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

⚙️ bash-library ✔️Коллекция многоразовых функций и скриптов для задач DevOps и системного администрирования на языке Bash. ➡️
⚙️ bash-library ✔️Коллекция многоразовых функций и скриптов для задач DevOps и системного администрирования на языке Bash. ➡️ Проект предназначен для: 💠Интеграции функций в скрипты — функции можно использовать в скриптах. 💠Упрощения общих задач — готовые скрипты помогают выполнять задачи, которые часто встречаются в DevOps и системном администрировании. 💠Кроссплатформенной работы — проект работает на Linux и macOS. ➡️ В репозитории представлены: 💠Функции для работы с удалёнными репозиториями — например, для установки и удаления библиотеки. 💠Функции для работы с логированием. Функции для обработки ошибок. ▶️Каждая функция включает чёткую документацию. ➡️ В библиотеке представлены готовые скрипты для автоматизации повторяющихся задач. Например: 💠Автоматическое резервное копирование — скрипт, который архивирует указанный каталог и сохраняет его с меткой даты. 💠Автоматическая очистка логов — скрипт удаляет файлы логов, которые превышают заданный размер (например, 100 МБ). 💠Мониторинг параметров системы и оповещения — скрипт проверяет загрузку процессора, оперативной памяти и диска, и отправляет оповещение, если любой параметр превышает заданный порог. 🐙 Перейти на Github 🔨 bash_help

Разворачиваем кластер Managed Kubernetes бесплатно Kubernetes упрощает работу с приложениями на базе микросервисов за счет ав
Разворачиваем кластер Managed Kubernetes бесплатно Kubernetes упрощает работу с приложениями на базе микросервисов за счет автоматизации развертывания и масштабирования. А Selectel упрощает работу с Kubernetes. Новые клиенты сейчас могут получить до 30 000 бонусов на использование Managed Kubernetes от Selectel. Для каких задач он подойдет? 🔹Запустить высоконагруженные сервисы и ML-проекты. В Selectel можно развернуть кластеры на производительном железе и добавить ноды с GPU. 🔹Повысить производительность и изолировать ресурсы. Managed Kubernetes от Selectel позволяет создать кластеры с воркер-нодами на выделенных серверах, а не в облаке. Все ресурсы сервера — ваши. 🔹Сократить затраты на инфраструктуру. Кластеры на базе прерываемых ВМ позволят сэкономить до 70% расходов и подойдут для CI/CD, пакетной обработки данных, дата-аналитики и других задач. Успейте зарегистрироваться и оставить заявку на участие в акции, чтобы протестировать сервис бесплатно: https://slc.tl/vafr0 Реклама. АО "Селектел". erid:2W5zFGgLFw6

⚙️ Продвинутый Bash для автоматизации и безопасности ✔️Продвинутое написание скриптов оболочки требует технических навыков, а
⚙️ Продвинутый Bash для автоматизации и безопасности ✔️Продвинутое написание скриптов оболочки требует технических навыков, а также соблюдения лучших практик, которые обеспечивают надежность, сопровождаемость и эффективность ваших скриптов. По мере усложнения скриптов становится важным их грамотно структурировать и внедрять такие методы, как обработка ошибок и отладка. Следуя этим практикам, IT-специалисты могут создавать скрипты, которые являются надежными и адаптируемыми, особенно в динамичных средах Linux, где автоматизация играет ключевую роль в повышении продуктивности. ➡️ Основные выводы 💠Надёжная обработка ошибок: Внедрите set -e для немедленного завершения при ошибке, используйте команды trap для выполнения очистки и предоставляйте информативные сообщения об ошибках для повышения надёжности скрипта и упрощения отладки 💠Продвинутые структуры данных: Используйте ассоциативные массивы с declare -A для отображения ключ-значение и имитируйте многомерные массивы для сложных сценариев управления данными 💠Мощное сопоставление шаблонов: Используйте встроенные регулярные выражения Bash с оператором =~ и тестами [[ ]] для эффективной обработки текста без внешних инструментов, таких как grep или awk 💠Управление процессами: Используйте подсистемы () для изоляции переменных и подстановку процессов <() для бесшовной интеграции команд без временных файлов 💠Оптимизация производительности: Реализуйте параллелизацию с использованием xargs -P, фоновые процессами с помощью & и команды wait, чтобы максимально использовать многопроцессорные системы 💠Комплексное тестирование: используйте BATS (Bash Automated Testing System) для модульного тестирования, реализуйте корректное ведение логов с помощью tee и файлов трассировки, а также профилируйте скрипты с помощью инструментов time, strace и perf 💠Лучшие практики управления версиями: Логически организуйте скрипты, используйте осмысленные сообщения коммитов, внедряйте .gitignore для конфиденциальных данных, используйте ветви для разработки функций и тегируйте релизы для развертывания в продакшн 🖼️ Прочитать статью в источнике 🔨 bash_help

Как бигтехи кошмарят вас на собеседованиях Успешно пройти секцию по профильным хардам, но смачно опозориться на логической за
Как бигтехи кошмарят вас на собеседованиях Успешно пройти секцию по профильным хардам, но смачно опозориться на логической задаче с часами? В этом вся суть интервью в бигтехе Автор этой истории побывал на собесе в ❤️ и рассказал всю правду о клоунаде, которая там происходила. Готовьте попкорн! Вита Заебумба | Путь корпората — топовый канал про IT, сферу найма, трешовые собесы и работу в корпорациях. Просто кладезь кулстори не только от автора, но и от подписчиков Еще больше жизненных историй про IT и полезных материалов с лайфхаками по найму ты найдешь на канале @vitazaebymba ➡️ Подписывайся!